JPH05241649A - 産業用ロボットの教示装置 - Google Patents
産業用ロボットの教示装置Info
- Publication number
- JPH05241649A JPH05241649A JP16338391A JP16338391A JPH05241649A JP H05241649 A JPH05241649 A JP H05241649A JP 16338391 A JP16338391 A JP 16338391A JP 16338391 A JP16338391 A JP 16338391A JP H05241649 A JPH05241649 A JP H05241649A
- Authority
- JP
- Japan
- Prior art keywords
- teaching
- instruction
- robot
- line
- language
- 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
Links
Landscapes
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
(57)【要約】
【目的】 オフライン教示において、オンライン教示に
おけるよりも高度な作業の教示を可能にすると共に、オ
ンライン教示での不要なデータ修正が起こらないように
したロボットの教示装置を提供すること。 【構成】 オフライン教示で使用可能な命令を、オンラ
イン教示で使用できる命令よりも豊富な内容のものにし
た。また、このため、教示データを中間言語で持つよう
にした。更に、オフライン教示とオンライン教示で作成
された命令に疑似命令を付加し、処理131の判断によ
り、必要な部分に対する不必要な修正は、自動的に禁止
されるようにした。
おけるよりも高度な作業の教示を可能にすると共に、オ
ンライン教示での不要なデータ修正が起こらないように
したロボットの教示装置を提供すること。 【構成】 オフライン教示で使用可能な命令を、オンラ
イン教示で使用できる命令よりも豊富な内容のものにし
た。また、このため、教示データを中間言語で持つよう
にした。更に、オフライン教示とオンライン教示で作成
された命令に疑似命令を付加し、処理131の判断によ
り、必要な部分に対する不必要な修正は、自動的に禁止
されるようにした。
Description
【0001】
【産業上の利用分野】本発明はティーチングプレイバッ
ク方式の産業用ロボットに関し、特に複数の教示手段を
備えた産業用ロボットの制御方法に関する。
ク方式の産業用ロボットに関し、特に複数の教示手段を
備えた産業用ロボットの制御方法に関する。
【0002】
【従来の技術】従来のティ−チングプレイバック方式の
産業用ロボットにおいては、その制御装置に付随して設
けられている教示ペンダント(ティーチング・ボックス)
等を用いて作業順序や作業位置の教示を行っていた。こ
の教示は、産業用ロボットが設置されている作業現場
で、現場の実作業者が行うことが多く、このため、教示
ペンダントは手軽に持ち運べるように小型に作られ、作
業順序の教示は、教示ペンダントに設けられている釦を
使用して簡易なロボット言語で行われ、作業位置の教示
は、教示ペンダントのロボット動作釦を用い、ロボット
を所望の位置へ実際に移動させることにより行われる。
そこで、以下、この教示ペンダントによる教示方法をオ
ンライン教示と呼ぶ。
産業用ロボットにおいては、その制御装置に付随して設
けられている教示ペンダント(ティーチング・ボックス)
等を用いて作業順序や作業位置の教示を行っていた。こ
の教示は、産業用ロボットが設置されている作業現場
で、現場の実作業者が行うことが多く、このため、教示
ペンダントは手軽に持ち運べるように小型に作られ、作
業順序の教示は、教示ペンダントに設けられている釦を
使用して簡易なロボット言語で行われ、作業位置の教示
は、教示ペンダントのロボット動作釦を用い、ロボット
を所望の位置へ実際に移動させることにより行われる。
そこで、以下、この教示ペンダントによる教示方法をオ
ンライン教示と呼ぶ。
【0003】一方、特開昭62−269205号公報、
特開昭62−274307号公報、特開昭62−274
308号公報等では、制御装置とは別のコンピュ−タを
用いた教示方法が提案されているが、この方法では、作
業順序はコンピュ−タのキ−ボ−ド等を使用してロボッ
ト言語で教示するようになっており、作業位置は数値や
デジタイザによって入力したり、シミュレイションによ
りCRT上のロボットを、コンピュ−タ内の擬似環境で
動作させることにより教示する。従って、この方法での
教示は、ロボットのシステム計画者や生産ラインの設計
者が行うことが多く、その結果、高度でかなり複雑な指
示でも比較的容易に教示できる。そこで、以下、この教
示方法をオフライン教示と呼ぶ。
特開昭62−274307号公報、特開昭62−274
308号公報等では、制御装置とは別のコンピュ−タを
用いた教示方法が提案されているが、この方法では、作
業順序はコンピュ−タのキ−ボ−ド等を使用してロボッ
ト言語で教示するようになっており、作業位置は数値や
デジタイザによって入力したり、シミュレイションによ
りCRT上のロボットを、コンピュ−タ内の擬似環境で
動作させることにより教示する。従って、この方法での
教示は、ロボットのシステム計画者や生産ラインの設計
者が行うことが多く、その結果、高度でかなり複雑な指
示でも比較的容易に教示できる。そこで、以下、この教
示方法をオフライン教示と呼ぶ。
【0004】なお、一般的には、まずオフライン教示に
より、ロボットとポジショナ−等の自動機器間の信号の
相互伝達方法やロボットの作業順序、大まかな作業位置
を入力し、ロボット作業の骨格となる教示デ−タを作成
する。次に、その教示デ−タを通信やフロッピ−ディス
クを介してロボット制御装置に転送し、オンライン教示
によってロボットの作業位置等の最終調整を行うのが通
例である。
より、ロボットとポジショナ−等の自動機器間の信号の
相互伝達方法やロボットの作業順序、大まかな作業位置
を入力し、ロボット作業の骨格となる教示デ−タを作成
する。次に、その教示デ−タを通信やフロッピ−ディス
クを介してロボット制御装置に転送し、オンライン教示
によってロボットの作業位置等の最終調整を行うのが通
例である。
【0005】
【発明が解決しようとする課題】上記従来技術では、オ
ンライン教示の機能をオフラインで実現することに主眼
が置かれており、オフライン教示時とオンライン教示時
で教示を行う人のシステム全体の理解度の相違や、ロボ
ット教示での習熟度の違いに配慮されておらず、このた
め次のような問題点があった。
ンライン教示の機能をオフラインで実現することに主眼
が置かれており、オフライン教示時とオンライン教示時
で教示を行う人のシステム全体の理解度の相違や、ロボ
ット教示での習熟度の違いに配慮されておらず、このた
め次のような問題点があった。
【0006】(1) オフライン教示でも、オンライン教示
と同一のロボット言語しか使用できないため、システム
全体を十分理解しているシステム計画者でも、高度で複
雑な作業については教示できない。 (2) オフライン教示により作成された教示デ−タをオン
ライン教示で最終調整する際、調整の必要な部分とそう
でない部分の区別が難しく、システム全体を十分理解し
ていない作業者の場合、誤って教示デ−タの修正を行っ
てしまうことがあり、危険である。
と同一のロボット言語しか使用できないため、システム
全体を十分理解しているシステム計画者でも、高度で複
雑な作業については教示できない。 (2) オフライン教示により作成された教示デ−タをオン
ライン教示で最終調整する際、調整の必要な部分とそう
でない部分の区別が難しく、システム全体を十分理解し
ていない作業者の場合、誤って教示デ−タの修正を行っ
てしまうことがあり、危険である。
【0007】本発明の目的は、以下の2点にある。 (1) オフライン教示でオンライン教示よりも高度で複雑
な作業の教示を可能にすること。 (2) オフライン教示により作成された教示デ−タをオン
ライン教示で最終調整する際、システム全体を十分理解
していない作業者が教示デ−タの誤った修正を行ってし
まうことを防止すること。
な作業の教示を可能にすること。 (2) オフライン教示により作成された教示デ−タをオン
ライン教示で最終調整する際、システム全体を十分理解
していない作業者が教示デ−タの誤った修正を行ってし
まうことを防止すること。
【0008】
【課題を解決するための手段】上記(1)の目的を達成す
るために、オフライン教示で使用できるロボット言語の
命令を、オンライン教示で使用できるロボット言語の命
令とは異ならしめ、より複雑で種類も豊富にしたもので
ある。同じく(1)の目的を達成するために、ロボット制
御装置では中間言語を用いてプレイバックのための命令
が記述するようにしたものである。上記(2)の目的を達
成するため、オフライン教示とオンライン教示で教示さ
れた教示デ−タの各命令ごとに、その教示手段を識別す
るマ−クを付加するようにしたものである。
るために、オフライン教示で使用できるロボット言語の
命令を、オンライン教示で使用できるロボット言語の命
令とは異ならしめ、より複雑で種類も豊富にしたもので
ある。同じく(1)の目的を達成するために、ロボット制
御装置では中間言語を用いてプレイバックのための命令
が記述するようにしたものである。上記(2)の目的を達
成するため、オフライン教示とオンライン教示で教示さ
れた教示デ−タの各命令ごとに、その教示手段を識別す
るマ−クを付加するようにしたものである。
【0009】
【作用】中間言語にはロボット動作命令、外部入出力制
御命令、数値等の演算命令、プログラム制御命令、上位
言語インタフェ−ス用の擬似命令等の基本的な命令が用
意されている。
御命令、数値等の演算命令、プログラム制御命令、上位
言語インタフェ−ス用の擬似命令等の基本的な命令が用
意されている。
【0010】オンライン教示では、直線動作、関節動
作、円弧動作の基本的なロボット動作命令、一信号単位
での入出力命令、溶接機制御命令、簡単な分岐命令がロ
ボット言語として使用可能である。これらの命令はオン
ライン教示処理により、いくつかの中間言語の組み合わ
せに翻訳される。
作、円弧動作の基本的なロボット動作命令、一信号単位
での入出力命令、溶接機制御命令、簡単な分岐命令がロ
ボット言語として使用可能である。これらの命令はオン
ライン教示処理により、いくつかの中間言語の組み合わ
せに翻訳される。
【0011】オフライン教示では、オンラインで教示で
きる命令に加え、自由曲線による動作命令、複数信号単
位での入出力命令、位置の演算命令、論理演算命令、複
雑な条件判断が可能な分岐命令等がロボット言語として
使用可能である。これらの命令はオフライン教示処理に
より、通常いくつかの中間言語の組み合わせに翻訳され
る。
きる命令に加え、自由曲線による動作命令、複数信号単
位での入出力命令、位置の演算命令、論理演算命令、複
雑な条件判断が可能な分岐命令等がロボット言語として
使用可能である。これらの命令はオフライン教示処理に
より、通常いくつかの中間言語の組み合わせに翻訳され
る。
【0012】オフライン教示処理は、ロボット制御装置
以外のコンピュ−タに搭載されることが多い。オフライ
ン教示では、汎用のエディタやロボット言語専用のエデ
ィタによって命令を入力し、オフライン教示用のトラン
スレ−タで中間言語に翻訳する。この時、オフライン教
示でしか使用できない命令にはオフライン教示言語イン
タフェ−ス用の擬似命令が必ず組み込まれる。オフライ
ン教示処理は、搭載されているコンピュ−タが教示機能
のみにその資源を使用すればよいので、オンライン教示
処理よりも複雑な処理内容のものを容易に構築出来る。
以外のコンピュ−タに搭載されることが多い。オフライ
ン教示では、汎用のエディタやロボット言語専用のエデ
ィタによって命令を入力し、オフライン教示用のトラン
スレ−タで中間言語に翻訳する。この時、オフライン教
示でしか使用できない命令にはオフライン教示言語イン
タフェ−ス用の擬似命令が必ず組み込まれる。オフライ
ン教示処理は、搭載されているコンピュ−タが教示機能
のみにその資源を使用すればよいので、オンライン教示
処理よりも複雑な処理内容のものを容易に構築出来る。
【0013】そして、オンライン教示処理は、ロボット
制御装置内部に組み込まれており、それには、以下のよ
うに、追加、修正、削除の各モ−ドがある。追加モ−ド
では、オンライン教示で使用可能な命令をメニュ−で表
示し、操作者が命令を選択するとその命令がオフライン
教示用のトランスレ−タで中間言語に翻訳され、教示デ
−タに加えられる。このとき、オンライン教示言語イン
タフェ−ス用の擬似命令が必要に応じて組み込まれる。
修正モ−ドでは、修正しようとしている教示デ−タの命
令が、オフライン教示言語インタフェ−ス用の擬似命令
が埋め込まれた命令であったとき、修正が禁止されてい
ることを表示した上で修正させない。そうでない場合に
は、その命令を削除した後、追加モ−ドと同一の処理を
行う。
制御装置内部に組み込まれており、それには、以下のよ
うに、追加、修正、削除の各モ−ドがある。追加モ−ド
では、オンライン教示で使用可能な命令をメニュ−で表
示し、操作者が命令を選択するとその命令がオフライン
教示用のトランスレ−タで中間言語に翻訳され、教示デ
−タに加えられる。このとき、オンライン教示言語イン
タフェ−ス用の擬似命令が必要に応じて組み込まれる。
修正モ−ドでは、修正しようとしている教示デ−タの命
令が、オフライン教示言語インタフェ−ス用の擬似命令
が埋め込まれた命令であったとき、修正が禁止されてい
ることを表示した上で修正させない。そうでない場合に
は、その命令を削除した後、追加モ−ドと同一の処理を
行う。
【0014】削除モ−ドでは、削除しようとしている教
示デ−タの命令が、オフライン教示言語インタフェ−ス
用の擬似命令が埋め込まれた命令であったときには、削
除が禁止されていることを表示し削除させない。そうで
ない場合には、その命令を削除する。以上より、オフラ
イン教示により作成された教示デ−タをオンライン教示
で最終調整する際、システム全体を十分理解していない
作業者が誤って教示デ−タの修正を行ってしまうことが
なくなる。
示デ−タの命令が、オフライン教示言語インタフェ−ス
用の擬似命令が埋め込まれた命令であったときには、削
除が禁止されていることを表示し削除させない。そうで
ない場合には、その命令を削除する。以上より、オフラ
イン教示により作成された教示デ−タをオンライン教示
で最終調整する際、システム全体を十分理解していない
作業者が誤って教示デ−タの修正を行ってしまうことが
なくなる。
【0015】
【実施例】以下、本発明による産業用ロボットの教示装
置について、図示の実施例により詳細に説明する。図2
は本発明の一実施例が適用されたロボットシステムの全
体機器構成図で、アーク溶接を自動的に行う溶接ロボッ
トを対象としているものであり、この図において、20
はロボット制御装置で、すべての機器を制御する働きを
している。21はロボット本体(マニプレータ)で、6軸
構成であり、6個のモ−タにより駆動されるようになっ
ている。このロボット本体20の先端には溶接ト−チ2
9が取り付けられている。
置について、図示の実施例により詳細に説明する。図2
は本発明の一実施例が適用されたロボットシステムの全
体機器構成図で、アーク溶接を自動的に行う溶接ロボッ
トを対象としているものであり、この図において、20
はロボット制御装置で、すべての機器を制御する働きを
している。21はロボット本体(マニプレータ)で、6軸
構成であり、6個のモ−タにより駆動されるようになっ
ている。このロボット本体20の先端には溶接ト−チ2
9が取り付けられている。
【0016】22は溶接機で、ロボット制御装置20の
指令に基づいて、溶接電流、電圧を発生すると共に、ワ
イヤ送給装置28にワイヤ送給指令を与える。23はテ
ィ−チングペンダントであるプログラミングユニット
(PGU)で、液晶表示装置と各種の釦が具備されてお
り、オンライン教示はこのPGU23を用いて行う。2
4はプレイバックコンソ−ル(PBC)で、ロボットの
溶接作業の開始や教示モ−ドへの切換えは、このPBC
24上のスイッチによって行う。25はガスボンベで、
溶接のためのシ−ウドガスの供給源となるもの。26は
溶接ワイヤ供給装置であり、そして27は溶接作業の対
象となるワ−クである。40はフロッピ−ディスクドラ
イバ−で、教示デ−タをフロッピ−ディスクに保存した
り、オフライン教示で作成された教示デ−タをフロッピ
−ディスクから制御装置にロ−ドしたりするために使用
される。
指令に基づいて、溶接電流、電圧を発生すると共に、ワ
イヤ送給装置28にワイヤ送給指令を与える。23はテ
ィ−チングペンダントであるプログラミングユニット
(PGU)で、液晶表示装置と各種の釦が具備されてお
り、オンライン教示はこのPGU23を用いて行う。2
4はプレイバックコンソ−ル(PBC)で、ロボットの
溶接作業の開始や教示モ−ドへの切換えは、このPBC
24上のスイッチによって行う。25はガスボンベで、
溶接のためのシ−ウドガスの供給源となるもの。26は
溶接ワイヤ供給装置であり、そして27は溶接作業の対
象となるワ−クである。40はフロッピ−ディスクドラ
イバ−で、教示デ−タをフロッピ−ディスクに保存した
り、オフライン教示で作成された教示デ−タをフロッピ
−ディスクから制御装置にロ−ドしたりするために使用
される。
【0017】次に、図3を用いてロボット制御装置20
の内部及びロボット本体21について説明する。ロボッ
ト制御装置20の内部は大きく3部分に分かれており、
まず、20aはメインCPU部であり、本発明の一実施
例におけるオンライン教示処理の主な部分はここで処理
される。次に、20bはサ−ボCPU部であり、ロボッ
トの動作制御を行っている。さらに20cはサ−ボアン
プであり、ロボット本体21に設けてあるサーボモータ
を駆動する働きをする。
の内部及びロボット本体21について説明する。ロボッ
ト制御装置20の内部は大きく3部分に分かれており、
まず、20aはメインCPU部であり、本発明の一実施
例におけるオンライン教示処理の主な部分はここで処理
される。次に、20bはサ−ボCPU部であり、ロボッ
トの動作制御を行っている。さらに20cはサ−ボアン
プであり、ロボット本体21に設けてあるサーボモータ
を駆動する働きをする。
【0018】次に、各々について、更に詳しく説明す
る。まず、メインCPU部20aは次のようになってい
る。30はCPU−Aで、全体の機器管理やオンライン
教示処理等を行う。31はROM−Aで、電源投入時に
CPU−A30が行うべき処理を記述したプログラムが
格納されている。32はRAM−Aで、ここにはバブル
メモリ35に格納されている各種処理プログラム及び教
示デ−タがロ−ドされ、それがCPU−A30によって
実行される。また、演算の途中結果等もここに記憶され
る。33は通信インタフェ−スで、この通信インタフェ
−ス33には2系統のチャンネルがあり、一方はPGU
23との通信であり、他方はPBC24との通信であ
る。従って、PGU23で入力された教示命令や、PB
C24で押されたキ−の情報などは、この通信インタフ
ェ−ス33を介してCPU−A30に伝達される。
る。まず、メインCPU部20aは次のようになってい
る。30はCPU−Aで、全体の機器管理やオンライン
教示処理等を行う。31はROM−Aで、電源投入時に
CPU−A30が行うべき処理を記述したプログラムが
格納されている。32はRAM−Aで、ここにはバブル
メモリ35に格納されている各種処理プログラム及び教
示デ−タがロ−ドされ、それがCPU−A30によって
実行される。また、演算の途中結果等もここに記憶され
る。33は通信インタフェ−スで、この通信インタフェ
−ス33には2系統のチャンネルがあり、一方はPGU
23との通信であり、他方はPBC24との通信であ
る。従って、PGU23で入力された教示命令や、PB
C24で押されたキ−の情報などは、この通信インタフ
ェ−ス33を介してCPU−A30に伝達される。
【0019】34は溶接機インタフェ−スで、本来は信
号の入出力インタフェ−スとして作られており、この実
施例では溶接機22とのインタフェ−スとして使用され
ていおり、このため溶接機22とつながっており、CP
U−A30からの指令を溶接機22に伝えたり、溶接機
22の状態をCPU−A30に伝えたりする。36はデ
ュアルポ−トラム(DPRAM)で、メインCPU部2
0aとサ−ボCPU部20bは、このDPRAM36を
介して情報のやり取りを行う。
号の入出力インタフェ−スとして作られており、この実
施例では溶接機22とのインタフェ−スとして使用され
ていおり、このため溶接機22とつながっており、CP
U−A30からの指令を溶接機22に伝えたり、溶接機
22の状態をCPU−A30に伝えたりする。36はデ
ュアルポ−トラム(DPRAM)で、メインCPU部2
0aとサ−ボCPU部20bは、このDPRAM36を
介して情報のやり取りを行う。
【0020】45はフロッピ−ディスクドライバ−イン
タフェ−スで、フロッピ−ディスクドライバ−40との
情報の伝達を行う。43はバスで、メインCPU部20
a内の各装置を接続している。
タフェ−スで、フロッピ−ディスクドライバ−40との
情報の伝達を行う。43はバスで、メインCPU部20
a内の各装置を接続している。
【0021】次にサ−ボCPU部20bについて説明す
る。このサ−ボCPU部20bは、メインCPU部20
aがDPRAM36に書き込んだ命令を実行するための
もので、37はCPU−Bで、サ−ボ関係のすべての処
理を行う。38はROM−Bで、CPU−B37が実行
すべきプログラムが格納されている。39はRAM−B
で、CPU−B37がROM−B38のプログラムを実
行する際、演算の途中結果が記憶される。40はタイマ
−で、一定時間周期でCPU−B37に割り込みをかけ
る。この周期でCPU−B37はサ−ボモ−タに指令を
発行する。
る。このサ−ボCPU部20bは、メインCPU部20
aがDPRAM36に書き込んだ命令を実行するための
もので、37はCPU−Bで、サ−ボ関係のすべての処
理を行う。38はROM−Bで、CPU−B37が実行
すべきプログラムが格納されている。39はRAM−B
で、CPU−B37がROM−B38のプログラムを実
行する際、演算の途中結果が記憶される。40はタイマ
−で、一定時間周期でCPU−B37に割り込みをかけ
る。この周期でCPU−B37はサ−ボモ−タに指令を
発行する。
【0022】41はD/Aコンバ−タで、CPU−B3
7が算出した各モ−タに対する電流指令は、ここでアナ
ログ値に変換され、その後、サ−ボアンプ20cによっ
て増幅され6個のモ−タを駆動する。42はカウンタ−
で、この中には6個のカウンタ−が入っており、各カウ
ンタ−は、各々エンコ−ダ部21bのエンコ−ダに接続
されている。従って、このカウンタ−42の値を読むこ
とによって、CPU−B37はロボットの現在いる位置
を知ることができる。44はバスであり、サ−ボCPU
部の各装置を接続している。
7が算出した各モ−タに対する電流指令は、ここでアナ
ログ値に変換され、その後、サ−ボアンプ20cによっ
て増幅され6個のモ−タを駆動する。42はカウンタ−
で、この中には6個のカウンタ−が入っており、各カウ
ンタ−は、各々エンコ−ダ部21bのエンコ−ダに接続
されている。従って、このカウンタ−42の値を読むこ
とによって、CPU−B37はロボットの現在いる位置
を知ることができる。44はバスであり、サ−ボCPU
部の各装置を接続している。
【0023】次に21aはモ−タ部で、ここにはM1か
らM6までの6個のモ−タがあり、各々ロボット本体2
1の旋回軸、上腕軸、前腕軸、回転軸、曲げ軸、ひねり
軸を駆動する。そして各モ−タにはエンコ−ダ部21b
のE1からE6までのエンコ−ダが取り付けられてお
り、モ−タの回転角を計測している。
らM6までの6個のモ−タがあり、各々ロボット本体2
1の旋回軸、上腕軸、前腕軸、回転軸、曲げ軸、ひねり
軸を駆動する。そして各モ−タにはエンコ−ダ部21b
のE1からE6までのエンコ−ダが取り付けられてお
り、モ−タの回転角を計測している。
【0024】次に、本発明の一実施例におけるオフライ
ン教示装置について説明する。図4は、オフライン教示
装置の全体図で、50はコンピュ−タ本体である。51
はCRTで、教示情報の表示等に使用される。52はキ
−ボ−ドで、ロボット言語の入力はこれを用いて行う。
53はマウスで、このマウス52はロボットの位置の指
定等に使用する。54はフロッピ−ディスクドライバ−
で、オフライン教示装置で作成した教示デ−タは、この
フロッピ−ディスクドライバ−54を用いてフロッピ−
ディスクに格納され、図3のロボット制御装置に送られ
る。
ン教示装置について説明する。図4は、オフライン教示
装置の全体図で、50はコンピュ−タ本体である。51
はCRTで、教示情報の表示等に使用される。52はキ
−ボ−ドで、ロボット言語の入力はこれを用いて行う。
53はマウスで、このマウス52はロボットの位置の指
定等に使用する。54はフロッピ−ディスクドライバ−
で、オフライン教示装置で作成した教示デ−タは、この
フロッピ−ディスクドライバ−54を用いてフロッピ−
ディスクに格納され、図3のロボット制御装置に送られ
る。
【0025】図5はコンピュ−タ本体50の内部ブロッ
ク図で、60はCPU−Cであり、この実施例における
オフライン教示処理は、すべてこのCPU−C60によ
って行われる。61はROM−Cで、電源投入時、CP
U−C60が行う処理プログラムが格納されている。6
2はRAM−Cで、これには、電源投入時にROM−C
61のプログラムによってハ−ドディスク63に格納さ
れているOSが、ハ−ドディスクインタフェ−ス64を
介してロ−ドされるが、その後は、必要に応じてオフラ
イン処理プログラム等が、ハ−ドディスク63からRA
M−C62にロ−ドされ、実行される。なお、演算の途
中結果や作成中の教示デ−タも、このRAM−C62に
記憶される。
ク図で、60はCPU−Cであり、この実施例における
オフライン教示処理は、すべてこのCPU−C60によ
って行われる。61はROM−Cで、電源投入時、CP
U−C60が行う処理プログラムが格納されている。6
2はRAM−Cで、これには、電源投入時にROM−C
61のプログラムによってハ−ドディスク63に格納さ
れているOSが、ハ−ドディスクインタフェ−ス64を
介してロ−ドされるが、その後は、必要に応じてオフラ
イン処理プログラム等が、ハ−ドディスク63からRA
M−C62にロ−ドされ、実行される。なお、演算の途
中結果や作成中の教示デ−タも、このRAM−C62に
記憶される。
【0026】65はCRTコントロ−ラで、CRT51
に表示すべき情報は、これを介して伝達される。66は
キ−ボ−ドインタフェ−スで、キ−ボ−ド52のどのキ
−が押されたかの情報は、ここを介してCPU−C60
に送られる。67はマウスインタフェ−スで、マウスの
釦の状態やマウスの移動量はここを介してCPU−C6
0に伝達される。68はフロッピ−ディスクインタ−フ
ェ−スで、オフライン教示で作成された教示デ−タをフ
ロッピ−ディスクに格納したり、フロッピ−ディスクに
格納されている教示デ−タをRAM−C62にロ−ドす
るのに使用される。
に表示すべき情報は、これを介して伝達される。66は
キ−ボ−ドインタフェ−スで、キ−ボ−ド52のどのキ
−が押されたかの情報は、ここを介してCPU−C60
に送られる。67はマウスインタフェ−スで、マウスの
釦の状態やマウスの移動量はここを介してCPU−C6
0に伝達される。68はフロッピ−ディスクインタ−フ
ェ−スで、オフライン教示で作成された教示デ−タをフ
ロッピ−ディスクに格納したり、フロッピ−ディスクに
格納されている教示デ−タをRAM−C62にロ−ドす
るのに使用される。
【0027】次に、以上の装置を用いた本発明の一実施
例における内部処理について説明して行く。まず、図6
はロボット制御装置で処理されるロボット制御処理のデ
−タフロ−ダイヤグラム(DFD)で、丸は処理を表わ
し、二重線はデ−タを表わす。そして矢印はデ−タの流
れを表わしている。
例における内部処理について説明して行く。まず、図6
はロボット制御装置で処理されるロボット制御処理のデ
−タフロ−ダイヤグラム(DFD)で、丸は処理を表わ
し、二重線はデ−タを表わす。そして矢印はデ−タの流
れを表わしている。
【0028】100はオンライン教示処理で、このオン
ライン教示処理100は、PGU23からの釦の情報を
基にして中間言語101を作成して行く処理であり、こ
の中間言語101はRAM−A32に置かれている。1
02はセ−ブロ−ド処理で、これはPGU23の釦情報
に従って、中間言語101をバブルメモリ35やフロッ
ピ−ディスク30にセ−ブしたり、ロ−ドしたりする処
理である。104はフロッピ−ディスクに格納された教
示デ−タで、103はバブルメモリに格納された教示デ
−タであり、両者とも中間言語をファイルとして登録し
たものである。
ライン教示処理100は、PGU23からの釦の情報を
基にして中間言語101を作成して行く処理であり、こ
の中間言語101はRAM−A32に置かれている。1
02はセ−ブロ−ド処理で、これはPGU23の釦情報
に従って、中間言語101をバブルメモリ35やフロッ
ピ−ディスク30にセ−ブしたり、ロ−ドしたりする処
理である。104はフロッピ−ディスクに格納された教
示デ−タで、103はバブルメモリに格納された教示デ
−タであり、両者とも中間言語をファイルとして登録し
たものである。
【0029】105はインタプリタで、これはプレイバ
ック時に動作し、PBC24から起動の指令が入力され
ると、中間言語101を1ステップづつ解釈し、実行し
て行く。そして、命令がロボット動作命令の時にはサ−
ボCPU部の処理106にロボットの動作指令を発行す
る。更にまた、このインタプリタ105は必要に応じて
ロボットの状態をサ−ボCPU部106から受け取る。
ック時に動作し、PBC24から起動の指令が入力され
ると、中間言語101を1ステップづつ解釈し、実行し
て行く。そして、命令がロボット動作命令の時にはサ−
ボCPU部の処理106にロボットの動作指令を発行す
る。更にまた、このインタプリタ105は必要に応じて
ロボットの状態をサ−ボCPU部106から受け取る。
【0030】サ−ボCPU部106はモ−タの電流指令
をサ−ボアンプ20cへ出力してロボットを駆動させる
と共に、エンコ−ダ部21bよりロボットの現在位置を
取り込み、ロボットの位置を制御して行く。107は入
出力(I/O)処理で、中間言語に入出力命令がある
と、インタプリタ105は入出力処置107に指令し、
信号の入出力を行う。
をサ−ボアンプ20cへ出力してロボットを駆動させる
と共に、エンコ−ダ部21bよりロボットの現在位置を
取り込み、ロボットの位置を制御して行く。107は入
出力(I/O)処理で、中間言語に入出力命令がある
と、インタプリタ105は入出力処置107に指令し、
信号の入出力を行う。
【0031】ここで、本発明の一実施例における中間言
語の仕様について、図7により説明する。この図7は、
左から中間言語の命令名、形式、スタック操作の状態、
実行時のインタプリタでの働きを一覧表にしたもので、
主なものだけを示してある。
語の仕様について、図7により説明する。この図7は、
左から中間言語の命令名、形式、スタック操作の状態、
実行時のインタプリタでの働きを一覧表にしたもので、
主なものだけを示してある。
【0032】まず、オンライン擬似命令(EX n)は、
オンライン教示言語との相互変換のために使用されるも
ので、nがオンライン教示言語と1対1に対応してい
る。そして、この実施例においては、オンライン教示処
理での中間言語生成時、必ずこのオンライン擬似命令を
埋め込む。そして、中間言語からオンライン教示言語へ
逆変換するときには、nを用いてどのオンライン教示命
令に変換するかを決めるのである。なお、このオンライ
ン擬似命令は、インタプリタの解釈時にはインストラク
ションポインタを次に進める命令として処理される。
オンライン教示言語との相互変換のために使用されるも
ので、nがオンライン教示言語と1対1に対応してい
る。そして、この実施例においては、オンライン教示処
理での中間言語生成時、必ずこのオンライン擬似命令を
埋め込む。そして、中間言語からオンライン教示言語へ
逆変換するときには、nを用いてどのオンライン教示命
令に変換するかを決めるのである。なお、このオンライ
ン擬似命令は、インタプリタの解釈時にはインストラク
ションポインタを次に進める命令として処理される。
【0033】次に、オフライン擬似命令(EXO l
name)は、この命令以降l長分については、オンラ
イン教示で修正、削除等の調整不可であることを示すた
めに使用される。そして、このオフライン擬似命令も、
インタプリタの解釈時には、インストラクションポイン
タをnameの次に進める命令として処理される。ここ
で、nameはASCIIコ−ドで埋め込まれている、
この命令以降l長分の処理を表す名称であり、オンライ
ン教示で中間言語を逆変換したときPGU上にそのまま
表示される。
name)は、この命令以降l長分については、オンラ
イン教示で修正、削除等の調整不可であることを示すた
めに使用される。そして、このオフライン擬似命令も、
インタプリタの解釈時には、インストラクションポイン
タをnameの次に進める命令として処理される。ここ
で、nameはASCIIコ−ドで埋め込まれている、
この命令以降l長分の処理を表す名称であり、オンライ
ン教示で中間言語を逆変換したときPGU上にそのまま
表示される。
【0034】また、ロ−ド命令(LOD X)は、各種の
変数をインタプリタが管理しているスタックのスタック
ポインタが差し示す所(スタックトップ)に転送する命令
であり、このロ−ド命令を実行すると、Xで指定された
変数がスタックトップにロ−ドされ、Xのサイズ分スタ
ックポインタがインクリメントされる。
変数をインタプリタが管理しているスタックのスタック
ポインタが差し示す所(スタックトップ)に転送する命令
であり、このロ−ド命令を実行すると、Xで指定された
変数がスタックトップにロ−ドされ、Xのサイズ分スタ
ックポインタがインクリメントされる。
【0035】更に、ストア命令(STR X)は、インタ
プリタが管理しているスタックトップから変数Xに値を
転送する命令であり、このストア命令を実行すると、X
で指定された変数にスタックトップの値がセ−ブされ、
Xのサイズ分スタックポインタがデクリメントされる。
プリタが管理しているスタックトップから変数Xに値を
転送する命令であり、このストア命令を実行すると、X
で指定された変数にスタックトップの値がセ−ブされ、
Xのサイズ分スタックポインタがデクリメントされる。
【0036】次に、補間タイプ指定命令(IPTYPE)
は、スタックトップの値に従って補間方式をサ−ボCP
U部に指定する命令である。また、補間命令(MOVS)
は、目標位置までの動作命令で、この命令実行時には、
スタック上に目標位置の格納されている位置変数のアド
レスが設定されている必要がある。このとき、目標位置
の数は補間タイプに依存する。そして、直線補間、関節
補間、円弧補間の場合は目標位置は1点で良い。ただ
し、円弧補間では、少なくとももう1点必要であるが、
インタプリタは前後で指定された目標位置を自動的に使
用するので、このままで良い。しかして、自由曲線補間
では、n個の目標位置を指定し、それらをスプライン曲
線で補間することになる。
は、スタックトップの値に従って補間方式をサ−ボCP
U部に指定する命令である。また、補間命令(MOVS)
は、目標位置までの動作命令で、この命令実行時には、
スタック上に目標位置の格納されている位置変数のアド
レスが設定されている必要がある。このとき、目標位置
の数は補間タイプに依存する。そして、直線補間、関節
補間、円弧補間の場合は目標位置は1点で良い。ただ
し、円弧補間では、少なくとももう1点必要であるが、
インタプリタは前後で指定された目標位置を自動的に使
用するので、このままで良い。しかして、自由曲線補間
では、n個の目標位置を指定し、それらをスプライン曲
線で補間することになる。
【0037】なお、この他にもI/O制御命令(I/O
出力、I/O入力)、演算命令(四則演算、位置演算、特
殊関数等)、プログラム制御命令(比較、条件分岐、プロ
グラム呼び出し等)などがあり、従って、この実施例で
は、全部で約200個の命令が実行できる。
出力、I/O入力)、演算命令(四則演算、位置演算、特
殊関数等)、プログラム制御命令(比較、条件分岐、プロ
グラム呼び出し等)などがあり、従って、この実施例で
は、全部で約200個の命令が実行できる。
【0038】次に、本発明の中心となるオンライン教示
処理について説明して行く。
処理について説明して行く。
【0039】図8は、この実施例におけるオフライン教
示処理のフロ−チャ−トで、このオフライン教示処理で
は、まず処理110で逆変換表示処理を行う。この処理
は、中間言語をPGUの表示対象部分だけオフライン教
示言語に逆変換し、表示するようになっている。
示処理のフロ−チャ−トで、このオフライン教示処理で
は、まず処理110で逆変換表示処理を行う。この処理
は、中間言語をPGUの表示対象部分だけオフライン教
示言語に逆変換し、表示するようになっている。
【0040】図9に、オンライン教示言語と中間言語の
対応の1部を示すが、この図9の対応関係は、テ−ブル
としてRAM−A32に格納されており、オンライン教
示言語と中間言語は、このテーブルを基にして相互変換
される。一例を示すと、例えば、次のような中間言語 PROG001 EX 2 LOD 0 IPTYPE EX 1 LOD @P1 MOVS EXO 17 ソウタイイドウ LOD P2 LOD S2 PADD STR WORK LOD @WORK MOVS EOP (注)EOPはプログラムの終わりを
表す中間言語は、次のようにオンライン教示言語に逆変
換され、PGU23に表示される。 PROG001 001 ホカン カンセツ 002 P001 003 EX:ソウタイイドウ 004 END ここで、オンライン教示言語のEX:はオフライン教示
で入力された命令であることを示す。
対応の1部を示すが、この図9の対応関係は、テ−ブル
としてRAM−A32に格納されており、オンライン教
示言語と中間言語は、このテーブルを基にして相互変換
される。一例を示すと、例えば、次のような中間言語 PROG001 EX 2 LOD 0 IPTYPE EX 1 LOD @P1 MOVS EXO 17 ソウタイイドウ LOD P2 LOD S2 PADD STR WORK LOD @WORK MOVS EOP (注)EOPはプログラムの終わりを
表す中間言語は、次のようにオンライン教示言語に逆変
換され、PGU23に表示される。 PROG001 001 ホカン カンセツ 002 P001 003 EX:ソウタイイドウ 004 END ここで、オンライン教示言語のEX:はオフライン教示
で入力された命令であることを示す。
【0041】次に、図8の処理111でPGU23から
の釦をチェックし、モ−ドを判定する。そして、判定結
果が追加モ−ドであれば処理112で追加処理を行な
い、修正モ−ドであれば処理113で修正処理を行う。
更に、削除モ−ドであれば、処理114で削除処理を行
う。しかして、終了であればオンライン教示処理を終了
する。
の釦をチェックし、モ−ドを判定する。そして、判定結
果が追加モ−ドであれば処理112で追加処理を行な
い、修正モ−ドであれば処理113で修正処理を行う。
更に、削除モ−ドであれば、処理114で削除処理を行
う。しかして、終了であればオンライン教示処理を終了
する。
【0042】次に、これらの各モードでの処理の詳細に
ついて説明する。図10は追加処理112の詳細で、ま
ず、処理120でオンライン教示命令のメニュ−を表示
する。メニュ−は図9のオンライン教示言語の欄が羅列
されたものである。続く処理121ではPGU23から
のキ−(釦)入力を待つ。ここでPGU23からは図9の
メニュ−No. の欄に示された数値が送られてくる。例
えば、ア−クNo. のメニュ−を選択すると数値3が送
られてくる。次に処理122でメニュ−No. を中間言
語に変換(トランスレ−ト)する。ここでの変換処理で
は、図9に示したテ−ブルをメニュ−No. から選択
し、対応する中間言語を指定されたアドレスに転送する
処理となる。なお、図9で示したテ−ブルには必ずオン
ライン擬似命令(EX n)が入っているので、オンライ
ン教示で教示した命令には必ずオンライン擬似命令(E
X n)が付加されることになる。
ついて説明する。図10は追加処理112の詳細で、ま
ず、処理120でオンライン教示命令のメニュ−を表示
する。メニュ−は図9のオンライン教示言語の欄が羅列
されたものである。続く処理121ではPGU23から
のキ−(釦)入力を待つ。ここでPGU23からは図9の
メニュ−No. の欄に示された数値が送られてくる。例
えば、ア−クNo. のメニュ−を選択すると数値3が送
られてくる。次に処理122でメニュ−No. を中間言
語に変換(トランスレ−ト)する。ここでの変換処理で
は、図9に示したテ−ブルをメニュ−No. から選択
し、対応する中間言語を指定されたアドレスに転送する
処理となる。なお、図9で示したテ−ブルには必ずオン
ライン擬似命令(EX n)が入っているので、オンライ
ン教示で教示した命令には必ずオンライン擬似命令(E
X n)が付加されることになる。
【0043】次に、図1は修正処理113の詳細で、こ
の処理では、まず処理130でPGU23からの修正行
の指定キ−の入力を待つ。修正行が指定されると、処理
131でその行がオフライン教示命令か否か調べ、修正
行の先頭の中間言語がオフライン擬似命令(EXO)であ
れば、オフライン教示命令であると判定する。そしてオ
フライン教示命令であれば、処理134で修正が禁止さ
れていることをPGU23に表示し、修正処理を終了す
る。しかして、オフライン教示命令でなければ処理13
2でその命令の長さをを図9のテ−ブルより引き出し、
その長さだけ中間言語を消去し、その後、処理133で
図10の追加処理を行なうのである。
の処理では、まず処理130でPGU23からの修正行
の指定キ−の入力を待つ。修正行が指定されると、処理
131でその行がオフライン教示命令か否か調べ、修正
行の先頭の中間言語がオフライン擬似命令(EXO)であ
れば、オフライン教示命令であると判定する。そしてオ
フライン教示命令であれば、処理134で修正が禁止さ
れていることをPGU23に表示し、修正処理を終了す
る。しかして、オフライン教示命令でなければ処理13
2でその命令の長さをを図9のテ−ブルより引き出し、
その長さだけ中間言語を消去し、その後、処理133で
図10の追加処理を行なうのである。
【0044】また、図11は削除処理114の詳細で、
この削除処理では、まず処理140でPGU23からの
削除行の指定キ−の入力を待つ。削除行が指定されると
処理141でその行がオフライン教示命令か否か調べ
る。削除行の先頭の中間言語がオフライン擬似命令(E
XO)であればオフライン教示命令であると判定する。
そして、オフライン教示命令であれば処理143で削除
が禁止されていることをPGU23に表示し、削除処理
を終了する。しかして、オフライン教示命令でなければ
処理142でその命令の長さをを図9のテ−ブルより引
き出し、その長さだけ中間言語を消去して処理を終了す
るのである。
この削除処理では、まず処理140でPGU23からの
削除行の指定キ−の入力を待つ。削除行が指定されると
処理141でその行がオフライン教示命令か否か調べ
る。削除行の先頭の中間言語がオフライン擬似命令(E
XO)であればオフライン教示命令であると判定する。
そして、オフライン教示命令であれば処理143で削除
が禁止されていることをPGU23に表示し、削除処理
を終了する。しかして、オフライン教示命令でなければ
処理142でその命令の長さをを図9のテ−ブルより引
き出し、その長さだけ中間言語を消去して処理を終了す
るのである。
【0045】以上のようにして、この実施例では、オン
ライン教示処理ではオフライン教示で指定された命令の
修正、削除を禁止している。ただし、図中には示してい
ないが、プログラム単位の消去はユ−ティリティ機能で
行うことが可能である。
ライン教示処理ではオフライン教示で指定された命令の
修正、削除を禁止している。ただし、図中には示してい
ないが、プログラム単位の消去はユ−ティリティ機能で
行うことが可能である。
【0046】次に、この実施例における、オフライン教
示処理について説明する。
示処理について説明する。
【0047】図12は、この実施例によるオフライン教
示処理のデ−タフロ−ダイヤグラム(DFD)で、まず処
理150はオフライン教示言語のエディタであり、オフ
ライン教示言語151の編集を行う。このときのエディ
タ処理の内容は、オフライン教示言語151の内容をC
RT51に表示し、キ−ボ−ド52のキ−入力に従って
オフライン教示言語151の追加、修正、削除等を行な
うものである。
示処理のデ−タフロ−ダイヤグラム(DFD)で、まず処
理150はオフライン教示言語のエディタであり、オフ
ライン教示言語151の編集を行う。このときのエディ
タ処理の内容は、オフライン教示言語151の内容をC
RT51に表示し、キ−ボ−ド52のキ−入力に従って
オフライン教示言語151の追加、修正、削除等を行な
うものである。
【0048】処理152は位置教示処理で、この処理に
よりオフライン教示言語によるロボット位置の入力を行
なう。この位置教示処理の内容は、キーボードー52と
マウス53からの入力に従って動作シミュレータ153
内の仮想ロボットを動かし、その位置をロボット位置と
してオフライン教示言語に登録する。
よりオフライン教示言語によるロボット位置の入力を行
なう。この位置教示処理の内容は、キーボードー52と
マウス53からの入力に従って動作シミュレータ153
内の仮想ロボットを動かし、その位置をロボット位置と
してオフライン教示言語に登録する。
【0049】処理153は動作シミュレータで、上記し
たように仮想ロボットのシミュレーションを行ない、C
RT51に、その状態をグラフィックで表示する。処理
154は環境情報で、ロボットの機構定数や対象ワーク
のCAD情報などが格納されており、それらは動作シミ
ュレータ153で使用される。
たように仮想ロボットのシミュレーションを行ない、C
RT51に、その状態をグラフィックで表示する。処理
154は環境情報で、ロボットの機構定数や対象ワーク
のCAD情報などが格納されており、それらは動作シミ
ュレータ153で使用される。
【0050】処理155はトランスレータで、オフライ
ン教示言語を中間言語157に変換する。このトランス
レータは編集終了時に実行され、オフライン教示言語を
まとめて変換する。そして、オフライン教示言語の中
に、構文などの誤りがあれば、CRT52にその旨を表
示させるのである。また、このトランスレータは、図9
のオンライン教示言語も受付けるが、この実施例では、
更に図13に示すような高度な記述も中間言語に変換で
きるようになっている。
ン教示言語を中間言語157に変換する。このトランス
レータは編集終了時に実行され、オフライン教示言語を
まとめて変換する。そして、オフライン教示言語の中
に、構文などの誤りがあれば、CRT52にその旨を表
示させるのである。また、このトランスレータは、図9
のオンライン教示言語も受付けるが、この実施例では、
更に図13に示すような高度な記述も中間言語に変換で
きるようになっている。
【0051】教示者がオンライン教示言語による命令を
エディタ150で入力すると、トランスレータ155は
図9で示したテーブルを用いて中間言語に変換する。こ
の場合、この中間言語にはオンライン疑似命令が付加さ
れるが、それ以外は、一般のコンパイラと同じような処
理により中間言語に変換する。但し、このときには、括
弧で示されたコメントがオフライン疑似命令のname
の中に埋め込まれる。従って、教示者は、現場で調整す
る必要がある個所については、オンライン教示言語で入
力し、誤って修正されては困る部分については、オフラ
イン教示言語を用いるようにするのである。
エディタ150で入力すると、トランスレータ155は
図9で示したテーブルを用いて中間言語に変換する。こ
の場合、この中間言語にはオンライン疑似命令が付加さ
れるが、それ以外は、一般のコンパイラと同じような処
理により中間言語に変換する。但し、このときには、括
弧で示されたコメントがオフライン疑似命令のname
の中に埋め込まれる。従って、教示者は、現場で調整す
る必要がある個所については、オンライン教示言語で入
力し、誤って修正されては困る部分については、オフラ
イン教示言語を用いるようにするのである。
【0052】処理156は逆トランスレータで、中間言
語157をオフライン言語151に変換(逆)する働きを
する。この処理はエディタ150を起動したときに実行
される。処理158はオフラインインタプリタで、オフ
ライン教示で作成した中間言語157のチェックに用い
られる。なお、このオフラインインタプリタ158は、
図6のインタプリタ105とほぼ同じ働きをするが、こ
ちらでは、動作させるのが実際のロボットではなくて、
動作シミュレータ153が管理している仮想ロボットで
ある点が異なる。さらに入出力命令に対してはCRT5
1にその出力状態を表示したり、キーボード52から外
部入力状態を入力させたりする。
語157をオフライン言語151に変換(逆)する働きを
する。この処理はエディタ150を起動したときに実行
される。処理158はオフラインインタプリタで、オフ
ライン教示で作成した中間言語157のチェックに用い
られる。なお、このオフラインインタプリタ158は、
図6のインタプリタ105とほぼ同じ働きをするが、こ
ちらでは、動作させるのが実際のロボットではなくて、
動作シミュレータ153が管理している仮想ロボットで
ある点が異なる。さらに入出力命令に対してはCRT5
1にその出力状態を表示したり、キーボード52から外
部入力状態を入力させたりする。
【0053】処理159はセーブロード処理で、キーボ
ード52のキー入力に従って中間言語157をフロッピ
ーディスクドライバー54でフロッピーディスクにセー
ブしたり、フロッピーディスクの教示データ160をR
AM−C62の中間言語のエリアにロードしたりする。
こうしてチェックが終了した中間言語はフロッピーディ
スクに格納し、ロボット制御装置にロードしてロボット
の制御に使用される。
ード52のキー入力に従って中間言語157をフロッピ
ーディスクドライバー54でフロッピーディスクにセー
ブしたり、フロッピーディスクの教示データ160をR
AM−C62の中間言語のエリアにロードしたりする。
こうしてチェックが終了した中間言語はフロッピーディ
スクに格納し、ロボット制御装置にロードしてロボット
の制御に使用される。
【0054】従って、以上の実施例によれば、オフライ
ン教示において、オンライン教示による場合よりも複雑
な作業の教示が可能になり、かつ、オフライン教示によ
り作成された教示デ−タをオンライン教示で最終調整す
る際、システム全体を十分理解していない作業者であっ
ても、教示デ−タに誤った修正を加えてしまう虞れが確
実に防止できる上、以下に列挙する通りの顕著な効果が
期待できる。
ン教示において、オンライン教示による場合よりも複雑
な作業の教示が可能になり、かつ、オフライン教示によ
り作成された教示デ−タをオンライン教示で最終調整す
る際、システム全体を十分理解していない作業者であっ
ても、教示デ−タに誤った修正を加えてしまう虞れが確
実に防止できる上、以下に列挙する通りの顕著な効果が
期待できる。
【0055】(1) オフライン教示で使用可能になるロボ
ット言語の命令が、オンライン教示で使用可能なロボッ
ト言語による命令よりもより複雑なものとなり、種類も
豊富になるので、ロボット作業を充分に高度化すること
ができる。 (2) オフライン教示により作成した教示データをオンラ
イン教示で最終調整する場合、調整を必要としない部分
には、EX:nameと表示されるので、調整が必要な
部分と、そうでない部分とが明確に区別できるため、教
示作業が容易になる。 (3) 調整が不要な部分に対しては、オンライン教示での
修正、削除が自動的にに禁止されるので、誤って教示デ
ータを壊してしまう虞れが無くなる。 (4) オフライン疑似命令を採用したので、複数の命令列
に、作業者にとって判り易い名称が付された形式でPG
Uに表示でき、このため、教示データの理解が極めて容
易になる。 (5) オフライン疑似命令を採用したので、中間言語に変
換可能な場合に限るという制限があるが、各種の処理系
での上位言語が容易に作成できる。
ット言語の命令が、オンライン教示で使用可能なロボッ
ト言語による命令よりもより複雑なものとなり、種類も
豊富になるので、ロボット作業を充分に高度化すること
ができる。 (2) オフライン教示により作成した教示データをオンラ
イン教示で最終調整する場合、調整を必要としない部分
には、EX:nameと表示されるので、調整が必要な
部分と、そうでない部分とが明確に区別できるため、教
示作業が容易になる。 (3) 調整が不要な部分に対しては、オンライン教示での
修正、削除が自動的にに禁止されるので、誤って教示デ
ータを壊してしまう虞れが無くなる。 (4) オフライン疑似命令を採用したので、複数の命令列
に、作業者にとって判り易い名称が付された形式でPG
Uに表示でき、このため、教示データの理解が極めて容
易になる。 (5) オフライン疑似命令を採用したので、中間言語に変
換可能な場合に限るという制限があるが、各種の処理系
での上位言語が容易に作成できる。
【0056】
【発明の効果】本発明によれば、オフライン教示で使用
可能なロボット言語の命令を、オンライン教示で使用可
能なロボット言語の命令とは異ならしめ、より複雑で多
くの種類のものとすることができるので、オフライン教
示の特質が充分に活用でき、ロボットの作業を、より高
度で複雑なものとすることができる。
可能なロボット言語の命令を、オンライン教示で使用可
能なロボット言語の命令とは異ならしめ、より複雑で多
くの種類のものとすることができるので、オフライン教
示の特質が充分に活用でき、ロボットの作業を、より高
度で複雑なものとすることができる。
【0057】また、本発明によれば、オフライン教示で
作成したロボットの教示データを、オンライン教示で最
終調整する方式の場合、データの中で調整が必要な部分
と不要な部分とが明確にでき、且つ、調整が不要な部分
にはオンライン教示での修正の付加が自動的に禁止され
るようにしたので、たとえシステム全体について充分な
理解を持たない者がオンライン教示を行なったとして
も、その教示データの本質を変えてしまうような修正の
虞れがなく、危険発生を確実に抑えることができる。
作成したロボットの教示データを、オンライン教示で最
終調整する方式の場合、データの中で調整が必要な部分
と不要な部分とが明確にでき、且つ、調整が不要な部分
にはオンライン教示での修正の付加が自動的に禁止され
るようにしたので、たとえシステム全体について充分な
理解を持たない者がオンライン教示を行なったとして
も、その教示データの本質を変えてしまうような修正の
虞れがなく、危険発生を確実に抑えることができる。
【図1】本発明によるロボットの教示装置の一実施例に
おける修正処理を説明するフローチャートである。
おける修正処理を説明するフローチャートである。
【図2】本発明の一実施例が適用されたロボットシステ
ムの一例を示すブロック構成図である。
ムの一例を示すブロック構成図である。
【図3】本発明の一実施例が適用されたロボットシステ
ムにおけるロボット制御装置の内部ブロック構成図であ
る。
ムにおけるロボット制御装置の内部ブロック構成図であ
る。
【図4】本発明の一実施例におけるオフライン教示装置
の説明図である。
の説明図である。
【図5】本発明におけるオフライン教示装置の一実施例
を示す内部ブロック図である。
を示す内部ブロック図である。
【図6】本発明の一実施例におけるロボット制御処理デ
ータフローダイアグラムの説明図である。
ータフローダイアグラムの説明図である。
【図7】本発明の一実施例における中間言語の一覧表を
示す説明図である。
示す説明図である。
【図8】本発明の一実施例におけるオンライン教示処理
を説明するフローチャートである。
を説明するフローチャートである。
【図9】本発明の一実施例におけるオンライン教示言語
中間言語変換表を示す説明図である。
中間言語変換表を示す説明図である。
【図10】本発明の一実施例における追加処理を説明す
るフローチャートである。
るフローチャートである。
【図11】本発明の一実施例における削除処理を説明す
るフローチャートである。
るフローチャートである。
【図12】本発明の一実施例におけるオフライン教示処
理データフローダイアグラムの説明図である。
理データフローダイアグラムの説明図である。
【図13】本発明の一実施例におけるオフライン教示言
語中間言語変換表を示す説明図である。
語中間言語変換表を示す説明図である。
20 ロボット制御装置 21 ロボット本体(マニプレータ) 22 溶接機 23 ティ−チングペンダントであるプログラミングユ
ニット(PGU) 24 プレイバックコンソ−ル(PBC) 25 ガスボンベ 26 溶接ワイヤ供給装置 27 ワーク 28 ワイヤ送給装置 29 溶接ト−チ 40 フロッピ−ディスクドライバ−
ニット(PGU) 24 プレイバックコンソ−ル(PBC) 25 ガスボンベ 26 溶接ワイヤ供給装置 27 ワーク 28 ワイヤ送給装置 29 溶接ト−チ 40 フロッピ−ディスクドライバ−
Claims (6)
- 【請求項1】 少なくとも2種類の教示デ−タ作成手段
を備えたティーチングプレイバック方式のロボットにお
いて、上記各教示手段で入力される教示命令形式が、上
記各教示手段毎に異なったものとなるように構成したこ
とを特徴とする産業用ロボットの教示装置。 - 【請求項2】 少なくとも2種類の教示デ−タ作成手段
を備えたティーチングプレイバック方式のロボットにお
いて、上記各教示手段で教示された教示デ−タの各命令
毎に、それを作成した教示手段を識別するマ−クが付加
されるように構成したことを特徴とする産業用ロボット
の教示装置。 - 【請求項3】 請求項1の発明において、上記各教示手
段で入力される教示命令形式と、ロボット制御手段によ
りロボットの可動軸を制御するときに使用される教示デ
−タの命令形式とが異なったものとなるように構成した
ことを特徴とする産業用ロボットの教示装置。 - 【請求項4】 請求項1乃至3の発明の何れかにおい
て、上記教示手段の内の少なくとも1種類が、ロボット
の制御手段と同一の装置内に設置された教示手段で構成
されていることを特徴とする産業用ロボットの教示装
置。 - 【請求項5】 請求項4の発明において、上記ロボット
の制御手段と同一の装置内に設置された教示手段以外の
教示手段で教示した命令の変更が、上記ロボットの制御
手段と同一の装置内に設置された教示手段では禁止され
るように構成したことを特徴とする産業用ロボットの教
示装置。 - 【請求項6】 請求項1乃至3の発明の何れかにおい
て、上記各教示手段が上記教示デ−タの表示手段を備
え、上記各教示手段で作成された教示データ毎に異なっ
た表示形式で表示れるように構成されていることを特徴
とする産業用ロボットの教示装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16338391A JPH05241649A (ja) | 1991-06-10 | 1991-06-10 | 産業用ロボットの教示装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16338391A JPH05241649A (ja) | 1991-06-10 | 1991-06-10 | 産業用ロボットの教示装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05241649A true JPH05241649A (ja) | 1993-09-21 |
Family
ID=15772847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP16338391A Pending JPH05241649A (ja) | 1991-06-10 | 1991-06-10 | 産業用ロボットの教示装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05241649A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10625416B2 (en) | 2015-05-28 | 2020-04-21 | Hitachi, Ltd. | Robot operation device and program |
-
1991
- 1991-06-10 JP JP16338391A patent/JPH05241649A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10625416B2 (en) | 2015-05-28 | 2020-04-21 | Hitachi, Ltd. | Robot operation device and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2525358B2 (ja) | ロボツト制御装置 | |
WO1997011416A1 (fr) | Processeur de langage robotique | |
CN110936354A (zh) | 机器人的程序创建辅助装置 | |
JPH02100704A (ja) | ロボットプログラミングチェック方式 | |
JPH10143221A (ja) | 機器制御プログラムの開発支援システムおよび開発支援方法 | |
EP0673726A2 (en) | Robot control system | |
JPS61170807A (ja) | 数値制御装置 | |
JPH05241649A (ja) | 産業用ロボットの教示装置 | |
KR0182393B1 (ko) | 가상의 컴퓨터 수치 제어 공작 시스템 및 방법 | |
JPS6249145B2 (ja) | ||
JPH0944219A (ja) | ロボットシミュレータ装置 | |
JPS61160108A (ja) | 数値制御工作機械における加工制御方法 | |
JP2540326B2 (ja) | 産業用ロボットのティ−チングデ−タ作成方式 | |
JPS63273906A (ja) | 産業用ロボットのティ−チングデ−タ作成システム | |
JP7322099B2 (ja) | 情報処理方法、情報処理装置、ロボット装置、プログラム、およびコンピュータ読み取り可能な記録媒体 | |
JPH0736516A (ja) | シミュレーション装置 | |
JPH01269105A (ja) | オフラインプログラミング装置 | |
JPS60101606A (ja) | ロボツト自動運転方式 | |
JPS63273907A (ja) | 産業用ロボットのティ−チングデ−タ作成システム | |
JP2528878B2 (ja) | ロボット動作順序図出力方法 | |
JPS6260005A (ja) | ロボツトプログラム確認方法 | |
JPH06270082A (ja) | 補軸を有するロボットの制御方法 | |
CN113380110A (zh) | 一种复杂连续路径的自由编程及示教方法 | |
JPH0720925A (ja) | ロボットシミュレーションシステム | |
JP2533374B2 (ja) | 制御プログラム作成方法 |