JP2825226B2 - ロボット遠隔操作システム - Google Patents
ロボット遠隔操作システムInfo
- Publication number
- JP2825226B2 JP2825226B2 JP62213128A JP21312887A JP2825226B2 JP 2825226 B2 JP2825226 B2 JP 2825226B2 JP 62213128 A JP62213128 A JP 62213128A JP 21312887 A JP21312887 A JP 21312887A JP 2825226 B2 JP2825226 B2 JP 2825226B2
- Authority
- JP
- Japan
- Prior art keywords
- robot
- instruction
- knowledge
- database
- expression
- 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.)
- Expired - Lifetime
Links
Landscapes
- Devices For Executing Special Programs (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
この発明は、ロボット遠隔操作システムに関する。
(従来の技術)
従来、危険環境における作業はマスタ・スレーブマニ
ピュレータで行なっている。ところが、オペレータは作
業現場から離れた場所でこのマニピュレータを操作する
ため、スレーブアームの手先を視覚で直接見ながら操作
することができない。そのため、TVカメラを設置してTV
画面で手先を見ながら作業しているが、実際には常に最
適な位置にTVカメラを位置させて作業することは不可能
であり、マスタ・スレーブマニピュレータが本質的に操
作性が良くないこととが相まって作業時間が長くかか
り、オペレータの疲労が著しくなる問題点があった。 (発明が解決しようとする問題点) この発明は、このような従来の作業時間がながくかか
り、オペレータに激しい疲労をもたらす問題点を解決す
るためになされたもので、オペレータが簡単な命令語を
システムに与えるだけで所望の遠隔作業をロボットに自
律的に行なわせることができるロボット遠隔操作システ
ムを提供することを目的とする。 [発明の構成] (問題点を解決するための手段) この発明のロボット遠隔操作システムは第1図のよう
に作業対象物に対して作業するロボットと、このロボッ
トに対するタスク命令及びプリミディブタスク命令を実
行するにあたり必要な一般化した充足条件式及びその式
の各項を実現するために必要な命令を記憶する問題解決
部と、 前記タスク命令をプリミティブタスク命令に分解する
ときに使う環境状態に関する知識、プリミティブタスク
命令の内容手順をロボット制御命令で記述した動作手順
に関する知識前記ロボット制御命令の引数として使う知
識を階層構造となるように記憶する知識データベース
と、 ロボットの環境を監視し、それが変化する度に前記知
識データベースの記憶内容を更新変更する状態監視部
と、 前記ロボットを前記問題解決部の記憶したタスク命令
及びプリミティブタスク命令に従い制御するロボットコ
ントローラとを備え、 前記問題解決部は、与えられた命令の実行に必要とな
る前記充足条件式を探してこの充足条件式を満たすため
に前記プリミティブタスク命令を発動する動作を繰り返
し行い、前記プリミティブタスク命令を前記知識データ
ベースを参照しながらロボット制御命令に変換して前記
ロボットコントローラに出力するようにしたものであ
る。 (作用) この発明のロボット遠隔操作システムでは、複数の動
作命令が集まってできる作業の最小単位をプリミティブ
タスク命令とし、このプリミティブタスク命令がいくつ
か集まってできる作業命令をタスク命令と定義すると
き、タスク命令及びプリミティブタスク命令を実行する
ために必要な一般化した充足条件式を記述し、この式を
充足するに必要な命令を問題解決部に記憶させておく。 また知識データベースには、タスク命令をプリミティ
ブタスク命令に分解するときに使うロボットの環境状態
に関する知識、プリミティブタスク命令の内容手順をロ
ボット制御命令で記述した動作手順に関する知識、及び
このロボット制御命令の引数として使う知識を記憶させ
ておく。 そして現場での作業に当っては、作業対象物とロボッ
トとの相対位置関係を測距手段により計測し、ロボット
と作業対象物との間での座標変換マトリックスの要素を
求め、この座標変換マトリックスを用いて作業対象物基
準座標に関して記憶された知識をロボット基準座標系の
値に変換し、オペレータの作業命令を知識データベース
の作業環境に応じた具体的な知識と一般化した充足条件
式とを参照してロボット制御命令に変換し、ロボットコ
ントローラにダウンロードしてロボットに作業を行なわ
せる。 そしてロボットが一連の作業を実行する間に、ロボッ
トシステムに装備した各種センサからの信号とロボット
動作命令の進捗状況から、ロボット環境の変化を確認
し、知識データベースの中のロボットの環境状態に関す
る知識を逐次書換え変更し、問題解決部の中で次に実行
に移るべきタスク命令又はプリミティブタスク命令の決
定に供する。 (実施例) 以下、この発明の実施例を図に基づいて詳説する。 第1図はこの発明の一実施例のブロック図を示してお
り、問題解決部1は、オペレータの与えた作業命令から
ロボット制御プログラムを自動生成する部分である。こ
の問題解決部1には、オペレータの与えた命令を実行す
るために充足していなければならない条件式が一般化し
た論理式の形式で記憶されている。またこの充足条件式
の各項を充足するために実行すべき命令も対応して記憶
されている。 ワールドモデルデータベースは、ロボット及びロボッ
トの作業対象物に関する知識やそれらの現在の状態に関
する知識を記憶する知識データベースであり、前記タス
ク命令をプリミティブタスク命令に分解するときに使う
環境状態に関する知識、プリミティブタスク命令の内容
手順をロボット制御命令で記述した動作手順に関する知
識、前記ロボット制御命令の引数として使う知識が記憶
されている。この知識データベースは階層構造をもって
おり、親フレームには対象物に関する知識が対象物基準
座標系に関して記憶され、子フレームにはその作業対象
物を構成する各要素の知識が作業対象物基準座標系に関
して記憶されている。そしてこの子フレームは更に、必
要に応じてその子フレームをも持つことができる。 例えば、配管フランジを考えるならば、親フレームに
はフランジの基準点及び基準座標の原点と向き、フラン
ジの厚み、直径、ボルトやパッキング等の構成部品のリ
スト等が記憶されている。そして更に、構成部品はその
構成部品ごとの専用のデータベースをフランジフレーム
の子フレームとして形成する。例えばボルトフレームに
はボルトのサイズ、数、ボルトの位置座標、締め付けの
状態、ボルトに欠員のある時にはその所在、ボルトを緩
めたり締め付けたりする時に用いる工具、工具をボルト
の頭にセットする時に工具が経由しなければならない経
由点の座標等がボルト座標系又はフランジ座標系に関し
て記憶されるのである。 また、緩めたボルトをねじ穴から外して所望の場所に
収納するためのロボットの手先の経由点座標や収納場所
の座標値も記憶される。更に、ボルトの頭に工具をセッ
トする手順、ボルトを締め付けたり緩めたりする手順、
ロボットの手先でボルトをねじ穴に嵌めたり、ねじ穴か
ら外したりする手順も記憶される。 なお、これらの作業手順は例えばレンチを使って六角
ボルトを操作する場合には、ボルトの寸法に無関係に共
通なものとできるため、寸法の異なる六角ボルトフレー
ム全てに関して記憶しておく必要はなく、共通フレーム
に記憶し、それを参照するようにできる。そして寸法の
異なる六角ボルトであってもそのデータベースを参照す
れば、レンチの寸法等が自動的に調整され、その六角ボ
ルトを操作する作業手順となる。 状態監視部3はロボットの作業をロボットに装備した
各種センサの信号等で監視して各作業段階におけるロボ
ット環境の状態が変化する度に、ワールドモデルデータ
ベースにおける対応するロボット環境状態に関する知識
の修正、書換えを行う。 距離計4は、ロボットと作業対象物間の距離を三角測
量の原理を用いて計測する。 ロボットコントローラ5は、ロボット6を実際に動作
させる制御部であり、問題解決部1からの指令によりロ
ボット6に対し所望の作業動作を行なわせる。 従って、例えばフランジ分解の作業において、複数箇
所のフランジイのいずれにロボットが移動しても、その
箇所のフランジはどの状態になっているか、すなわち既
にボルトが外れているか否か等によってロボット周囲の
環境状態は異なり、ロボットの作業手順は異なるが各フ
ランジに個有のワールドモデルを参照して得られる知識
と問題解決部1に一般化した論理式として記憶した作業
手順に環境状態に関する具体条件を加味してそのフラン
ジに適応したロボット制御命令を自動生成することがで
きる。従って、ロボット6は作業環境に応じて自律的に
作業するものとなる。 上記構成のロボット遠隔操作システムの具体的な動作
について、次に説明する。 第2図に示すフローチャートを参照して、オペレータ
がフランジ分解、ボルト排除等のタスク命令又はプリミ
ティブタスク命令を与えると(ステップA1)、問題解決
部1は命令に該当する充足条件式を捜す(ステップA2,A
3)。 ここで命令に該当する充足条件式が見いだされるなら
ば、その充足条件式を(1)式とし、この(1)式の中
で充足されていない項があるかどうか調べる(ステップ
A4〜A6)。そして、条件の充足されていない項があるな
らば、その条件を充足するために必要なプリミティブタ
スク命令を発動し、ステップA3に戻る(ステップA7〜A
8)。 前記ステップA4において命令に該当する充足条件式を
見いだすことができない場合、入力させた命令をプリミ
ティブタスク命令として発動し、その命令で指定された
作業対象物のデータベースを参照し、その命令をロボッ
トに実行させるためのプログラムを生成する(ステップ
A9,A10)。 そして、この生成されたプログラムを問題解決部1か
らロボットコントローラ5にダウンロードし、ロボット
6に必要な作業を行なわせ、ロボットコントローラ5は
作業の終了を状態監視部3に報告する(ステップA11,A1
2)。 状態監視部3は関係する作業対象物のデータベースを
現在の対象物の状態データに書換え、N=Oであるばエ
ンドとしN=Oでない場合にはステップA6に戻る(ステ
ップA13,A14)。 前記ステップA7において、(N)式の中で充足されて
いない条件が見いだされない場合には、この(N)式を
充足条件とするタスク命令をプリミティブタスク命令と
して発動し、その命令で指定された作業対象物のデータ
ベースを参照して、ロボットにその命令を実行させるた
めのプログラムを生成する(ステップA15,A16)。そし
て、この生成されたプログラムをロボットコントローラ
5にダウンロードし、ロボット6に作業を行なわせる
(ステップA17)。 ロボットコントローラ5は、ロボットの作業が終了し
たならばその終了信号を状態監視部3に報告し、状態監
視部は関係する作業対象物のデータベースを現在の状態
データに書換える(ステップA18,A19)。 この作業の後、前段階の作業命令に戻るため、N−1
をNとし、N=Oであるならば作業完了とし、NがOで
ない場合にはステップA6に戻る(ステップA20,A21)。 この一連の動作について、フランジ分解作業を例にと
り、第3図に示すような具体的なフローチャート及び表
1を参照して説明する。 まず始めに、フランジの近傍にロボット6を移動機構
を用いて設定する、なお、この移動作業は、オペレータ
が目で見ながら操作することもでき、あるいは作業対象
物の座標値を入力することによりロボット側が自動的に
走行するように構成することもできる。 続いてオペレータは、フランジ上に予め設定されてい
る基準点に対し距離計4のステージ(図示せず)の姿勢
を調整し、光ビームを当ててその光スポットの映像を2
台のTVカメラで得、この映像信号と前記ステージのデー
タから三角測量の原理を用いてTVカメラからフランジの
基準点までの距離を計測する。ここで、フランジ上には
3つの基準点が予め設定されており、それらの各基準点
の距離を計測することにより、距離計4に対するフラン
ジの座標値(位置と向き)が計算により決定され、さら
に距離計4をロボット6の所定の位置に搭載しておくな
らば、その両者の位置関係からフランジ座標系をロボッ
ト座標系に変換することができる(ステップS1〜S6)。 なおここで、フランジとロボット6とが常に一定の位
置関係になくとも、所望の作業をロボット6に自律的に
行なわせるためにはフランジとロボットとの相対位置関
係を知ることが不可欠であり、距離計4の働きは極めて
重要なものとなる。この場合、座標系の変換のために必
要な座標変換マトリックスの各要素の計算機能は、距離
計4にマイクロコンピュータを組込んでおいて行なうこ
とができ、また問題解決部1を構成する計算機によって
行なうこともできる。 問題解決部1には、フランジの分解に関して、例えば
表1に示すような条件式とその条件式を満たすために必
要な命令とが用意されている。この表1において、
(1)〜(3)は条件式であり、(1−1),(1−
2)…(3−1),(3−2)は各条件式の右辺の各項
を満たすために発動される命令である。 そこでいま、ステップS7おいてオペレータがロボット
システムに対しフランジを分解せよとの作業命令を与え
たとすると、問題解決部1は[分解(フランジ)]の充
足条件式(1)を参照する(ステップS8,S9)。 そして条件式(1)が見いだされるならば、続いて条
件式(1)の右辺が満されているかどうかを、ワールド
モデルデータベース2におけるボルトとロボットのデー
タベースを参照して判断する(ステップS10)。 ここで今、ボルトがフランジにあるならば、右辺第1
項の条件は充足されておらず(ステップS11)、ボルト
排除命令(1−1)が発動され、この命令(1−1)の
充足条件(2)式を参照する(ステップS12)。 そして充足条件式(2)が見いだされるならば、続い
て(2)式の右辺が充足されるか否かを再びワールドモ
デルデータベース2を参照して判断する(ステップS13,
S14)。ここで右辺第1項が充足されていなければ、ボ
ルトを緩める命令(2−1)が活動され、続いて充足条
件式(3)を吟味することになる(ステップS15〜S1
7)。条件式(3)の[緩める(ボルト])]が見いだ
されるならば、この条件式(3)の右辺第1項が充足さ
れているかどうか判断し、充足されていなければレンチ
を持つ命令(3−1)を発動して更に充足条件式[持つ
(レンチ)]の(4)式を吟味することになる(ステッ
プS18〜S22)。 そしてこの充足条件式(4)が充足されていなけれ
ば、ロボット6は何らかの物を持っているため、その手
中の物を収納する命令(1−2)が発動される(ステッ
プS23,S24)。 そしてこの動作命令(1−2)に対応する充足条件式
を捜すとしても、この実施例の場合には、問題解決部1
に手中の物の収納命令式は記憶されておらず、ステップ
S25からステップS27に移行する、問題解決部1は、命令
(1−2)に対して引数となっている[手中のもの]の
データベース2を参照し、ここに記憶されている「手中
のもの」の収納場所の座標、収納するときにロボット6
の手先が経由すべき座標値とその時の手先の動作手順を
読み出して参照し、[収納(手中の物)]の命令を行な
うに必要な一切のロボット制御プログラムを生成する
(ステップS27)。 そして生成されたプログラムを逐次ロボットコントロ
ーラ5にダウンロードし、ロボットに必要な作業を行な
わせる(ステップS28)。 この一連のプログラムに従った動作が終了した時に
は、状態監視部3に動作終了信号が与えられ(ステップ
S29)、状態監視部3はこの動作終了報告を受けて実際
のセンサ信号をチェックし、エラーがなければワールド
モデルデータベース2にロボット6の手中は空になり、
手中の物が何処に移ったかを書込む(ステップS30)。 この一連の作業により充足条件式(4)が充足される
ことにより(ステップS31〜S33)、動作命令(3−1)
の[持つ(レンチ)]を発動することになり、ワールド
モデルデータベース2のレンチのデータベースを参照し
てレンチの収納場所の座標や掴み動作の手順を読出し、
レンチを持つのに必要な一切のロボット制御プログラム
を生成し、これらのプログラムを逐次ロボットコントロ
ーラ5にダウンロードしてロボット6にレンチを持つ作
業を行なわせる(ステップS34,S35)。 そして一連のレンチを持つ作業が完了すると、ロボッ
トコントローラ5は作業の終了を状態監視部3に報告
し、状態監視部3はロボット6とレンチのデータベース
を呼び出し、レンチのあり場所に関しデータを書換える
(ステップS36,S37)。 こうしてロボットがレンチを持つ一連の作業が完了す
ると充足条件式(3)の右辺第1項は充足されることに
なるが、右辺第2項についてはいまだ充足されておら
ず、引き続きこの条件式(3)の右辺第2項の充足状態
が吟味される(ステップS38〜S40)。 実施例の場合、充足条件式(3)における右辺第2項
はいまだ充足されていないため、[セット(レンチ,ボ
ルト)]の動作命令(3−2)が発動され、この(3−
2)の充足条件式が記憶されているかどうか参照し、こ
のケースの場合には充足条件式は登録されていないた
め、ワールドモデルデータベース2のボルトのデータベ
ースを参照し、ボルトの頭にレンチをセットするに必要
な全ての動作命令を自動生成する(ステップS41〜S4
3)。 この場合、ボルトの頭の位置、向き、ボルトの頭にレ
ンチを持っていく際の周囲の障害物との衝突をさけるた
めに経由しなければならないレンチの空間位置、向き等
はボルト座標糸又はフランジ座標系で記憶されているた
め、これをロボット基準座標系に変換してロボット動作
命令を作成しなければならない。そこで距離計4により
距離計測を行ない、所定の演算によって求めた座標変換
マトリックスを用い、上記の座標変換を実行することに
なる、そしてこのプログラムの実行の後、ロボットコン
トローラ5は状態監視部3に対し作業の終了を報告し、
状態監視部3はその時のロボットとレンチのデータベー
スを呼び出し、レンチとロボットの手先の有り場所等の
新たなデータをデータベース2に書込むことになる(ス
テップS44〜S46)。 こうしてレンチがボルトの頭にセットされると、充足
条件式[緩める(ボルト)]の式(3)が充足されるこ
とになるため、この充足条件式(3)を呼び出した一つ
前の段階の動作命令(2−1)が発動され、ワールドモ
デルデータベース2のボルトのデータベースを参照して
ボルトを緩めるに必要なロボット動作命令を生成して実
行し、この作業の実行の後ボルトのデータベースにボル
トが緩んだ状態にあることを新たに書込む(ステップS4
7〜S53)。 こうして、ボルトを緩める作業が完了した後には、状
態監視部3は一段階前の充足条件式(2)の[排除(ボ
ルト])の右辺第1項が完全に充足されているかどうか
を問題解決部1に指令する(ステップS54)。 そしてこの場合には、条件式(2)の右辺第1項は充
足されたことになるが、ロボット6の手先にはレンチが
まだ持たれたままになっているため右辺第2項は充足さ
れていないとになり、[収納(手中の物)]の動作命令
(1−2)が発動され、手中の物はレンチであるためレ
ンチのデータベースを参照し、レンチを収納する動作に
必要な一切のロボットの動作命令プログラムを生成し、
このプログラムに基づいてプログラムコントローラ5は
ロボット6にレンチ収納作業を実行させる(ステップS5
5〜S60)。 このレンチ収納動作が完了したならば、新たにレンチ
の収納場所その他のデータがデータベース2に新たに書
込まれ、また、ロボットのハンドは空手であるデータが
ロボットのデータベース2に書込まれることになる(ス
テップS61,S62)。 こうして充足条件式(2)は充足されることになり、
続いて動作命令(1−1)の排除(ボルト)]を実行す
ることになる(ステップS63〜S66)。 この(1−1)のボルト排除命令により、ボルトをロ
ボットハンドによって外すために、ボルトのデータベー
スの[排除(ボルト)]の動作手順とプラグラム実行に
必要なデータを参照し、必要な同時変換を行なってプロ
グラムを自動生成し、このプログラムに従ってロボット
6にボルト排除動作を実行させる(ステップS66,S6
7)。 ボルト排除作業が完了するならば、ロボットコントロ
ーラ5は状態監視部3に対し動作完了を報告し、状態監
視部3はボルトが外れてロボットハンドの手中にあるこ
とをロボットとボルトのデータベースに書込む(ステッ
プS68,S69)。 こうしてボルト排除動作が完了すると、タスク命令で
ある充足条件式(1)の右辺第1項は充足されることに
なるが、ロボットハンドには排除されたボルトが残され
ているために右辺第2項は充足されないことになり、動
作命令(1−2)の[収納(手中の物)]が実行され、
ボルトを所定の位置に収納してオペレータのタスク命令
である「フランジを分解せよが完了することになる(ス
テップS70〜S81)。 こうして充足条件式(1)が完全に充足された後、
[分解(フランジ)]を発動し、ワールドモデルデータ
ベース2におけるフランジデータベースを参照し、必要
データに同時変換を施すと共に、フランジ分解手順を参
照してフランジ分解プログラムを生成し、そのプログラ
ムに沿ってロボットにフランジ分解作業を行なわせ、そ
の作業終了後フランジデータベースに現在のフランジの
状態を書込む(ステップS82〜S85)。 このようにして、プラントのフランジ分解作業を、必
要な動作プログラムを自動生成しながら実行することが
できるのである。 なおこの発明は上記の実施例に限定されるものではな
く、プラントの各種作業をロボットにより行なわせる場
合に広く適用することができる。また、上記実施例に加
え、第4図に示すようにロボットコントローラ5に対し
てマスタアーム7を付加し、ロボット6をマスタ・スレ
ーブシステムとすることができ、作業対象物が破壊され
ていて事前にワールドモデルデータベースに記述した知
識が役立たないような場合にマスタスレーブ操作により
作業を行なうことができるようになる。 [発明の効果] 以上のようにこの発明によれば、オペレータが命令を
与えるだけでロボットが自律的に作業を行なうことがで
き、作業現場でロボットに教示したり、沢山の制御命令
を入力したりする手間が少くてすみ、その分間違いの発
生も少なくすることができ、更に実作業中にもオペレー
タは作業の進捗状況を監視するだけですむため、必要な
労力が低減され、作業効率が向上する。
ピュレータで行なっている。ところが、オペレータは作
業現場から離れた場所でこのマニピュレータを操作する
ため、スレーブアームの手先を視覚で直接見ながら操作
することができない。そのため、TVカメラを設置してTV
画面で手先を見ながら作業しているが、実際には常に最
適な位置にTVカメラを位置させて作業することは不可能
であり、マスタ・スレーブマニピュレータが本質的に操
作性が良くないこととが相まって作業時間が長くかか
り、オペレータの疲労が著しくなる問題点があった。 (発明が解決しようとする問題点) この発明は、このような従来の作業時間がながくかか
り、オペレータに激しい疲労をもたらす問題点を解決す
るためになされたもので、オペレータが簡単な命令語を
システムに与えるだけで所望の遠隔作業をロボットに自
律的に行なわせることができるロボット遠隔操作システ
ムを提供することを目的とする。 [発明の構成] (問題点を解決するための手段) この発明のロボット遠隔操作システムは第1図のよう
に作業対象物に対して作業するロボットと、このロボッ
トに対するタスク命令及びプリミディブタスク命令を実
行するにあたり必要な一般化した充足条件式及びその式
の各項を実現するために必要な命令を記憶する問題解決
部と、 前記タスク命令をプリミティブタスク命令に分解する
ときに使う環境状態に関する知識、プリミティブタスク
命令の内容手順をロボット制御命令で記述した動作手順
に関する知識前記ロボット制御命令の引数として使う知
識を階層構造となるように記憶する知識データベース
と、 ロボットの環境を監視し、それが変化する度に前記知
識データベースの記憶内容を更新変更する状態監視部
と、 前記ロボットを前記問題解決部の記憶したタスク命令
及びプリミティブタスク命令に従い制御するロボットコ
ントローラとを備え、 前記問題解決部は、与えられた命令の実行に必要とな
る前記充足条件式を探してこの充足条件式を満たすため
に前記プリミティブタスク命令を発動する動作を繰り返
し行い、前記プリミティブタスク命令を前記知識データ
ベースを参照しながらロボット制御命令に変換して前記
ロボットコントローラに出力するようにしたものであ
る。 (作用) この発明のロボット遠隔操作システムでは、複数の動
作命令が集まってできる作業の最小単位をプリミティブ
タスク命令とし、このプリミティブタスク命令がいくつ
か集まってできる作業命令をタスク命令と定義すると
き、タスク命令及びプリミティブタスク命令を実行する
ために必要な一般化した充足条件式を記述し、この式を
充足するに必要な命令を問題解決部に記憶させておく。 また知識データベースには、タスク命令をプリミティ
ブタスク命令に分解するときに使うロボットの環境状態
に関する知識、プリミティブタスク命令の内容手順をロ
ボット制御命令で記述した動作手順に関する知識、及び
このロボット制御命令の引数として使う知識を記憶させ
ておく。 そして現場での作業に当っては、作業対象物とロボッ
トとの相対位置関係を測距手段により計測し、ロボット
と作業対象物との間での座標変換マトリックスの要素を
求め、この座標変換マトリックスを用いて作業対象物基
準座標に関して記憶された知識をロボット基準座標系の
値に変換し、オペレータの作業命令を知識データベース
の作業環境に応じた具体的な知識と一般化した充足条件
式とを参照してロボット制御命令に変換し、ロボットコ
ントローラにダウンロードしてロボットに作業を行なわ
せる。 そしてロボットが一連の作業を実行する間に、ロボッ
トシステムに装備した各種センサからの信号とロボット
動作命令の進捗状況から、ロボット環境の変化を確認
し、知識データベースの中のロボットの環境状態に関す
る知識を逐次書換え変更し、問題解決部の中で次に実行
に移るべきタスク命令又はプリミティブタスク命令の決
定に供する。 (実施例) 以下、この発明の実施例を図に基づいて詳説する。 第1図はこの発明の一実施例のブロック図を示してお
り、問題解決部1は、オペレータの与えた作業命令から
ロボット制御プログラムを自動生成する部分である。こ
の問題解決部1には、オペレータの与えた命令を実行す
るために充足していなければならない条件式が一般化し
た論理式の形式で記憶されている。またこの充足条件式
の各項を充足するために実行すべき命令も対応して記憶
されている。 ワールドモデルデータベースは、ロボット及びロボッ
トの作業対象物に関する知識やそれらの現在の状態に関
する知識を記憶する知識データベースであり、前記タス
ク命令をプリミティブタスク命令に分解するときに使う
環境状態に関する知識、プリミティブタスク命令の内容
手順をロボット制御命令で記述した動作手順に関する知
識、前記ロボット制御命令の引数として使う知識が記憶
されている。この知識データベースは階層構造をもって
おり、親フレームには対象物に関する知識が対象物基準
座標系に関して記憶され、子フレームにはその作業対象
物を構成する各要素の知識が作業対象物基準座標系に関
して記憶されている。そしてこの子フレームは更に、必
要に応じてその子フレームをも持つことができる。 例えば、配管フランジを考えるならば、親フレームに
はフランジの基準点及び基準座標の原点と向き、フラン
ジの厚み、直径、ボルトやパッキング等の構成部品のリ
スト等が記憶されている。そして更に、構成部品はその
構成部品ごとの専用のデータベースをフランジフレーム
の子フレームとして形成する。例えばボルトフレームに
はボルトのサイズ、数、ボルトの位置座標、締め付けの
状態、ボルトに欠員のある時にはその所在、ボルトを緩
めたり締め付けたりする時に用いる工具、工具をボルト
の頭にセットする時に工具が経由しなければならない経
由点の座標等がボルト座標系又はフランジ座標系に関し
て記憶されるのである。 また、緩めたボルトをねじ穴から外して所望の場所に
収納するためのロボットの手先の経由点座標や収納場所
の座標値も記憶される。更に、ボルトの頭に工具をセッ
トする手順、ボルトを締め付けたり緩めたりする手順、
ロボットの手先でボルトをねじ穴に嵌めたり、ねじ穴か
ら外したりする手順も記憶される。 なお、これらの作業手順は例えばレンチを使って六角
ボルトを操作する場合には、ボルトの寸法に無関係に共
通なものとできるため、寸法の異なる六角ボルトフレー
ム全てに関して記憶しておく必要はなく、共通フレーム
に記憶し、それを参照するようにできる。そして寸法の
異なる六角ボルトであってもそのデータベースを参照す
れば、レンチの寸法等が自動的に調整され、その六角ボ
ルトを操作する作業手順となる。 状態監視部3はロボットの作業をロボットに装備した
各種センサの信号等で監視して各作業段階におけるロボ
ット環境の状態が変化する度に、ワールドモデルデータ
ベースにおける対応するロボット環境状態に関する知識
の修正、書換えを行う。 距離計4は、ロボットと作業対象物間の距離を三角測
量の原理を用いて計測する。 ロボットコントローラ5は、ロボット6を実際に動作
させる制御部であり、問題解決部1からの指令によりロ
ボット6に対し所望の作業動作を行なわせる。 従って、例えばフランジ分解の作業において、複数箇
所のフランジイのいずれにロボットが移動しても、その
箇所のフランジはどの状態になっているか、すなわち既
にボルトが外れているか否か等によってロボット周囲の
環境状態は異なり、ロボットの作業手順は異なるが各フ
ランジに個有のワールドモデルを参照して得られる知識
と問題解決部1に一般化した論理式として記憶した作業
手順に環境状態に関する具体条件を加味してそのフラン
ジに適応したロボット制御命令を自動生成することがで
きる。従って、ロボット6は作業環境に応じて自律的に
作業するものとなる。 上記構成のロボット遠隔操作システムの具体的な動作
について、次に説明する。 第2図に示すフローチャートを参照して、オペレータ
がフランジ分解、ボルト排除等のタスク命令又はプリミ
ティブタスク命令を与えると(ステップA1)、問題解決
部1は命令に該当する充足条件式を捜す(ステップA2,A
3)。 ここで命令に該当する充足条件式が見いだされるなら
ば、その充足条件式を(1)式とし、この(1)式の中
で充足されていない項があるかどうか調べる(ステップ
A4〜A6)。そして、条件の充足されていない項があるな
らば、その条件を充足するために必要なプリミティブタ
スク命令を発動し、ステップA3に戻る(ステップA7〜A
8)。 前記ステップA4において命令に該当する充足条件式を
見いだすことができない場合、入力させた命令をプリミ
ティブタスク命令として発動し、その命令で指定された
作業対象物のデータベースを参照し、その命令をロボッ
トに実行させるためのプログラムを生成する(ステップ
A9,A10)。 そして、この生成されたプログラムを問題解決部1か
らロボットコントローラ5にダウンロードし、ロボット
6に必要な作業を行なわせ、ロボットコントローラ5は
作業の終了を状態監視部3に報告する(ステップA11,A1
2)。 状態監視部3は関係する作業対象物のデータベースを
現在の対象物の状態データに書換え、N=Oであるばエ
ンドとしN=Oでない場合にはステップA6に戻る(ステ
ップA13,A14)。 前記ステップA7において、(N)式の中で充足されて
いない条件が見いだされない場合には、この(N)式を
充足条件とするタスク命令をプリミティブタスク命令と
して発動し、その命令で指定された作業対象物のデータ
ベースを参照して、ロボットにその命令を実行させるた
めのプログラムを生成する(ステップA15,A16)。そし
て、この生成されたプログラムをロボットコントローラ
5にダウンロードし、ロボット6に作業を行なわせる
(ステップA17)。 ロボットコントローラ5は、ロボットの作業が終了し
たならばその終了信号を状態監視部3に報告し、状態監
視部は関係する作業対象物のデータベースを現在の状態
データに書換える(ステップA18,A19)。 この作業の後、前段階の作業命令に戻るため、N−1
をNとし、N=Oであるならば作業完了とし、NがOで
ない場合にはステップA6に戻る(ステップA20,A21)。 この一連の動作について、フランジ分解作業を例にと
り、第3図に示すような具体的なフローチャート及び表
1を参照して説明する。 まず始めに、フランジの近傍にロボット6を移動機構
を用いて設定する、なお、この移動作業は、オペレータ
が目で見ながら操作することもでき、あるいは作業対象
物の座標値を入力することによりロボット側が自動的に
走行するように構成することもできる。 続いてオペレータは、フランジ上に予め設定されてい
る基準点に対し距離計4のステージ(図示せず)の姿勢
を調整し、光ビームを当ててその光スポットの映像を2
台のTVカメラで得、この映像信号と前記ステージのデー
タから三角測量の原理を用いてTVカメラからフランジの
基準点までの距離を計測する。ここで、フランジ上には
3つの基準点が予め設定されており、それらの各基準点
の距離を計測することにより、距離計4に対するフラン
ジの座標値(位置と向き)が計算により決定され、さら
に距離計4をロボット6の所定の位置に搭載しておくな
らば、その両者の位置関係からフランジ座標系をロボッ
ト座標系に変換することができる(ステップS1〜S6)。 なおここで、フランジとロボット6とが常に一定の位
置関係になくとも、所望の作業をロボット6に自律的に
行なわせるためにはフランジとロボットとの相対位置関
係を知ることが不可欠であり、距離計4の働きは極めて
重要なものとなる。この場合、座標系の変換のために必
要な座標変換マトリックスの各要素の計算機能は、距離
計4にマイクロコンピュータを組込んでおいて行なうこ
とができ、また問題解決部1を構成する計算機によって
行なうこともできる。 問題解決部1には、フランジの分解に関して、例えば
表1に示すような条件式とその条件式を満たすために必
要な命令とが用意されている。この表1において、
(1)〜(3)は条件式であり、(1−1),(1−
2)…(3−1),(3−2)は各条件式の右辺の各項
を満たすために発動される命令である。 そこでいま、ステップS7おいてオペレータがロボット
システムに対しフランジを分解せよとの作業命令を与え
たとすると、問題解決部1は[分解(フランジ)]の充
足条件式(1)を参照する(ステップS8,S9)。 そして条件式(1)が見いだされるならば、続いて条
件式(1)の右辺が満されているかどうかを、ワールド
モデルデータベース2におけるボルトとロボットのデー
タベースを参照して判断する(ステップS10)。 ここで今、ボルトがフランジにあるならば、右辺第1
項の条件は充足されておらず(ステップS11)、ボルト
排除命令(1−1)が発動され、この命令(1−1)の
充足条件(2)式を参照する(ステップS12)。 そして充足条件式(2)が見いだされるならば、続い
て(2)式の右辺が充足されるか否かを再びワールドモ
デルデータベース2を参照して判断する(ステップS13,
S14)。ここで右辺第1項が充足されていなければ、ボ
ルトを緩める命令(2−1)が活動され、続いて充足条
件式(3)を吟味することになる(ステップS15〜S1
7)。条件式(3)の[緩める(ボルト])]が見いだ
されるならば、この条件式(3)の右辺第1項が充足さ
れているかどうか判断し、充足されていなければレンチ
を持つ命令(3−1)を発動して更に充足条件式[持つ
(レンチ)]の(4)式を吟味することになる(ステッ
プS18〜S22)。 そしてこの充足条件式(4)が充足されていなけれ
ば、ロボット6は何らかの物を持っているため、その手
中の物を収納する命令(1−2)が発動される(ステッ
プS23,S24)。 そしてこの動作命令(1−2)に対応する充足条件式
を捜すとしても、この実施例の場合には、問題解決部1
に手中の物の収納命令式は記憶されておらず、ステップ
S25からステップS27に移行する、問題解決部1は、命令
(1−2)に対して引数となっている[手中のもの]の
データベース2を参照し、ここに記憶されている「手中
のもの」の収納場所の座標、収納するときにロボット6
の手先が経由すべき座標値とその時の手先の動作手順を
読み出して参照し、[収納(手中の物)]の命令を行な
うに必要な一切のロボット制御プログラムを生成する
(ステップS27)。 そして生成されたプログラムを逐次ロボットコントロ
ーラ5にダウンロードし、ロボットに必要な作業を行な
わせる(ステップS28)。 この一連のプログラムに従った動作が終了した時に
は、状態監視部3に動作終了信号が与えられ(ステップ
S29)、状態監視部3はこの動作終了報告を受けて実際
のセンサ信号をチェックし、エラーがなければワールド
モデルデータベース2にロボット6の手中は空になり、
手中の物が何処に移ったかを書込む(ステップS30)。 この一連の作業により充足条件式(4)が充足される
ことにより(ステップS31〜S33)、動作命令(3−1)
の[持つ(レンチ)]を発動することになり、ワールド
モデルデータベース2のレンチのデータベースを参照し
てレンチの収納場所の座標や掴み動作の手順を読出し、
レンチを持つのに必要な一切のロボット制御プログラム
を生成し、これらのプログラムを逐次ロボットコントロ
ーラ5にダウンロードしてロボット6にレンチを持つ作
業を行なわせる(ステップS34,S35)。 そして一連のレンチを持つ作業が完了すると、ロボッ
トコントローラ5は作業の終了を状態監視部3に報告
し、状態監視部3はロボット6とレンチのデータベース
を呼び出し、レンチのあり場所に関しデータを書換える
(ステップS36,S37)。 こうしてロボットがレンチを持つ一連の作業が完了す
ると充足条件式(3)の右辺第1項は充足されることに
なるが、右辺第2項についてはいまだ充足されておら
ず、引き続きこの条件式(3)の右辺第2項の充足状態
が吟味される(ステップS38〜S40)。 実施例の場合、充足条件式(3)における右辺第2項
はいまだ充足されていないため、[セット(レンチ,ボ
ルト)]の動作命令(3−2)が発動され、この(3−
2)の充足条件式が記憶されているかどうか参照し、こ
のケースの場合には充足条件式は登録されていないた
め、ワールドモデルデータベース2のボルトのデータベ
ースを参照し、ボルトの頭にレンチをセットするに必要
な全ての動作命令を自動生成する(ステップS41〜S4
3)。 この場合、ボルトの頭の位置、向き、ボルトの頭にレ
ンチを持っていく際の周囲の障害物との衝突をさけるた
めに経由しなければならないレンチの空間位置、向き等
はボルト座標糸又はフランジ座標系で記憶されているた
め、これをロボット基準座標系に変換してロボット動作
命令を作成しなければならない。そこで距離計4により
距離計測を行ない、所定の演算によって求めた座標変換
マトリックスを用い、上記の座標変換を実行することに
なる、そしてこのプログラムの実行の後、ロボットコン
トローラ5は状態監視部3に対し作業の終了を報告し、
状態監視部3はその時のロボットとレンチのデータベー
スを呼び出し、レンチとロボットの手先の有り場所等の
新たなデータをデータベース2に書込むことになる(ス
テップS44〜S46)。 こうしてレンチがボルトの頭にセットされると、充足
条件式[緩める(ボルト)]の式(3)が充足されるこ
とになるため、この充足条件式(3)を呼び出した一つ
前の段階の動作命令(2−1)が発動され、ワールドモ
デルデータベース2のボルトのデータベースを参照して
ボルトを緩めるに必要なロボット動作命令を生成して実
行し、この作業の実行の後ボルトのデータベースにボル
トが緩んだ状態にあることを新たに書込む(ステップS4
7〜S53)。 こうして、ボルトを緩める作業が完了した後には、状
態監視部3は一段階前の充足条件式(2)の[排除(ボ
ルト])の右辺第1項が完全に充足されているかどうか
を問題解決部1に指令する(ステップS54)。 そしてこの場合には、条件式(2)の右辺第1項は充
足されたことになるが、ロボット6の手先にはレンチが
まだ持たれたままになっているため右辺第2項は充足さ
れていないとになり、[収納(手中の物)]の動作命令
(1−2)が発動され、手中の物はレンチであるためレ
ンチのデータベースを参照し、レンチを収納する動作に
必要な一切のロボットの動作命令プログラムを生成し、
このプログラムに基づいてプログラムコントローラ5は
ロボット6にレンチ収納作業を実行させる(ステップS5
5〜S60)。 このレンチ収納動作が完了したならば、新たにレンチ
の収納場所その他のデータがデータベース2に新たに書
込まれ、また、ロボットのハンドは空手であるデータが
ロボットのデータベース2に書込まれることになる(ス
テップS61,S62)。 こうして充足条件式(2)は充足されることになり、
続いて動作命令(1−1)の排除(ボルト)]を実行す
ることになる(ステップS63〜S66)。 この(1−1)のボルト排除命令により、ボルトをロ
ボットハンドによって外すために、ボルトのデータベー
スの[排除(ボルト)]の動作手順とプラグラム実行に
必要なデータを参照し、必要な同時変換を行なってプロ
グラムを自動生成し、このプログラムに従ってロボット
6にボルト排除動作を実行させる(ステップS66,S6
7)。 ボルト排除作業が完了するならば、ロボットコントロ
ーラ5は状態監視部3に対し動作完了を報告し、状態監
視部3はボルトが外れてロボットハンドの手中にあるこ
とをロボットとボルトのデータベースに書込む(ステッ
プS68,S69)。 こうしてボルト排除動作が完了すると、タスク命令で
ある充足条件式(1)の右辺第1項は充足されることに
なるが、ロボットハンドには排除されたボルトが残され
ているために右辺第2項は充足されないことになり、動
作命令(1−2)の[収納(手中の物)]が実行され、
ボルトを所定の位置に収納してオペレータのタスク命令
である「フランジを分解せよが完了することになる(ス
テップS70〜S81)。 こうして充足条件式(1)が完全に充足された後、
[分解(フランジ)]を発動し、ワールドモデルデータ
ベース2におけるフランジデータベースを参照し、必要
データに同時変換を施すと共に、フランジ分解手順を参
照してフランジ分解プログラムを生成し、そのプログラ
ムに沿ってロボットにフランジ分解作業を行なわせ、そ
の作業終了後フランジデータベースに現在のフランジの
状態を書込む(ステップS82〜S85)。 このようにして、プラントのフランジ分解作業を、必
要な動作プログラムを自動生成しながら実行することが
できるのである。 なおこの発明は上記の実施例に限定されるものではな
く、プラントの各種作業をロボットにより行なわせる場
合に広く適用することができる。また、上記実施例に加
え、第4図に示すようにロボットコントローラ5に対し
てマスタアーム7を付加し、ロボット6をマスタ・スレ
ーブシステムとすることができ、作業対象物が破壊され
ていて事前にワールドモデルデータベースに記述した知
識が役立たないような場合にマスタスレーブ操作により
作業を行なうことができるようになる。 [発明の効果] 以上のようにこの発明によれば、オペレータが命令を
与えるだけでロボットが自律的に作業を行なうことがで
き、作業現場でロボットに教示したり、沢山の制御命令
を入力したりする手間が少くてすみ、その分間違いの発
生も少なくすることができ、更に実作業中にもオペレー
タは作業の進捗状況を監視するだけですむため、必要な
労力が低減され、作業効率が向上する。
【図面の簡単な説明】
第1図はこの発明の一実施例のブロック図、第2図は上
記実施例の一般的な動作を説明するフローチャート、第
3図は上記の実施例のフランジ分解作業の動作を説明す
るフローチャート、第4図はこの発明の他の実施例のブ
ロック図である。 1……問題解決部 2……ワールドモデルデータベース(知識データベー
ス) 3……状態監視部 5……ロボットコントローラ 6……ロボット
記実施例の一般的な動作を説明するフローチャート、第
3図は上記の実施例のフランジ分解作業の動作を説明す
るフローチャート、第4図はこの発明の他の実施例のブ
ロック図である。 1……問題解決部 2……ワールドモデルデータベース(知識データベー
ス) 3……状態監視部 5……ロボットコントローラ 6……ロボット
─────────────────────────────────────────────────────
フロントページの続き
(58)調査した分野(Int.Cl.6,DB名)
G05B 19/4155
B25J 3/00
B25J 9/16
G06F 9/44
Claims (1)
- (57)【特許請求の範囲】 1.作業対象物に対して作業するロボットと、 このロボットに対するタスク命令及びプリミティブタス
ク命令を実行するにあたり必要な一般化した充足条件式
及びその式の各項を実現するために必要な命令を記憶す
る問題解決部と、 前記タスク命令をプリミティブタスク命令に分解すると
きに使う環境状態に関する知識、プリミティブタスク命
令の内容手順をロボット制御命令で記述した動作手順に
関する知識、前記ロボット制御命令の引数として使う知
識を階層構造となるように記憶する知識データベース
と、 ロボットの環境状態を監視し、それが変化する度に前記
知識データベースの記憶内容を更新変更する状態監視部
と、 前記ロボットを前記問題解決部の記憶したタスク命令及
びプリミティブタスク命令に従い制御するロボットコン
トローラとを備え、 前記問題解決部は、与えられた命令の実行に必要となる
前記充足条件式を探してこの充足条件式を満たすために
前記プリミティブタスク命令を発動する動作を繰り返し
行い、前記プリミティブタスク命令を前記知識データベ
ースを参照しながらロボット制御命令に変換して前記ロ
ボットコントローラに出力することを特徴とするロボッ
ト遠隔操作システム。 2.前記ロボットコントローラにマスタアームを接続
し、マスタ・スレーブコントロール機能を付加したこと
を特徴とする請求項1に記載のロボット遠隔操作システ
ム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62213128A JP2825226B2 (ja) | 1987-08-28 | 1987-08-28 | ロボット遠隔操作システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62213128A JP2825226B2 (ja) | 1987-08-28 | 1987-08-28 | ロボット遠隔操作システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6458484A JPS6458484A (en) | 1989-03-06 |
JP2825226B2 true JP2825226B2 (ja) | 1998-11-18 |
Family
ID=16634041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62213128A Expired - Lifetime JP2825226B2 (ja) | 1987-08-28 | 1987-08-28 | ロボット遠隔操作システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2825226B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02234531A (ja) * | 1989-03-08 | 1990-09-17 | Omron Tateisi Electron Co | 通信パラメータの自動検出方法 |
JPH04354680A (ja) * | 1991-05-30 | 1992-12-09 | Agency Of Ind Science & Technol | 同構造型マスタスレーブアームロボット |
JP5895347B2 (ja) * | 2011-03-01 | 2016-03-30 | セイコーエプソン株式会社 | ロボット制御装置、ロボット制御方法、およびプログラム |
JP6052576B2 (ja) * | 2012-05-30 | 2016-12-27 | 日本電気株式会社 | 情報処理システム、情報処理方法、情報処理装置、携帯端末およびその制御方法と制御プログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07104695B2 (ja) * | 1984-01-18 | 1995-11-13 | 富士通株式会社 | ロボツト制御装置 |
JPS60218112A (ja) * | 1984-04-13 | 1985-10-31 | Mitsubishi Electric Corp | ロボツト制御方式 |
-
1987
- 1987-08-28 JP JP62213128A patent/JP2825226B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS6458484A (en) | 1989-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6580602B2 (ja) | ロボットをプログラムする方法およびシステム | |
US4833624A (en) | Functioning-distributed robot control system | |
JPH02202606A (ja) | 工業用ロボットの制御方法及び装置 | |
DE112018000765T5 (de) | Robotersystem und verfahren zum steuern desselben | |
JPH085018B2 (ja) | 遠隔マニピユレ−シヨン方法及び装置 | |
JPS62108313A (ja) | ロボットのプログラミング方法 | |
JP7022260B1 (ja) | 数値制御システム | |
JP2825226B2 (ja) | ロボット遠隔操作システム | |
JP7407784B2 (ja) | 生産システムの情報収集装置、情報収集方法及びプログラム | |
WO2020234946A1 (ja) | ロボットシステム、復帰プログラム生成装置、制御支援装置、制御装置、プログラム、復帰プログラムの生成方法及び復帰プログラムの出力方法 | |
JP7347169B2 (ja) | 情報提示装置、情報提示方法、及び情報提示プログラム | |
JPH033786A (ja) | マニピュレータ制御方式 | |
JPH0667709A (ja) | シーケンスプログラム作成方法及び装置並びにシーケンス制御装置 | |
WO2023171722A1 (ja) | プログラム生成装置、及びプログラム生成方法 | |
JP3668821B2 (ja) | ロボットコントローラおよびロボット制御方法 | |
Zielinski et al. | Mrroc++ based system description | |
JP7295344B1 (ja) | ロボットシステム及びロボット制御装置 | |
JP7322099B2 (ja) | 情報処理方法、情報処理装置、ロボット装置、プログラム、およびコンピュータ読み取り可能な記録媒体 | |
Turen | Commissioning and programming of a bulk bag robot: Sunrob Robotics Oy | |
JP7492006B2 (ja) | 数値制御システム | |
KR940003090B1 (ko) | 산업용 로보트의 오프-라인 교시방법 | |
JPH0991022A (ja) | ロボット制御装置 | |
JPH08202427A (ja) | 教示プログラム自動生成装置 | |
Wheeler | Application of object-oriented techniques to the design and operation of factories | |
Morales et al. | A generalised software control system for industrial robots |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |