JPH07122823B2 - Teaching and control method for robot / automatic machine with hand vision - Google Patents

Teaching and control method for robot / automatic machine with hand vision

Info

Publication number
JPH07122823B2
JPH07122823B2 JP15694888A JP15694888A JPH07122823B2 JP H07122823 B2 JPH07122823 B2 JP H07122823B2 JP 15694888 A JP15694888 A JP 15694888A JP 15694888 A JP15694888 A JP 15694888A JP H07122823 B2 JPH07122823 B2 JP H07122823B2
Authority
JP
Japan
Prior art keywords
robot
work
automatic machine
teaching
visual
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
Application number
JP15694888A
Other languages
Japanese (ja)
Other versions
JPH027108A (en
Inventor
晃 宮川
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP15694888A priority Critical patent/JPH07122823B2/en
Publication of JPH027108A publication Critical patent/JPH027108A/en
Publication of JPH07122823B2 publication Critical patent/JPH07122823B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はロボットあるいは自動機械の制御方法に係り、
特に手先視覚の撮像・認識処理を動作中に行なって得ら
れる認識データに基づいて動作経路を補正する制御方法
の精度を上げるに好適な手先視覚付きロボット・自動機
械の教示および制御方法に関する。
The present invention relates to a control method for a robot or an automatic machine,
In particular, the present invention relates to a teaching and controlling method of a robot / automatic machine with a fingertip vision, which is suitable for increasing the accuracy of a control method for correcting an operation path based on recognition data obtained by performing an image pickup / recognition process of a fingertip vision during operation.

[従来の技術] 従来の手先視覚により作業対象物を認識して得られた認
識データに基づいて作業対象物の位置・姿勢を求めてロ
ボット・自動機械を作業対象物へ位置決めする方法は以
下に説明する方法がある。なおこの種の視覚付きロボッ
トおよびロボット教示方法については例えば特開昭60-2
49583号公報および特開昭60-262215号公報に記載されて
いる。
[Prior Art] A conventional method for locating a robot / automatic machine on a work object by obtaining the position / orientation of the work object based on the recognition data obtained by recognizing the work object by hand vision is as follows. There is a way to explain. Note that this kind of visual robot and robot teaching method are described in, for example, JP-A-60-2.
It is described in JP-A-49583 and JP-A-60-262215.

第5図は従来の手先視覚付きロボットの位置決め方法の
第1例を示す説明図である。第5図において、手先にTV
カメラ(視覚)1を付けたロボット2の例を示す。TVカ
メラ1の視野内に作業対象物4を入れるようにロボット
2の手先を位置決めすると、TVカメラ1の視野(視覚の
画像)に固定の視覚座標系XV-OV-YVは第5図に示す位置
になる。ここでロボット2の持つ固有の直交座標系(ロ
ボット座標系)XR-OR-YRにおいて、視覚座標系の原点位
置OVはベクトルで表わされる。さらに視覚座標系で
の作業対象物4の位置を表わすベクトルが視覚の認
識処理によって求まる、このベクトルは各座標軸成
2X,2Yに分けられる。これらの視覚座標軸成分
2X,2Yをロボット座標軸成分に変換する手段によって
2X2XX2XY成分に変換され、2Y2YX
2YY成分に変換される。この2XX2YX成分を合成し
2RXが求まり、2XY2YY成分を合成して2RY
求まる。このベクトル2RX,2RYはベクトルのロ
ボット座標軸成分を表わす。従って作業対象物4のロボ
ット座標系での位置はベクトル2RX2RYが得
られれば求まり、これによりロボット2のハンドを作業
対象物4の位置に位置決めすることができる。なお第5
図の座標系は2次元平面上での関係を代表して示してあ
る。
FIG. 5 is an explanatory view showing a first example of a conventional positioning method for a robot with a visual sense of a hand. In Fig. 5, the TV is at your fingertips.
An example of a robot 2 with a camera (visual) 1 is shown. When positioning the hand of the robot 2 as in the field of view of the TV camera 1 add operation target 4, the vision coordinate system X V -O V -Y V fixing the field of view of the TV camera 1 (visual images) 5th It will be in the position shown in the figure. Wherein a unique orthogonal coordinate system having the robot 2 (robot coordinate system) X R -O R -Y R, the origin position O V vision coordinate system is represented by a vector 1. Further, a vector 2 representing the position of the work target 4 in the visual coordinate system is obtained by visual recognition processing. The vector 2 is divided into coordinate axis components 2X and 2Y . These visual coordinate axis components
By means of converting 2X , 2Y into robot coordinate axis components
2X is converted to 2XX and 2XY components, 2Y is converted to 2YX
Converted to 2YY components. The 2XX and 2YX components are combined to obtain 2RX , and the 2XY and 2YY components are combined to obtain 2RY . These vectors 2RX and 2RY represent the robot coordinate axis components of vector 2 . Thus the position in the robot coordinate system of the work object 4 is Motomari as long obtained vector 1 and 2RX and 2Ry, thereby positioning the robot 2 hand to the position of the workpiece 4. The fifth
The coordinate system in the figure shows the relationship on a two-dimensional plane as a representative.

しかし上記のようにロボット2の動作領域全域にわたっ
て1つの固定座標系を定めて、その座標値に従ってロボ
ット2のハンドを位置決めする方法を採ると、位置決め
精度をよくすることが難しい。これはロボット2は機構
誤差が存在し、かつ個々のロボットにおいて誤差が異な
るためであって、理論上の計算位置にロボット2のハン
ドの実際位置を許容誤差内で一致させるには個別のロボ
ットごとに極めて綿密な較正処理が必要となる。従って
製品化されているロボットには次の位置決め方法が採ら
れている。
However, if one fixed coordinate system is set over the entire operation area of the robot 2 and the hand of the robot 2 is positioned according to the coordinate values as described above, it is difficult to improve the positioning accuracy. This is because the robot 2 has a mechanical error, and the error differs between individual robots. To match the actual position of the hand of the robot 2 with the theoretical calculated position within the allowable error, Requires a very detailed calibration process. Therefore, the following positioning method is adopted for the commercialized robot.

第6図は従来の手先視覚付きロボットの位置決め方法の
第2例を示す説明図である。第6図において、通常の電
子機器などの組立作業を対象とする視覚の視野の大きさ
は高々100mm角程度の範囲であって、ロボットを動かし
て複数の視野を設定すればさらに広い範囲を認識できる
が、実用上は1回の視野内に入る程度の位置ずれ誤差を
持って供給される作業対象物の位置・姿勢を視野で認識
することを想定する。従来の使用例はこの範囲であっ
て、この部分領域内で基準となる作業点を前もって定め
る。すなわち第6図の基準となる作業対象物3をロボッ
トのハンドで把持するか組付けるかまたは他の作業を行
なうかのいずれかの基準の作業位置PW1としてロボット
の教示を行ない記憶する。次にこの作業対象物3をその
ままの状態でTVカメラで認識を行なう。この時の視野
(視覚座標系XV1-OV1-YV1)の位置(原点位置OV1)はロ
ボット座標系XR-OR-YRのベクトルで表わされ、また
視野の傾きはθである。またこの視野内での基準の作
業対象物3の位置ベクトルが求められ、これらのベ
クトル3,は記憶される。次に通常の作業時に供給
された現在の作業対象物4を認識するために設定した視
野(視覚座標系XV2-OV2-YV2)の位置(原点位置OV2)は
ベクトルで表わされ、また視野の傾きθである。
さらにこの視野内での現在の作業対象物4の位置ベクト
が認識処理により求められる。
FIG. 6 is an explanatory view showing a second example of a conventional positioning method for a robot with a visual sense of hands. In Fig. 6, the size of the visual field of view for the assembly work of ordinary electronic devices is at most about 100 mm square, and a wider range can be recognized by moving the robot and setting multiple fields of view. Although it is possible, in practice, it is assumed that the position / orientation of the supplied work object is recognized in the visual field with a positional deviation error that is within one visual field. The conventional use example is in this range, and the reference work point is determined in advance in this partial area. That is, the robot is taught and stored as the reference work position P W1 of either gripping or assembling the reference work object 3 in FIG. 6 with the robot hand, or performing another work. Next, the work object 3 is recognized as it is by the TV camera. The position (origin position O V1 ) of the visual field (visual coordinate system X V1 -O V1 -Y V1 ) at this time is represented by vector 3 of the robot coordinate system X R -O R -Y R , and the inclination of the visual field is θ 1 . Further, the position vector 4 of the reference work object 3 within this field of view is obtained, and these vectors 3 and 4 are stored. Next, the position (origin position O V2 ) of the field of view (visual coordinate system X V2- O V2- Y V2 ) set for recognizing the current work object 4 supplied during normal work is represented by vector 5. And the tilt of the field of view is θ 2 .
Further, the current position vector 6 of the work object 4 in this field of view is obtained by the recognition processing.

しかし上記位置ベクトル3,はロボット座標系XR-O
R-YRで表わされたベクトルであって、ロボットの場合で
あれば各腕の長さおよび各関節の変位量をもとに幾何演
算により算出される理論上の位置を表わす。これに対し
て第5図で説明したようにロボットあるいは自動機械に
は必ず機構誤差(例えば腕の長さ誤差とか軸の偏心な
ど)が存在するために、実際の位置は位置ずれ誤差を持
つ。一般にこの機構誤差による位置ずれ誤差は距離に比
例して大きくなり、そのような誤差関数で誤差が分布す
るため、位置ベクトル3,の絶対値が大きいほど誤
差の程度は大きくなる。そこでベクトル3,の差ベ
クトルを求める。ただし両方の視野の位置は
十分に近い位置とする。するとその差ベクトルの絶
対値は小さく、したがって相対位置ずれの誤差も小さく
なる。一方の位置ベクトル4,はそれぞれの視覚座
標系で表わされているが、これを座標変換する手段によ
ってロボット座標系で表わしたベクトルに変換できる。
この変換手段(変換係数)を求める方法は従来公知であ
る。上記により求めたベクトル7,4,を合成して
ベクトル=−を求めると、このベ
クトルは基準の作業点PW1から実際の作業対象物4
に作業を加える作業位置PW2までの相対変位量(第6図
では2次元変位を示している)を表わす。この相対変位
量を求めれば、ロボットのハンドを実際の作業対象物4
に位置決めする時に、すでに記憶してある基準の作業点
PW1より相対変位した位置を目標点PW2として移動可能と
なる。
However, the position vectors 3 and 5 above are the robot coordinate system X R -O
In the case of a robot, it is a vector represented by R −Y R and represents a theoretical position calculated by a geometric operation based on the length of each arm and the displacement amount of each joint. On the other hand, as described with reference to FIG. 5, the robot or the automatic machine always has a mechanical error (for example, arm length error or axis eccentricity), so that the actual position has a position error. Generally, the positional deviation error due to this mechanical error increases in proportion to the distance, and the error is distributed by such an error function. Therefore, the larger the absolute value of the position vectors 3 and 5 , the larger the degree of error. Accordingly vector 3, 5 of the difference vector 5 - Request 3. However, the positions of both fields of view should be sufficiently close. Then, the absolute value of the difference vector 7 is small, and therefore the error of the relative positional deviation is also small. One of the position vectors 4 and 6 is represented by the respective visual coordinate system, but it can be transformed into a vector represented by the robot coordinate system by means of coordinate transformation.
A method for obtaining this conversion means (conversion coefficient) is conventionally known. Vector by combining the vectors 7, 4, 6 obtained by the 8 = - 4 + 7 + 6 When seeking, the vector 8 actual work object from the work point P W1 criterion 4
Represents a relative displacement amount (a two-dimensional displacement is shown in FIG. 6) up to a work position P W2 at which the work is applied to. If this relative displacement amount is obtained, the robot hand is used as the actual work object 4
Reference point that is already stored when positioning
It is possible to move the position relative to P W1 relative to the target point P W2 .

[発明が解決しようとする課題] 上記従来技術は第2例で説明した基準となる作業点PW1
をロボット座標系側と視覚座標系側の座標値でそれぞれ
記憶しておき、その後に実際の作業対象物4を認識して
その位置・姿勢のデータが得られたら相対変位量を演算
して目標点PW2へロボットの動作を制御する。しかし上
記の基準の位置PW1および実際の作業対象物4をTVカメ
ラで撮像する位置は教示によって指定した定点または状
況に修正した撮像目標停止点に限られていた。したがっ
てこの撮像をするために一旦停止することはロボットの
一連の作業動作の時間を遅くする問題があった。このよ
うなロス時間の短縮を計る方法として動作中に作業対象
物を撮像する方法が考えられる。
[Problems to be Solved by the Invention] In the above-mentioned conventional technique, the reference work point P W1 explained in the second example.
Are stored with the coordinate values of the robot coordinate system side and the visual coordinate system side respectively, and after that, when the actual work object 4 is recognized and the data of its position / orientation is obtained, the relative displacement amount is calculated and the target is calculated. Control the robot motion to point P W2 . However, the reference position P W1 and the position at which the actual work object 4 is imaged by the TV camera are limited to the fixed point designated by the teaching or the imaging target stop point corrected to the situation. Therefore, there is a problem in that the temporary stop for taking the image delays the time of a series of work operations of the robot. As a method of reducing such loss time, a method of capturing an image of a work object during operation can be considered.

第4図は上記の手先視覚付きロボットの動作中に撮像・
認識して位置決めする処理方法の概要説明図である。第
4図において、TVカメラ1はロボット2の手首にオフセ
ットを持って付いているため、動作の制御を工夫すれば
(例えばTVカメラ1を動作方向前方(破線矢印方向)に
旋回する)、ロボット2のハンドより先行して基準とな
る作業対象物3の上方に到達できる。したがってこの瞬
間に撮像して認識を行なった視覚座標系XV-OV-YVのデー
タをもとに、動作中のロボット2の基準作業点PW1へ向
かう動作経路(破線で示す)R1に補正を加えて、認識し
た実際の作業対象物4の作業位置PW2へ位置決めする動
作経路R2へロボット2を制御する。すなわちロボット2
の動作中に撮像した瞬間のTVカメラ1の位置をロボット
制御装置内で演算することができるならば、実際の認識
対象物4へロボット2を位置決めする制御量を演算する
方法は従来方法と同様にして実現できる。
Fig. 4 shows images taken during the operation of the above-mentioned robot with hand vision.
It is a schematic explanatory drawing of the processing method of recognizing and positioning. In FIG. 4, since the TV camera 1 is attached to the wrist of the robot 2 with an offset, if the control of the operation is devised (for example, the TV camera 1 is swung forward in the operation direction (the direction of the broken arrow)), the robot It can reach above the reference work object 3 ahead of the second hand. Thus based on the data of visual coordinate system X V -O V -Y V was subjected to recognition by capturing this moment, the operation path toward the reference working point P W1 of the robot 2 in operation (indicated by a broken line) R The correction is added to 1 to control the robot 2 to the movement path R 2 for positioning the recognized actual work object 4 to the work position P W2 . That is, the robot 2
If it is possible to calculate the position of the TV camera 1 at the moment when the image is picked up during the operation of, the method for calculating the control amount for positioning the robot 2 on the actual recognition target 4 is the same as the conventional method. Can be realized.

しかしロボット2の手先の位置すなわちTVカメラ1の位
置を演算する場合に、ロボット2が停止した状態にある
かまたは動作中の状態にあるかによって演算結果にわず
かの誤差が生ずる。すなわち上記の位置の演算とはロボ
ットの各関節の角変位および各腕の寸法をもとにして幾
何演算により求めるもので、この場合に各関節の角変位
が同じ値の状態にあっても、停止している状態と比べて
動作中の状態では機構各部がわずかずつたわんだことに
よるか、軸受やハーモニックドライブや歯車などの間隙
が変化したことなどが原因となって、ロボット2の手先
の位置(TVカメラ1の位置)に誤差が生ずると推測され
る。そのため、もし基準の作業位置PW1を認識する時に
ロボット2を停止して認識をする教示を行ない、この停
止中の認識データを基準にして動作中に実際の作業対象
物4を認識したデータとの相対変位量を求めると、上記
した誤差が演算結果に含まれる問題がある。
However, when calculating the position of the hand of the robot 2, that is, the position of the TV camera 1, a slight error occurs in the calculation result depending on whether the robot 2 is in the stopped state or in the operating state. That is, the above-mentioned calculation of the position is a geometrical calculation based on the angular displacement of each joint and the size of each arm of the robot. In this case, even if the angular displacement of each joint has the same value, The position of the hand of the robot 2 may be due to slight bending of each part of the mechanism in the operating state compared to the stopped state, or due to changes in the clearances of the bearing, harmonic drive, gears, etc. It is estimated that an error will occur in (the position of the TV camera 1). Therefore, if the reference work position P W1 is recognized, the robot 2 is taught to be stopped and recognized, and the actual work target 4 is recognized during operation based on the recognition data during the stop. When the relative displacement amount of is calculated, there is a problem that the above-mentioned error is included in the calculation result.

本発明の目的は手先視覚の撮像・認識処理を動作中に行
なったデータに基づいて作業対象物に位置決めする処理
において発生する動作に起因した誤差成分を低減させて
精度よくハンドまたはツールを位置決めできる手先視覚
付きロボット・自動機械の教示および制御方法を提供す
るにある。
An object of the present invention is to accurately position a hand or tool by reducing an error component caused by a motion generated in a process of positioning a work target based on data obtained by performing a hand vision imaging / recognition process during the motion. (EN) Provided is a teaching and controlling method for a robot / automatic machine with a hand vision.

[課題を解決するための手段] 上記目的は、ロボット・自動機械に同じ指令値を与えて
動作をくり返すとその動作経路上の位置の再現性がよ
く、この条件を前提とするならば基準の作業対象(位
置)を認識する教示処理においても同条件の動作を行な
って撮像・認識をすることにより相対変位に含まれる上
記誤差を相殺できる点に着目し、まずロボットの教示と
して手動操作によって前もってロボットを適当な位置へ
動かしておいて該位置データをメモリに記録(登録)し
ておき、つぎに視覚の教示として基準の作業対象物を撮
像・認識して視野内の位置データをメモリに記録(登
録)すると同時に視野の位置(TVカメラの位置)も記録
し、これらの教示によって算出・登録(記録)したデー
タに従ってロボットによる作業を行なうべく、より詳し
くは上記教示処理の前処理として不可欠な作業シーケン
スをロボット言語プログラムで登録する処理をしてか
ら、上記ロボットの教示処理では動作経路上の主要な位
置を登録する処理、および基準の作業対象に対してロボ
ットのハンド(ツール)を位置合わせして基準の作業位
置PW1を登録する処理、およびロボットを手動操作して
基準の作業対象物が視野に入りかつ動作経路を予測した
位置から大きくはずれない位置を選んで撮像位置Pvを登
録する処理を行ない、上記視覚の教示処理では上記登録
したデータをもとにロボットに通常の使用時(プレイバ
ック時)と同じ条件で視覚が撮像を行なう撮像位置Pvを
通過する前後の動作を行なわせる処理、および該ロボッ
ト動作中に撮像位置Pvの通過時に撮像・認識を行ない基
準の作業対象物を認識して基準の作業位置PW1を求める
処理、および該処理で認識した基準の作業位置PW1のデ
ータを登録する処理を行ない、これらの教示処理によっ
て算出・登録(記録)したデータに従ってロボットによ
る実際の作業を行なうようにした手先視覚付きロボット
・自動機械の教示および制御方法により達成される。
[Means for Solving the Problem] The above-mentioned object is to achieve good reproducibility of the position on the operation path when the same command value is given to the robot / automatic machine and the operation is repeated. Focusing on the point that the above error contained in the relative displacement can be canceled by performing the operation under the same condition and performing the imaging / recognition even in the teaching process of recognizing the work target (position), first, as a teaching of the robot, a manual operation is performed. The robot is moved to an appropriate position in advance and the position data is recorded (registered) in the memory. Next, as a visual instruction, the reference work object is imaged and recognized, and the position data in the visual field is stored in the memory. At the same time as recording (registering), the position of the field of view (position of the TV camera) is also recorded, and the robot should work according to the data calculated and registered (recorded) by these teachings. Specifically, after performing a process of registering a work sequence that is indispensable as a pre-process of the teaching process with a robot language program, in the teaching process of the robot, a process of registering a main position on an operation path and a reference work target are performed. On the other hand, the process of registering the reference work position P W1 by aligning the robot's hand (tool), and the reference work object being in the field of view by manually operating the robot, and greatly deviating from the position where the movement path was predicted An image is picked up under the same conditions as in normal use (playback) of the robot based on the registered data in the above-mentioned visual teaching process, by selecting a non-existing position and registering the imaging position Pv. The process of performing a motion before and after passing the position Pv, and performing the image pickup / recognition when the image pickup position Pv is passed during the movement of the robot, the reference work object is set. Identify and process for determining the working position P W1 of the reference, and performs a process of registering data of the reference working position P W1 recognized in the process, by the robot in accordance with data calculated and registered (recorded) by the teachings processing This is achieved by the teaching and control method of the robot / automatic machine with the visual sense of the hand that is designed to perform the actual work.

[作用] 上記手先視覚付きロボット・自動機械の教示および制御
方法では、ロボットの教示処理は従来手法で手動により
ロボットを動作の要点に位置決めして該位置を記憶する
作業を前もって行なうが、手先視覚を付けたロボットの
教示はロボットの動作の要点を記憶するだけでなしに視
覚により基準の位置PW1の認識処理を実行して基準の認
識データを記憶しておく処理が必要となり、この視覚に
よる撮像・認識処理を動作中に実行するために、ロボッ
トの動作の要点の教示およびロボット言語によって動作
のシーケンスをプログラムする処理を先に行ない、この
さい視覚の撮像位置Pvをプログラム上に指定して視覚の
教示処理を宣言する。しかる後に視覚の教示処理はプロ
グラムの実行によって動作を行ない指定した位置Pvで撮
像・認識を行なうが、このさい基準の作業対象物を所定
位置PW1に前もって置いてロボットの動作は撮像位置Pv
の前後の動作を通常の作業時と同様に再現すればよく、
このとき認識したデータは基準の位置データPW1として
登録する。この認識データの扱いは第6図の手先視覚付
きロボットの位置決め方法の第2例で示した方法で行な
うが、この基準の位置データPW1にはロボット動作によ
る誤差成分を含んでいる。そしてその後に上記教示処理
によるデータに従ってロボットによる実際の作業を行な
うと、その作業時に現在の作業対象物を同一条件の動作
中に撮像して認識した位置データにも同傾向の動作によ
る誤差成分を含んでいるから、そこで両データの相対変
位ベクトルを算出すれば動作による誤差成分を相殺し
て、ロボットの位置決め精度を向上できる。
[Operation] In the teaching and control method of the above-mentioned robot / automatic machine with fingertip vision, the robot teaching process manually positions the robot at a point of operation and stores the position in advance by the conventional method. The teaching of the robot with the mark requires not only to memorize the essential points of the robot's operation but also to visually recognize the reference position P W1 and store the reference recognition data. In order to execute the imaging / recognition process during operation, the process of programming the sequence of the operation by teaching the essential points of the robot operation and the robot language is performed first, and the visual imaging position Pv is specified on the program. Declare visual instruction processing. After that, the visual teaching process performs an operation by executing the program and performs image pickup / recognition at the designated position Pv, but when the reference work object is placed at the predetermined position PW1 in advance, the robot operation is performed at the image pickup position Pv.
You can reproduce the operation before and after the same as in normal work,
The data recognized at this time is registered as the reference position data P W1 . The recognition data is handled by the method shown in the second example of the positioning method for the robot with a fingertip vision in FIG. 6, and the reference position data P W1 includes an error component due to the robot motion. Then, when an actual work is performed by the robot according to the data by the teaching process, the error component due to the motion of the same tendency is also included in the position data recognized by imaging the current work target during the motion under the same condition at the time of the work. Therefore, if the relative displacement vector of both data is calculated there, the error component due to the movement can be canceled and the positioning accuracy of the robot can be improved.

[実施例] 以下に本発明の一実施例を第1図ないし第3図および第
4,6図により説明する。
[Embodiment] An embodiment of the present invention will be described below with reference to FIGS.
It will be explained with reference to FIGS.

第1図は本発明による手先視覚付きロボット・自動機械
の教示および制御方法の一実施例を示す手先視覚付きロ
ボットの教示処理手順のフローチャートである。第1図
において、処理101は作業シーケンス命令をロボット言
語プログラムで登録する処理であり、従来の手順と同様
であって、本処理は教示処理とは別の処理であるが、あ
との視覚の教示処理でロボットを動かすことになるた
め、前処理として不可欠な処理であると考えて含めてあ
る。処理102は動作経路上の主要な位置を教示して登録
する従来の教示手法による処理であり、従来から手動に
よってロボットの動作の要点に位置決めして該位置を記
憶する作業を前もって行なうロボットの教示モードであ
って、後にロボットを動作させる場合には教示点間を指
定した補間法により経路で結んで該経路に追従させてロ
ボットを制御する。処理103は基準の作業対象物に対し
てロボットのハンド(ツール)を位置合わせして、基準
の作業位置PW1を登録する処理であり、手先視覚を付け
たロボットの教示にはロボットの動作の要点を記憶する
だけでなく、基準の作業対象物を所定位置PW1に前もっ
て置いて該基準位置PW1を撮像・認識して記憶する処理
が必要となる。処理104はロボットを手動操作して基準
の作業対象物を視野に入るようにし、かつ動作経路を予
測した位置から大きくはずれない位置を選んで撮像位置
Pvとして登録する処理であり、この撮像位置Pvが後にロ
ボットを動かす時の動作経路上の中間点になるようにロ
ボットを制御する。上記の処理102〜104がロボットの教
示処理の手順である。つぎの処理105は視覚の教示のた
めに上記の処理101〜104で登録したデータにもとづいて
ロボットに通常の使用時(プレイバック時)と同じ動作
を行なわせる処理であって、ただしその動作は視覚が撮
像を行なう撮像位置Pvを通過する前後の動作だけでよ
く、しかしあまり部分的に限定すると通常の作業時の動
作と同条件にはならない可能性があるので可能な範囲で
連続した動作を行なうようにする。処理106は上記処理1
05のロボット動作中に撮像位置Pvの通過時に基準の作業
位置PW1を撮像・認識する処理であり、このさい基準の
作業対象物を認識するようにして基準の作業位置PW1
求める。処理107は上記処理106で認識して得た基準の作
業位置PW1のデータを登録する処理であり、これで処理1
05〜107までの視覚の教示処理を終える。
FIG. 1 is a flowchart of a teaching processing procedure of a robot with a fingertip vision showing an embodiment of a teaching and control method for a robot / automatic machine with a fingertip vision according to the present invention. In FIG. 1, a process 101 is a process for registering a work sequence command in a robot language program, which is the same as the conventional procedure, and this process is a process different from the teaching process, but the visual teaching later. Since the robot will be moved by the process, it is included as a pre-process indispensable. A process 102 is a process by a conventional teaching method of teaching and registering a main position on an operation path, and conventionally teaching a robot that manually positions at a main point of the operation of the robot and stores the position in advance. In the mode, when the robot is to be operated later, the robot is controlled by connecting the taught points with a path by an interpolating method and following the path. The process 103 is a process of registering the reference work position P W1 by aligning the robot hand (tool) with respect to the reference work object. in addition to storing the point, the process of storing the reference position P W1 imaging · recognize and to advance at a reference work object in position P W1 is required. Process 104 is to manually operate the robot so that the reference work object is within the field of view, and select a position that does not greatly deviate from the position where the motion path is predicted, and select the imaging position.
This is a process of registering as Pv, and the robot is controlled so that this imaging position Pv becomes an intermediate point on the movement path when the robot is moved later. The above processes 102 to 104 are the procedure of the teaching process of the robot. The next process 105 is a process for causing the robot to perform the same operation as during normal use (at the time of playback) based on the data registered in the above-mentioned processes 101 to 104 for the purpose of visual teaching. Only the movement before and after the vision passes the image pickup position Pv where the image is picked up is necessary, but if it is partially limited too much, it may not be the same condition as the operation during normal work, so continuous operation within the range possible. Try to do it. Process 106 is the above process 1
During 05 of the robot operation is an imaging-process of recognizing working position P W1 of criteria when passing the imaging position Pv, determine the working position P W1 of the reference so as to recognize the work object of this again reference. The process 107 is a process of registering the data of the reference work position P W1 obtained by the recognition in the process 106.
The visual teaching process from 05 to 107 is completed.

上記の処理101〜107までの教示処理はロボットを使用す
るさいの基準作業とみなせるものであり、この教示処理
によって算出・登録(記録)したデータに従ってロボッ
トによる作業を行なう。このとき視覚の教示のさいロボ
ットの撮像位置前後の動作を作業時と同様に再現して得
た基準の位置データにはロボット動作による誤差成分を
含んでおり、そしてまた作業時に作業対象物を同一条件
の動作中に撮像して認識した位置データにも同傾向の動
作による誤差成分を含んでいるため、第6図に示した方
法で両データの相対変位ベクトルを算出すれば、動作に
よる誤差成分を相殺してロボットの位置決め精度を向上
できる。なお上記に処理手順の各項目の内容を説明した
が、上記の処理101〜104の項目の順序は必ずしも図示の
通りでなくてもよく入れ換え可能であり、また再処理も
可能である。つぎの処理105〜107の項目は後に必ず続け
られる。本方法は一般の自動機械にも同様に適用可能で
ある。
The teaching processing of the above processing 101 to 107 can be regarded as a reference work when the robot is used, and the work by the robot is performed according to the data calculated and registered (recorded) by this teaching processing. At this time, the reference position data obtained by reproducing the motions before and after the imaging position of the robot in the visual teaching in the same way as during the work include an error component due to the robot motion, and the work target is the same during the work. Since the position data imaged and recognized during the operation of the condition also includes the error component due to the motion of the same tendency, if the relative displacement vector of both data is calculated by the method shown in FIG. The positioning accuracy of the robot can be improved by canceling out. Although the content of each item of the processing procedure has been described above, the order of the items of the above-described processing 101 to 104 does not necessarily have to be as shown in the figure, and the order can be replaced and reprocessing is also possible. The items of the next processing 105 to 107 are always succeeded. The method is applicable to general automatic machines as well.

ここに上記のロボットの教示処理で記憶した位置のデー
タには識別用にラベル付けされ、例えばP1,P2といった
ラベルが付く。上記の位置のデータとはロボットの各関
節の角変位のデータであり、このデータとロボット各部
の寸法値をもとに幾何演算により、ロボットの手先の位
置を求めることができる。上記の作業シーケンス命令登
録処理101はロボット言語でロボットの作業シーケンス
を記述する。例えば動作命令MOVE I,P1を入力すると、
ロボットを現在の位置から前もって教示しておいた点P1
までパラメータIによって決まる補間経路で動かすこと
を指定している。このロボット言語によって動作シーケ
ンスを表わすプログラムを記述する方法および教示によ
ってロボットの主要な位置を記録する方法は従来方法に
準じてよい。ただし上記の動作中に視覚で認識する処理
および視覚の教示を行なう処理を本発明による方法で新
たに加えているので、これらの処理を記述する言語仕様
例およびその処理例を次に説明する。まず言語仕様の新
しい項目としては次の3項目がある。
The position data stored in the robot teaching process described above is labeled for identification, such as P 1 and P 2 . The above-mentioned position data is data of the angular displacement of each joint of the robot, and the position of the hand of the robot can be obtained by geometrical calculation based on this data and the dimension values of each part of the robot. The work sequence command registration processing 101 described above describes the work sequence of the robot in the robot language. For example, if you enter the operation command MOVE I, P 1 ,
The point you taught the robot from its current position in advance P 1
Up to the parameter I is specified to move along the interpolation path. The method of writing a program that represents an operation sequence in the robot language and the method of recording the main position of the robot by teaching may be in accordance with the conventional method. However, since the process of visually recognizing and the process of visually teaching during the above operation are newly added by the method according to the present invention, a language specification example describing these processes and an example of the process will be described below. First, there are the following three new items in the language specification.

(1)撮像目標位置を明示するラベルPvを設ける。(1) A label Pv that clearly indicates the imaging target position is provided.

(2)動作命令(MOVE)のパラメータに撮像目標位置が
入れられた時にはロボットの動作が撮像目標位置Pvを通
過した時点で撮像・認識処理が開始することを定義す
る。
(2) When the imaging target position is entered in the parameter of the motion command (MOVE), it is defined that the imaging / recognition process is started when the robot motion passes the imaging target position Pv.

(3)視覚の教示処理を指示する命令(VTEACH)を新た
に設ける。
(3) A command (VTEACH) for instructing visual teaching processing is newly provided.

つぎに処理例を説明する。第1図の処理103の基準の作
業位置PW1とはロボットのハンドで作業をする場合に第
1にハンドを位置決めするべき位置を表わす。この基準
位置PW1はロボットに位置を教え込むために設定した位
置であり、実際の作業位置PW2は基準位置PW1から誤差を
持った位置である。この誤差を視覚の認識データより演
算して、基準位置PW1から誤差分だけシフトした位置へ
ロボットを位置決めして作業を行なうが、この方法は従
来の視覚付きロボットの制御方法に準ずる。第1図の処
理104は手先に視覚を付けたロボットにおいて必要とな
る教示であり、これは手先に付けたTVカメラで作業対象
物を見る(視野に収める)位置を手動によって探し、適
切な撮像位置Pvを教示する。ここで従来の手先視覚付き
ロボットは作業対象物を認識するために撮像位置Pvへ動
いてから停止して撮像・認識するのに対して、本発明が
狙いとするのはロボットが撮像位置Pv上を停止せずに通
過した瞬間に撮像して認識する方法である。この撮像位
置Pv上を通過する瞬間のロボットの手先の状態すなわち
TVカメラの姿勢は撮像位置Pvを教示した時と同じ姿勢と
なるようにロボットを制御する。このさいロボットを撮
像位置Pv上を通過するように動作制御する方法に関して
は従来方法に準ずるものとするが、ただ撮像する位置Pv
を教示処理によって設定することは視覚の認識条件を調
べる点でも必要となる。
Next, a processing example will be described. The reference work position P W1 in the process 103 of FIG. 1 represents the position where the hand is first positioned when working with the robot hand. The reference position P W1 is a position set to teach the position to the robot, and the actual work position P W2 is a position having an error from the reference position P W1 . This error is calculated from the visual recognition data, and the robot is positioned at a position shifted from the reference position P W1 by the amount of the error to perform the work. This method is in accordance with the conventional method for controlling a robot with a vision. The process 104 shown in FIG. 1 is a teaching required for a robot with a visual hand attached to it. This is a TV camera attached to the hand to manually find a position where the work object is viewed (in the visual field), and an appropriate image is picked up. Teach the position Pv. Here, the conventional robot with a visual sense of the hand moves to the image pickup position Pv to recognize the work object, and then stops the image pickup / recognition, whereas the present invention aims at the robot on the image pickup position Pv. This is a method of capturing and recognizing the moment when the vehicle passes without stopping. The state of the hand of the robot at the moment when it passes over this imaging position Pv
The robot is controlled so that the TV camera has the same attitude as when the imaging position Pv was taught. The method for controlling the movement of the robot so that it passes over the imaging position Pv is based on the conventional method.
Setting by the teaching process is also necessary to check the visual recognition condition.

また通常の教示処理はロボットを手動によって動かして
作業経路上の主要な点(位置)および作業位置を教え込
んでおり、この操作は第1図の処理102などの教示処理
の中で同様に行なっているが、ただし異なる点はこの後
の視覚の教示処理においてロボットに作業動作を実行さ
せることである。すなわち第1図の処理105は視覚の教
示のためロボットの動作を実行させる処理を表わし、そ
の動作は実際の作業時(プレイバック時)と同じ速度お
よび経路で撮像位置Pv上を通過することが条件である。
このため視覚の教示処理において、作業時と同じ動作命
令(ロボット言語)を使用したプログラムを実行して、
撮像位置Pv上を作業時と同じ条件で動かす。そして第1
図の処理106は撮像位置Pv上を通過した瞬間に基準の作
業対象物(処理103の項で使用した基準の作業対象物と
同じもの)を撮像して基準の作業位置PW1を認識し、次
の処理107は処理106で認識した基準の作業位置PW1を登
録して視覚の教示処理を終える。以上が視覚の教示処理
であるが、このさいロボットが動作する必要がある経路
は撮像位置Pvを通過する前後だけでよい。そこで教示処
理時に実行するロボット言語のプログラムは撮像位置Pv
上を通過させる動作命令と、その前後の動作命令と、動
作後に視覚より基準の作業位置PW1の認識データを受け
る命令と、視覚の認識データより基準の作業位置PW1
表わすデータおよび視野の位置データを演算して登録す
る視覚の教示処理を指示する命令とを含んだものとす
る。
In the normal teaching process, the robot is manually moved to teach the main points (positions) and work positions on the work route. This operation is performed in the teaching process such as the process 102 in FIG. However, the different point is that the robot performs the work operation in the visual teaching process thereafter. That is, the process 105 in FIG. 1 represents a process for executing a motion of the robot for visual teaching, and the motion may pass through the imaging position Pv at the same speed and route as during actual work (during playback). It is a condition.
Therefore, in the visual teaching process, a program that uses the same operation command (robot language) as when working is executed,
Move on the imaging position Pv under the same conditions as when working. And the first
In the process 106 in the figure, the reference work object (the same as the reference work object used in the item of the process 103) is imaged at the moment when it passes over the imaging position Pv, and the reference work position P W1 is recognized, In the next process 107, the reference work position P W1 recognized in process 106 is registered, and the visual teaching process ends. The above is the visual teaching process, but the route in which the robot needs to move is only before and after passing the imaging position Pv. Therefore, the robot language program executed during the teaching process is the imaging position Pv.
An operation command to pass above, an operation command before and after it, an instruction to receive the recognition data of the reference work position P W1 after the motion, and the data representing the reference work position P W1 from the visual recognition data and the visual field It is assumed to include a command for instructing visual teaching processing for calculating and registering position data.

第2図(a),(b)は第1図の視覚の教示処理プログ
ラム例および動作経路の説明図である。第2図(a),
(b)において、第2図(a)の(1)のPROGRAM TEAC
Hでプログラムの識別名TEACHを定義し、(2)のSPEED8
00で動作速度を800mm/secと定義する。つぎのMOVEが動
作命令であり、第1パラメータIは直線経路を演算して
動作することを指定するもので、(3)のMOVE I,P1に
よって現在の位置(現在ロボットが停止している位置)
から第2パラメータの点P1(第2図(b))まで直線経
路で動いて点P1で停止する。続いて(4)のMOVE T,Pv
によって点P1から点Pv(第2図(b))へ至る直線経路
を演算するが、第1パラメータTの指定により次の
(5)のMOVE T,P2と結びついて、点P1から点P2(第2
図(b))へ至る経路と連続した経路を求め、すなわち
点P1から点Pvを経由して点P2へ至る連続した経路を演算
してロボットを動かす。ここで点Pvは撮像位置を表わす
ので、ロボットが撮像位置Pv上を通過した時点でロボッ
トより視覚へ撮像指令が送られ、視覚はその指令に従っ
て基準の作業位置PW1(第2図(b))の撮像・認識処
理を行なう。また(5)の第1パラメータもTであるこ
とから点Pvから点P2へ至る経路と次の(6)のMOVE命令
が表わす点P2から点PWへ至る経路が連続して円滑経路
(第2図(b)の実線)を演算する。ここで(6)の第
2パラメータがPW1+<0,0,−10>となっているが、こ
れは教示してある基準の作業位置PW1にZ方向で−10mm
のシフトを与えた位置(鉛直上方に10mmの位置)を表わ
す。また第3パラメータのS=200は鉛直方向の速度が2
00mm/secと指定している(第1パラメータはI)。よっ
てロボットは第6図(b)の点P1から点PW1+<0,0,−1
0>まで連続して動いて、点PW1+<0,0,−10>で停止す
る。つぎの(7)のRECV命令で視覚の認識データを受け
とり、(8)のVTEACH命令で視覚の教示処理を実行し
て、(9)のENDで終了する。ここでのロボット動作は
実際の作業時(プレイバック時)の動作の一部と同等で
ある。
2 (a) and 2 (b) are explanatory diagrams of an example of the visual teaching processing program and the operation path of FIG. Figure 2 (a),
In (b), PROGRAM TEAC of (1) in FIG. 2 (a)
Define the program identification name TEACH in H, and (2) SPEED8
00 defines the operation speed as 800 mm / sec. The next MOVE is a motion command, and the first parameter I specifies to operate by calculating a linear path. The current position (the position where the robot is currently stopped) is determined by MOVE I, P1 in (3). )
To the point P1 of the second parameter (FIG. 2 (b)), it moves in a straight path and stops at the point P1. Then (4) MOVE T, Pv
The straight line path from the point P1 to the point Pv (Fig. 2 (b)) is calculated according to Second
A path that is continuous with the path leading to the diagram (b)) is obtained, that is, a continuous path from the point P1 to the point P2 via the point Pv is calculated to move the robot. Here, since the point Pv represents the imaging position, when the robot passes over the imaging position Pv, the robot sends an imaging command to the visual sense, and the visual sense follows the reference work position P W1 (Fig. 2 (b)). ) Image pickup / recognition processing is performed. Further, since the first parameter of (5) is also T, the path from point Pv to point P2 and the path from point P2 to PW represented by the MOVE command of (6) described below are continuous (smooth path). The solid line in FIG. 2B) is calculated. Here, the second parameter of (6) is P W1 + <0,0, -10>, which is -10 mm in the Z direction at the taught reference work position P W1.
Represents the position where the shift is given (the position 10 mm vertically above). The third parameter, S = 200, has a vertical speed of 2
00 mm / sec is specified (the first parameter is I). Therefore, the robot moves from point P1 to point P W1 + <0,0, -1 in Fig. 6 (b).
It moves continuously to 0> and stops at point P W1 + <0,0, -10>. Next, the visual recognition data is received by the RECV command of (7), the visual teaching process is executed by the VTEACH command of (8), and the process ends with END of (9). The robot operation here is the same as a part of the operation during the actual work (during playback).

第3図は第1図の教示および制御処理を行なう制御装置
のブロック図である。第3図において、5はロボット制
御装置で、この例ではマルチCPU構成となっている。こ
のうちCPU3(18)はシリアル通信制御専用である。6は
画像処理装置(視覚)である。ロボット言語で記述した
プログラム(シーケンスプログラム)はオペレーション
パネル7より入力して、メモリ1(9)に格納される。
またロボット2の教示処理はティーチングボックス8を
操作してロボット2を位置決めしたのち、その位置の教
示を指示するとロボット2のパルスエンコーダ25が示す
関節角をロボット制御装置5のサーボカウンタ14が読み
取ってメモリ9に記憶する。ここでオペレーションパネ
ル7上のキー入力によってロボット言語プログラムの起
動が行なわれ、ロボット制御装置5のCPU1(10)はメモ
リ9より該当プログラムを一命令ずつ順次に読み出して
解釈し、各命令ごとに用意された処理プログラムを実行
する。このうち動作命令はパラメータの位置データをメ
モリ9より読み出したのち、いったんメモリ2(11)に
格納してCPU2(12)が順次に実行する。その処理は教示
点(位置データ)間の動作経路を指定された補間方法に
よって演算し、その演算した経路データに所定のサンプ
リング時間(例えば10msec)ごとに追従してロボット2
を制御する。その制御指令値はサーボアンプ15およびパ
ワーアンプ16を介してロボット2のサーボモータ26を制
御する。このさいCPU12は動作経路上の撮像位置(撮像
目標点)Pvにロボット2が達した時(第4図のTVカメラ
1の位置)に、画像処理装置(視覚)302に対して撮像
開始指令をパラレルI/Oインタフェース14,20を介して送
信する。画像処理装置6はこの指令信号を受けると、そ
のカメラ制御部21がTVカメラ(視覚)1を制御して、TV
カメラ1が撮像した画像データを画像メモリ22に入力
し、これをCPU24が読み出して認識処理を行ない、認識
結果をシリアルインタフェース23,19を介してロボット
制御装置5へ送る。この画像処理装置6から送られてき
た認識データを通信制御専用のCPU18が受信してメモリ
3(17)に格納する。つぎにロボット制御装置5はこの
認識データを使用して、視覚の教示処理を行なう場合
と、ロボットを作業対象に位置決めして作業を行なう場
合がある。ここでは本発明の教示方法に関する教示処理
を次に説明する。
FIG. 3 is a block diagram of a control device for performing the teaching and control processing of FIG. In FIG. 3, reference numeral 5 is a robot controller, which has a multi-CPU configuration in this example. Of these, CPU3 (18) is dedicated to serial communication control. Reference numeral 6 is an image processing device (visual). A program written in robot language (sequence program) is input from the operation panel 7 and stored in the memory 1 (9).
In the teaching process of the robot 2, after the teaching box 8 is operated to position the robot 2 and then teaching of the position is instructed, the servo counter 14 of the robot controller 5 reads the joint angle indicated by the pulse encoder 25 of the robot 2. It is stored in the memory 9. Here, the robot language program is started by a key input on the operation panel 7, and the CPU 1 (10) of the robot control device 5 sequentially reads out the corresponding program from the memory 9 one by one and interprets it, and prepares for each instruction. The executed processing program. Of these, the operation instruction is to read the position data of the parameter from the memory 9, then temporarily store it in the memory 2 (11) and execute it sequentially by the CPU 2 (12). In the processing, the robot 2 is operated by calculating an operation path between teaching points (position data) by a specified interpolation method, and following the calculated path data every predetermined sampling time (for example, 10 msec).
To control. The control command value controls the servo motor 26 of the robot 2 via the servo amplifier 15 and the power amplifier 16. At this time, when the robot 2 reaches the imaging position (imaging target point) Pv on the operation path (position of the TV camera 1 in FIG. 4), the CPU 12 issues an imaging start command to the image processing device (visual) 302. It transmits via the parallel I / O interfaces 14 and 20. When the image processing device 6 receives this command signal, its camera control unit 21 controls the TV camera (visual) 1 to
The image data captured by the camera 1 is input to the image memory 22, the CPU 24 reads it and performs recognition processing, and sends the recognition result to the robot controller 5 via the serial interfaces 23 and 19. The CPU 18 dedicated to communication control receives the recognition data sent from the image processing device 6 and stores it in the memory 3 (17). Next, the robot control device 5 may use this recognition data to perform visual teaching processing, or to position the robot on a work target and perform work. Here, the teaching process relating to the teaching method of the present invention will be described below.

ロボット制御装置5のCPU12は第2図(a)の視覚教示
用のプログラムを実行すると、ロボット2は第2図
(b)の実線で示した点P1を通る経路上を動き、撮像位
置Pv上を通過した時点で撮像開始指令を送る。この撮像
開始指令を送った直後にCPU12はサーボカウンタ14に各
関節のパルスエンコーダ25のパルスをカウントしてレジ
スタにラッチしておく指令を発行する。このエンコーダ
パルス数は撮像指令を発行した時のロボット2の各関節
の関節角変位を表わし、これらの関節角変位をもとに幾
何演算を行なえば、撮像指令を発行した時のロボット2
の手先の位置すなわちTVカメラ(視覚)1の位置を求め
ることができる。CPU12は上記エンコーダパルスのラッ
チを指令したのち、通常のサーボモータ26の制御を行な
い、その後にサーボカウンタ14のレジスタよりラッチし
たエンコーダパルス数を読み出してメモリ11に記録して
おく。ついでCPU12はロボット2の動作終了後にRECV命
令(第2図(a)の(7))によって視覚の教示処理を
実行する。この処理はCPU18が視覚の認識データを受け
て、メモリ17に格納した後に実行される。メモリ11のエ
ンコーダパルス数より撮像した瞬間のTVカメラ1すなわ
ち視野の位置を求める。この位置をロボット座標系ベク
トル(第6図)で表わす。なお第6図は水平面内の
位置関係を示す。ここではTVカメラ1で鉛直方向に撮像
している例を示している。ついでメモリ17に格納された
視覚の認識データを読み出して視野内の位置を表わすベ
クトルをロボット座標系で求める。これらのベクト
3,および視野の傾きθをメモリ9に記憶して
視覚の教示処理を終了する。なおこの処理において視覚
で認識した位置3(第6図)は基準の作業位置PW1であ
る。
When the CPU 12 of the robot control device 5 executes the visual teaching program shown in FIG. 2 (a), the robot 2 moves on the path passing through the point P1 shown by the solid line in FIG. An image pickup start command is sent at the point of passing. Immediately after sending this imaging start command, the CPU 12 issues a command to the servo counter 14 to count the pulses of the pulse encoder 25 of each joint and latch them in the register. The number of encoder pulses represents the joint angle displacement of each joint of the robot 2 when the imaging command is issued, and if geometric calculation is performed based on these joint angle displacements, the robot 2 when the imaging command is issued.
It is possible to obtain the position of the hand of the player, that is, the position of the TV camera (visual) 1. After instructing the latch of the encoder pulse, the CPU 12 controls the normal servo motor 26, and thereafter reads the latched encoder pulse number from the register of the servo counter 14 and records it in the memory 11. Then, the CPU 12 executes the visual teaching process by the RECV command ((7) in FIG. 2A) after the operation of the robot 2 is completed. This processing is executed after the CPU 18 receives the visual recognition data and stores it in the memory 17. From the number of encoder pulses in the memory 11, the position of the TV camera 1, that is, the position of the visual field at the moment when the image is picked up is obtained. This position is represented by robot coordinate system vector 3 (FIG. 6). Note that FIG. 6 shows the positional relationship in the horizontal plane. Here, an example is shown in which the TV camera 1 is capturing an image in the vertical direction. Then, the visual recognition data stored in the memory 17 is read out and the vector 4 representing the position within the visual field is obtained in the robot coordinate system. These vectors 3 and 4 and the inclination θ 1 of the visual field are stored in the memory 9, and the visual teaching process is completed. The position 3 (FIG. 6) visually recognized in this process is the reference work position P W1 .

つぎに上記の教示処理をしたのちロボット2で作業をす
る場合は、作業シーケンスを記述したロボット言語プロ
グラム(すでに登録されている)を起動する。ロボット
2は動作中に撮像位置Pv上を通過し、ロボット制御装置
5は同様に撮像指令を画像処理装置(視覚)6へ送る。
画像処理装置6はTVカメラ(視覚)1で撮像して作業位
置を認識処理し、その認識データをロボット制御装置5
へ送信する。このときの作業位置PW2は基準の作業位置P
W1と誤差がある。ロボット制御装置5のCPU12はロボッ
ト2の動作の制御を行なうのと並行して、撮像指令の送
信後にCPU18が画像処理装置6の認識データを受信して
メモリ17へ格納するのを監視する。そしてメモリ17へ格
納後に直ちに読み出して、メモリ17へ格納してあるエン
コーダパルス数とともに、撮像した瞬間の視野の位置ベ
クトル(第6図)および現在の作業対象物4の位置
ベクトル(第6図)を演算する。現在の作業位置P
W2は基準の作業位置PW1を基準にして相対変位量ベクト
で表わされ、このベクトル=−
で求まる(第6図)。これよりCPU12は教示
処理で記憶した3,をメモリ9より読み出してベク
トルを演算し、ロボット2のハンドを現在の作業位
置PW2へ位置決めして、その後に作業を行なう。
Next, when the robot 2 is to perform a work after the above teaching process, a robot language program (already registered) in which a work sequence is described is started. The robot 2 passes over the image pickup position Pv during operation, and the robot control device 5 similarly sends an image pickup command to the image processing device (visual) 6.
The image processing device 6 picks up an image with the TV camera (visual) 1 to recognize the work position, and recognizes the recognition data.
Send to. The work position P W2 at this time is the reference work position P
There is an error with W1 . While the CPU 12 of the robot control device 5 controls the operation of the robot 2, it monitors the CPU 18 for receiving the recognition data of the image processing device 6 and storing it in the memory 17 after transmitting the imaging command. Then, immediately after being stored in the memory 17, the position vector 5 (FIG. 6) of the visual field at the time of imaging and the position vector 6 (6th position) of the current work object 4 are read together with the number of encoder pulses stored in the memory 17. Figure) is calculated. Current working position P
W2 is represented by a relative displacement vector 8 based on the working position P W1 of the reference, the vector 8 = - 4 + 5 -
It can be calculated by 3 + 6 (Fig. 6). From this, the CPU 12 reads out 3 and 4 stored in the teaching process from the memory 9 to calculate the vector 8 , positions the hand of the robot 2 at the current work position P W2 , and then performs work.

以上に説明したように本発明による手先視覚付きロボッ
ト・自動機械の教示方法は、従来の手動によるロボット
の位置決め後に停止位置を登録し、視覚の教示もその停
止位置で認識して記録するという方法ではなく、作業時
(プレイバック時)と同じ動作(ただし撮像位置前後の
動作だけでよい)を行なって、同条件で撮像・認識を行
なったデータをもとにして教示を行なう点を特徴として
いる。本発明による教示方法を実施する理由は、上記し
たように動作中に撮像・認識する方法を採用すると撮像
した瞬間の絶対位置を正確に求めることができず、すな
わち撮像した瞬間の各関節の変位を記録して該変位をも
とにTVカメラの位置(視野の位置)を演算すると動作速
度および動作方向に依存した誤差を生じ、この誤差の原
因はロボットの機構誤差や変位の測定系の誤差や特性な
どに起因することになるが不明の点も多いため、そこで
これらの誤差が同条件速度および経路でロボットを動か
した時の同一点においては同様に再現すると仮定し、実
際に測定した結果も誤差の再現性が存在することが判明
したことによるもので、そのため本発明による教示処理
においても同条件の動作中に基準の作業位置を認識して
おき、そして認識した作業位置と基準の作業位置との相
対変位を求めることにより、動作に起因する固有の誤差
を相殺することが可能となって位置決め精度が向上で
き、ロボットまたは一般の自動機械に適用できる。
As described above, the teaching method for the robot / automatic machine with the visual sense of the hand according to the present invention is a method of registering the stop position after the conventional manual positioning of the robot and recognizing and recording the visual teaching at the stop position. Instead of performing the same operation (at the time of playback) (however, only the operation before and after the imaging position), teaching is performed based on the data taken and recognized under the same conditions. There is. The reason for implementing the teaching method according to the present invention is that if the method of imaging / recognizing during operation as described above is adopted, the absolute position at the moment of imaging cannot be accurately determined, that is, the displacement of each joint at the moment of imaging. When the position of the TV camera (the position of the field of view) is calculated based on this displacement and an error is generated, an error that depends on the operation speed and the operation direction occurs. The cause of this error is the mechanism error of the robot or the error of the displacement measurement system. However, there are many unclear points.Therefore, it is assumed that these errors will be reproduced at the same point when the robot is moved in the same condition speed and path, and the actual measurement results. This is also because it was found that the reproducibility of the error exists. Therefore, in the teaching process according to the present invention, the reference work position is recognized during the operation under the same condition, and the recognized work position is recognized. By obtaining the relative displacement between the working positions of the reference, it is possible to offset the inherent errors due to the operation can be improved positioning accuracy, it can be applied to an automatic machine robot or general.

[発明の効果] 本発明によれば、手先視覚付きロボット・自動機械の動
作中に撮像して認識を行なったデータに従って作業対象
物に位置決めする処理において発生する動作に起因した
誤差成分を低減させて精度のよい位置決めを実現でき、
ロボットの位置決め精度の測定実験を行なった結果から
本動作を行なって教示する方法によって従来の静止教示
方法に比べて位置決め精度を例えば倍以上に向上できる
見通しを得ている。
[Effect of the Invention] According to the present invention, an error component caused by an operation that occurs in a process of positioning a work object according to data captured and recognized during operation of a robot with a visual sense of a hand / automatic machine is reduced. Accurate positioning,
From the result of the measurement experiment of the positioning accuracy of the robot, it is expected that the method of teaching by performing this operation can improve the positioning accuracy, for example, more than twice as compared with the conventional stationary teaching method.

【図面の簡単な説明】[Brief description of drawings]

第1図は本発明による手先視覚付きロボット・自動機械
の教示および制御方法の一実施例を示す手先視覚付きロ
ボットの教示処理フローチャート、第2図(a),
(b)は第1図の視覚の教示処理プログラム例および動
作経路の説明図、第3図は第1図の教示および制御処理
を行なう制御装置のブロック図、第4図は手先視覚付き
ロボットの動作中に撮像・認識して位置決めする処理方
法の概要説明図、第5図は従来の手先視覚付きロボット
の位置決め方法の第1例を示す説明図、第6図は従来の
手先視覚付きロボットの位置決め方法の第2例を示す説
明図である。 101……作業シーケンス命令登録(ロボット言語プログ
ラム)、102……動作経路の主要な位置の登録、103……
基準の作業位置PW1の登録、104……作業対象の撮像位置
Pvの登録、105……撮像位置Pvを通過して基準作業位置P
W1へ至るロボット動作の実行、106……撮像位置Pv通過
時の基準の作業位置PW1の撮像・認識、107……基準の作
業位置PW1の認識結果の登録(視覚の教示)、1……TV
カメラ(視覚)、2……ロボット、3……基準の作業対
象物、4……実際の作業対象物、5……ロボット制御装
置、6……画像処理装置(視覚)、7……オペレーショ
ンパネル、8……ティーチングボックス、Pv……撮像位
置、PW1……基準の作業位置、PW2……実際の作業位置。
FIG. 1 is a flowchart showing the teaching process of a robot with a fingertip vision showing an embodiment of a teaching and control method for a robot / automatic machine with a fingertip vision according to the present invention, FIG. 2 (a),
(B) is an explanatory view of an example of a visual teaching processing program and an operation path of FIG. 1, FIG. 3 is a block diagram of a control device for performing the teaching and control processing of FIG. 1, and FIG. FIG. 5 is an explanatory diagram showing an outline of a processing method for imaging / recognizing and positioning during operation, FIG. 5 is an explanatory diagram showing a first example of a positioning method for a conventional robot with a hand tip, and FIG. 6 is a diagram for a conventional robot with a hand tip. It is explanatory drawing which shows the 2nd example of the positioning method. 101 …… Registration of work sequence command (robot language program), 102 …… Registration of main position of movement path, 103 ……
Registration of the reference work position P W1 , 104 ... Imaging position of the work target
Registration of Pv, 105 ... Reference work position P after passing through the imaging position Pv
Execution of robot operation leading to W1, 106 imaging and recognition of the working position P W1 criteria ...... imaging position Pv during the passage, 107 the recognition result registration of the ...... reference working position P W1 (visual teaching), 1 ... … TV
Camera (visual), 2 ... Robot, 3 ... Reference work object, 4 ... Actual work object, 5 ... Robot control device, 6 ... Image processing device (visual), 7 ... Operation panel , 8 ・ ・ ・ Teaching box, Pv …… Imaging position, P W1 …… Reference work position, P W2 …… Actual work position.

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】手先視覚を持つロボットあるいは自動機械
のプログラムで制御されるロボット・自動機械におい
て、作業領域内に置かれた作業対象物の位置・姿勢を視
覚で撮像し認識して、該認識データに従ってハンドある
いは作業工具を位置合わせする制御を行なう場合におい
て、前準備段階として、ロボット・自動機械の動作シー
ケンスをロボット言語などのプログラムで登録する作
業、および動作経路上の主要な位置を教示する作業、お
よび基準位置に置いてある基準の作業対象物にロボット
・自動機械のハンドあるいは作業工具を手動で位置合わ
せして、該位置を基準の作業位置として登録する作業な
どの準備操作をした後、視覚の教示として、撮像を行な
う撮像目標位置を手動で位置決めして登録してから、ロ
ボット・自動機械を通常のプレイバック使用時と同条件
で撮像目標位置前後の動作を再現して、該動作中に撮像
目標位置を通過時に手先視覚で撮像して、該基準の作業
対象物の位置・姿勢を認識して該基準の認識結果および
基準の視覚位置のデータの登録を行なうことを特徴とす
る手先視覚付きロボット・自動機械の教示方法。
1. In a robot or an automatic machine controlled by a program of a robot or an automatic machine having a hand vision, the position / orientation of a work object placed in a work area is visually imaged and recognized, and the recognition is performed. When performing control to position the hand or work tool according to the data, as a preparatory step, work to register the operation sequence of the robot / automatic machine with a program such as robot language, and teach the main position on the operation path After performing preparatory operations such as work and manually aligning the robot or automatic machine hand or work tool with the reference work object placed at the reference position and registering the position as the reference work position As a visual instruction, after manually registering and registering the imaging target position for imaging, the robot / automatic machine is passed through. Reproduce the motion before and after the imaging target position under the same conditions as when using playback, and visually recognize the position / orientation of the reference work object when the imaging target position is passed during the motion by visualizing with a fingertip. A method of teaching a robot / automatic machine with a fingertip vision, characterized in that the recognition result of the reference and the data of the reference visual position are registered.
【請求項2】請求項1記載の手先視覚付きロボット・自
動機械の教示処理を実行した後、ロボットあるいは自動
機械をプレイバック動作させて作業を行なう場合におい
て、作業領域内に供給された現在の作業対象物を手先視
覚で動作中に撮像して認識を行ない、該認識結果および
視覚位置のデータと上記基準の認識結果および基準の視
覚位置のデータとの相対変位量を求めることにより、現
在の作業対象物の基準の作業対象物からの相対変位量を
求めて、現在の作業対象物にロボット・自動機械のハン
ドあるいは作業工具を位置決め補正する制御を行なうこ
とを特徴とする手先視覚付きロボット・自動機械の制御
方法。
2. When the robot or the automatic machine is played back after performing the teaching process of the robot / automatic machine with the hand tip according to claim 1, the current supply in the work area is performed. By recognizing a work object by imaging with a fingertip during operation and performing recognition, and obtaining a relative displacement amount between the recognition result and visual position data and the reference recognition result and reference visual position data, the current A robot with a hand tip that is characterized by determining the relative displacement of the work object from the reference work object, and performing control to position-correct the robot / automatic machine hand or work tool on the current work object. Automatic machine control method.
JP15694888A 1988-06-27 1988-06-27 Teaching and control method for robot / automatic machine with hand vision Expired - Lifetime JPH07122823B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15694888A JPH07122823B2 (en) 1988-06-27 1988-06-27 Teaching and control method for robot / automatic machine with hand vision

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15694888A JPH07122823B2 (en) 1988-06-27 1988-06-27 Teaching and control method for robot / automatic machine with hand vision

Publications (2)

Publication Number Publication Date
JPH027108A JPH027108A (en) 1990-01-11
JPH07122823B2 true JPH07122823B2 (en) 1995-12-25

Family

ID=15638840

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15694888A Expired - Lifetime JPH07122823B2 (en) 1988-06-27 1988-06-27 Teaching and control method for robot / automatic machine with hand vision

Country Status (1)

Country Link
JP (1) JPH07122823B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4266946B2 (en) * 2005-03-17 2009-05-27 ファナック株式会社 Offline teaching device
JP4613752B2 (en) * 2005-08-30 2011-01-19 トヨタ自動車株式会社 Robot and robot information display method
CN114435827A (en) * 2021-12-24 2022-05-06 北京无线电测量研究所 Wisdom warehouse system

Also Published As

Publication number Publication date
JPH027108A (en) 1990-01-11

Similar Documents

Publication Publication Date Title
EP0208406B1 (en) Method of detecting and controlling work start point of robot
JP3665353B2 (en) 3D position correction amount acquisition method of robot teaching position data and robot system
JP3002097B2 (en) Visual tracking method
JP3733364B2 (en) Teaching position correction method
JP4167940B2 (en) Robot system
JP6661028B2 (en) Work position correction method
JP2512099B2 (en) Robot motion teaching method and control device
JPH065486B2 (en) Robot trajectory control method
JP4287788B2 (en) Self-propelled robotic hand
JP2728399B2 (en) Robot control method
JP2787891B2 (en) Automatic teaching device for laser robot
JP4572497B2 (en) Robot controller
JPH089151B2 (en) Position correction method for robot equipped with automatic guided vehicle
JPH07122823B2 (en) Teaching and control method for robot / automatic machine with hand vision
JP3577124B2 (en) Method of acquiring mating data using force control robot
JPH0746288B2 (en) Control method and device for robot with hand vision
WO2022195938A1 (en) Robot system positioning accuracy measurement method
JP2016203282A (en) Robot with mechanism for changing end effector attitude
Baeten et al. Improving force controlled planar contour following using online eye-in-hand vision based feedforward
JP2011093076A (en) Method and apparatus for information processing, and program
JP3350687B2 (en) Robot control method and robot control device
JP2024068115A (en) Robot mounted moving device
WO2024135220A1 (en) Robot control system
JPH10264066A (en) Robot controller
JPH0668695B2 (en) Robot controller