JPH0227100B2 - - Google Patents

Info

Publication number
JPH0227100B2
JPH0227100B2 JP57227141A JP22714182A JPH0227100B2 JP H0227100 B2 JPH0227100 B2 JP H0227100B2 JP 57227141 A JP57227141 A JP 57227141A JP 22714182 A JP22714182 A JP 22714182A JP H0227100 B2 JPH0227100 B2 JP H0227100B2
Authority
JP
Japan
Prior art keywords
mark
work
detection
robot
position correction
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
JP57227141A
Other languages
Japanese (ja)
Other versions
JPS59118386A (en
Inventor
Kinichi Tamura
Yoshitada Sekine
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.)
Nissan Motor Co Ltd
Original Assignee
Nissan Motor Co 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 Nissan Motor Co Ltd filed Critical Nissan Motor Co Ltd
Priority to JP22714182A priority Critical patent/JPS59118386A/en
Publication of JPS59118386A publication Critical patent/JPS59118386A/en
Publication of JPH0227100B2 publication Critical patent/JPH0227100B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Automatic Assembly (AREA)

Description

【発明の詳細な説明】[Detailed description of the invention]

この発明は、ロボツトの位置補正装置に関する
ものである。 近時、実用化されつつある組立(アセンブリ)
ロボツトにおいては、締結作業や部品の差し込み
作業等を如何にして迅速巧妙に失敗なく繰り返し
行えるようにするかが、重要な課題になつてい
る。 例えば、締結作業に例を採るなら、ねじが自動
供給される自動ねじ締め機を、ロボツトの可動部
の先端に取り付けたメカニカルハンドに把持させ
るか、ロボツトの可動部先端に直接取り付けて、
その自動ねじ締め機の先端をワークのねじ穴上に
正確に位置決めした後、自動ねじ締め機を垂直に
降してねじ締め作業を行うことが考えられる。 ところが、この作業を恙無く迅速に行うには、
ロボツトの繰り返し精度の向上を計ることも然る
事ながら、ロボツトの作業位置に供給されるワー
クのねじ穴位置が一定でないと、ロボツトの作業
端である自動ねじ締め機の先端の位置決めが正確
であつても失敗する確率が高くなつてしまう。 例えば、ロボツトによるねじ締め作業ラインを
構成する場合、コンベア上を流れてくるワークを
ロボツトの作業位置に一旦停止させてねじ締め作
業を行なわせるようにすることが考えられるが、
このようにした場合、ワークの停止誤差が問題に
なり、この停止誤差がミリ単位で発生するとワー
クの締結作業が困難になつてしまう。 なお、上記のような停止誤差は、高精度の位置
決め装置を設ければ問題はないが、例えば自動車
のインストルメントパネルのように比較的大きな
ワークに対して上記のような高精度の位置決め装
置を作ろうとすると、装置が大掛りになるばかり
か、非常に設備費が掛るなどの難点があつた。 そこで、近年ロボツトに視覚認識機能を持たせ
て、前述のワークのねじ穴位置を視覚的に認識し
て、自動ねじ締め機の先端の位置補正を行うこと
が試みられている。 しかしながら、このようにしてもTVカメラか
らの画像データの処理に現段階の技術では時間が
かかりすぎる難点があるばかりか、ねじ穴位置が
ワークの狭い所や深い所にあつたり、ワークの色
とねじ穴の色(黒)との間にあまり差がないよう
な場合、認識が困難であり、しかも装置全体が高
価であるため、やはり実用性があまりない。 この発明は、上記のような背景に鑑みてなされ
たものであり、前述のねじ穴のようなロボツトの
作業位置と、ロボツトの作業工具との間の位置ず
れ誤差を比較的簡単な装置で高速に補正吸収し得
るようにすることを目的とする。 上記目的を達成するための本発明は、ロボツト
の作業対象に対して相対位置関係が一定となるよ
うに配置され、前記作業対象における前記ロボツ
トの作業位置に対応した所定の位置にマークを施
した倣い基体と、前記ロボツトに取付けられ前記
倣い基体の表面に平行な面内を旋回する腕と、当
該腕の先端に設けられかつ前記倣い基体の表面に
向かう方向に伸びる回動軸に取付けられ、前記作
業位置において所定の作業を行なう作業工具と前
記マークを検出する検出体とを有する双頭ヘツド
と、前記腕の旋回時にこの旋回移動に対応させて
前記双頭ヘツドを回動させ前記双頭ヘツドと前記
作業位置及び前記マークとの相対位置関係を一致
させる同期手段と、前記検出体に前記マークより
も狭い領域内に一定の配列で分散配置され、それ
ぞれ前記マークを検出する複数の検出部と、前記
マークの存在を検出した際の前記検出体における
検出部の位置及び個数に応じて、より多くの検出
部を前記マーク内に導くべく予め一義的に定めら
れた前記作業工具の移動方向及び移動量のデータ
群からなる位置補正データを記憶した位置補正デ
ータ記憶手段と、前記双頭ヘツドの作業工具を前
記作業位置近傍の目標位置に位置決めした時に、
前記マークの存在を検出した前記検出体における
検出部の位置及び個数に対応した位置補正データ
を前記位置補正データ記憶手段に記憶されている
データ群の中から選択する選択手段と、該選択手
段によつて選択された位置補正データに基づいて
前記ロボツトの可動部を駆動する駆動手段と、前
記検出体における全ての検出部が前記マーク内に
位置されるまで前記選択手段による位置補正デー
タの選択及び前記駆動手段による前記可動部の駆
動を繰り返し行ない、前記作業工具の位置補正を
行なう位置補正制御手段とを有することを特徴と
するロボツトの位置補正装置である。 以下、この発明の実施例を添付図面を参照しな
がら説明する。 第1図は、この発明を適用した水平多関節型ロ
ボツトによる締結作業の様子を示す斜視図であ
る。 同図において、SCARA型とも称される水平多
関節型ロボツト1は、基部2上に正立固定した柱
体3と、この柱体3に対して矢示Z方向に上下動
する昇降部4と、この昇降部4に対してx−y平
面上を矢示θ1方向に旋回する第1腕5と、この第
1腕5に対して同じくx−y平面上を矢示θ2方向
に旋回する第2腕6と、この第2腕6の端盤6a
に取り付けられ、後述する双頭ヘツド(第1図で
は模式的に図示してある)7の軸部7aをベアリ
ングを介して回転自在に取り付けた手首部8とに
よつて軸構成されている。 そして、昇降部4は、柱体3に取り付けたモー
タM1によつて減速機GB1及び柱体3内の回転−
直線運動変換機構を介して矢示Z方向に駆動さ
れ、第1腕5は、昇降部4に取り付けたモータ
M2によつて減速機GB2を介して矢示θ1方向に駆
動される。 また、第2腕6は、第1腕5に取り付けたモー
タM3によつて減速機GB3を介してθ2方向に駆動
される。そして、腕5,6は後述する倣い基体1
1の表面11aに平行な面内を旋回することにな
る。 なお、PG1〜PG3は各モータM1〜M3の出力軸
に取り付けたパルスジエネレータであり、夫々昇
降部4及び第1、第2腕5,6の移動位置を検出
する。 また、昇降部4及び第1、第2腕5,6の連結
軸部に回転自在に取り付けた歯付プーリPU1,
PU2と、双頭ヘツド7の軸部7aのまわりに固着
した歯付プーリPU3との間には、夫々歯付ベルト
VT1,VT2を張装してあり、これによつて第1、
第2腕5,6が夫々矢示θ1,θ2方向に旋回しても
双頭ヘツド7の姿勢が常に一定となる。つまり、
前記歯付きベルトVT1,VT2は、腕5,6の
旋回時にこの旋回移動に対応させて、後述する作
業位置(穴10b)及びマークMRKと双頭ヘツ
ド7との相対位置関係を一致させる同期手段を構
成している。 そして、この水平多関節型ロボツト1は、その
前面に配置されているワーク搬送コンベア9によ
つて矢示Y方向から搬送されて図示の位置に停止
するコンベア9上の自動車のインストルメントパ
ネル10におけるグローボツクスリツド10a及
び図示しない計器盤のねじ締め作業を行なう。 ワーク搬送コンベア9を流れる各インストルメ
ントパネル10は、夫々個々に作業用治具11に
上流側で固定されており、この作業用治具11は
例えばフリーフロー型のワーク搬送コンベア9に
よつて搬送され、図示の位置でエアシリンダSL
によつて矢示X方向に進退するストツパSTによ
つて停止される。 但し、作業用治具11の停止姿勢を常に略一定
にするために、コンベア9には図示しない停止基
準面が設けてある。 作業用治具11の上面11aには、例えば設計
図面より求めたインストルメントパネル10にお
けるロボツト1の真の作業位置であるグローボツ
クスリツド10a取付用の穴10b及び図中には
現われない計器盤取付用の穴に夫々対応した所定
の位置に各穴の大きさより若干大きい径のマーク
MRKを施してある。 すなわち、この上面11aは倣い基体としての
作用を果し、作業用治具11にはインストルメン
トパネル10を固定してあるため、インストルメ
ントパネル10の各穴と上面11aの各マーク
MRKとの相対位置関係は一定となつている。 なお、グローボツクスリツド10aと図示しな
い計器盤とは、コンベア9の上流で各々の穴とイ
ンストルメントパネル10側の穴との間の位相が
合うように可設してある。 また、この実施例ではインストルメントパネル
10を作業用治具11に上流側で固定している
が、例えばインストルメントパネル10をワーク
搬送コンベア9上にそのままクランプして搬送す
るようにすると共に、インストルメントパネル1
0が図示の位置に停止した時点で、作業用治具1
1の上面11aと同様に構成した倣い基体をコン
ベア9の脇側からインストルメントパネル10に
向けて移動させて予め定めた位置で停止させるよ
うに構成しても良い。 そして、第1図に示すようなストツパSTによ
るインストルメントパネル10及び作業用治具1
1の停止位置は、一回毎に誤差が発生する可能性
があるので、ロボツト1の先端部に取り付けた双
頭ヘツド7における一方の自動ねじ締め機12
(後述する)を例えば予めテイーチングによつて
得た目標位置に移動させた時、双頭ヘツド7の他
のセンシングヘツド(検出体)〔後述する〕13
によつて作業用治具11の上面11aのマーク
MRKを検出し、その検出結果に基づき後述する
位置補正装置によつてインストルメントパネル1
0側の穴と自動ねじ締め機12の先端との位置ず
れ誤差を吸収しようとするものである。 なお、上記の停止誤差による位置ずれ誤差の他
に、各インストルメントパネル10に対するテイ
ーチングデータの誤差等も吸収できる。 次に、第2図及び第3図を参照して双頭ヘツド
7の構造を説明する。 先ず第2図において、双頭ヘツド7における一
方のコ字状の支持部7bに対して矢示Z方向に摺
動自在に取り付けたガイドバー14には、自動ね
じ締め機12を固定してあり、このねじ締め機1
2がガイドバー14と共に支持部7bに固定した
エアシリンダ15によつて矢示Z方向に動かすこ
とにより自動ねじ締め機12を昇降させるように
なつている。 そして、この自動ねじ締め機12は、その先端
がインストルメントパネル10における例えば計
器盤取付用の穴10c上に位置決めされると、後
述する制御部の指令で作動するエアシリンダ15
によつて穴10cに向つて下降し、先端が穴10
cの上面に接触すると、内部モータによつて回転
するビツトによりネジ供給口12bから供給され
ているタツピングねじが穴10cにねじ込まれ
る。 また、双頭ヘツド7における他方の支持部7c
には、後述する検出回路を内蔵した頭部13a
と、基部13bと、センシング部取付用の棒部1
3cと、センシング部13d等とからなるセンシ
ングヘツド13を取り付けてある。 そして、このセンシングヘツド13のセンシン
グ部13dは、第3図に示すような構造となつて
いる。 すなわち、棒部13cの先端に取り付けたマー
クMRKの径より小さい円盤13eには、作業用
治具11の上面11aのマークMRKの存在を検
出する4個の検出部13f1〜13f4を夫々円盤1
3eの外周円に接し、且つ各々が互いに対称とな
るような一定の配列で分散配置してあり、これ等
の各検出部13f1〜13f4の先端部に設けた円錐
台状の逃げ穴13g1〜13g4の各底部には、検出
部13f1〜13f4内に夫々モールドした4本の光
フアイバ16の受光端面部16a1〜16a4を夫々
固定してある。 そして、これ等4本の光フアイバ16は、第2
図に示すようにセンシングヘツド13の頭部13
a内に設けた検出回路に導かれている。 なお、双頭ヘツド7における自動ねじ締め機1
2及びセンシングヘツド13の各先端の相対位置
関係は、第2図に示すようにロボツト1の作業位
置である穴10c(又は穴10b)とマーク
MRKとの相対位置関係と一致しており、センシ
ングヘツド13の先端がマークMRKの真上に位
置すれば、自動ねじ締め機12の先端は穴10b
又は10cの真上に位置するようになる。 検出回路は、例えば第4図に示すような構成の
回路部を4個備えている。 この回路部は、光フアイバ16によつて伝達さ
れた光をフオトトランジスタPTで受けて、その
光強度に応じた電流を抵抗Rに流す。 そして、この抵抗Rの両端に発生する電圧VX
を例えばCMOSのシユミツトトリガバツフアSH
で受けて、電圧VXがその入力スレシヨルドレベ
ルVTHより大きいか小さいかで出力eが“H”又
は“L”になるように回路定数を設定する。 例えば、円盤13eの径d1、マークMRKの径
d2、及び逃げ穴13g1〜13g4の開口径d3との間
に、例えば第5図に示すような大小関係を設定し
た場合、例えば逃げ穴13g4が図示のようにマー
クMRKに対して約2/3以上覗いた時に、出力e
が“L”に、それ以外では“H”になるようにす
る。 なお、マークMRKの色は、例えば黒とし、作
業用治具11における上面11aの色は黒より明
るい色、例えば白とする。 このようにすると、シユミツトトリガバツフア
SHの出力eが“L”の時、出力トランジスタTr
がオフであるから、出力P4は定電流源CIによつ
て“1”になり、出力eが“H”の時、出力トラ
ンジスタTrがオンして、出力P4が“0”になる。 なお、同回路部中、ダイオードDは逆接防止
用、ツエナーダイオードZD1は逆流防止用、ツエ
ナーダイオードZD2はサージ吸収用である。 したがつて、出力P4が“1”か“0”かを調
べることによつて、逃げ穴13g4内における光フ
アイバ16の受光端面部16aがマークMRKの
存在を検出したか否かを知ることができる。 以下、第6図に示すように、検出部13f1〜1
3f4を夫々Q1〜Q4と称し、それ等に対応する各
検出回路部の出力をP1〜P4と称する。 第7図は、この発明によるロボツトの位置補正
装置を含む第1図の水平多関節型ロボツト1の制
御ブロツク図である。 なお、第7図のパルス分配器20から先の偏差
カウンタ21、駆動部22、速度検出部23、及
び位置カウンタ24は、第1図の昇降部4を駆動
するモータM1のデジタルDCサーボ系であり、他
の第1、第2腕5,6のデジタルDCサーボ系は
全く同様に構成されているので、図示を省略す
る。 先ず、ロボツトを駆動制御するための基礎とな
る部分に就て説明する。 同図において、移動データ算出部17は、後述
するゲート信号G1によつてゲート回路18が開
いた時に、メモリ19から読み出される第1図の
自動ねじ締め機12の先端の目標位置を示す位置
データと現在位置レジスタ25に格納されている
昇降部4及び第1、第2腕5,6各部の現在位置
データとに基づいて、昇降部4の移動量及び第
1、第2腕5,6の各移動角を算出して、その算
出結果をパルス分配器20に出力する。 なお、メモリ19には、第1図のインストルメ
ントパネル10における各穴10b,10c(第
2図)の位置を例えばテイーチングによつて求め
た結果である複数の位置データやロボツトの原点
位置データ等が格納してあり、予め定めた作業順
序に従つて読み出される。 ただし、これ等の各位置データでは、ロボツト
1の先端の双頭ヘツド7における自動ねじ締め機
12を停止位置が夫々相異なるインストルメント
パネル10の各穴10b,10c上に正確に位置
決めできる保証はないが、少なくともその近傍に
位置決めすることは可能である。 パルス分配器20は、移動データ算出部17か
らの算出結果に基づいて、各部の移動量(角)を
パルス数で表わしたパルス信号を形成して、夫々
のパルス信号を各デジタルDCサーボ系の偏差カ
ウンタ21に分配出力する。 デジタルDCサーボ系では、偏差カウンタ21
のカウント出力に応じて駆動部22内のD/A変
換器及びサーボアンプを介してモータM1を回転
駆動制御するようになつており、その速度及び位
置(回転量)の制御の概略は次の如くである。 すなわち、モータM1を正転方向に回すべき時
は、パルス分配器20からのパルス信号を偏差カ
ウンタ21のアツプカウント端子Uに、モータ
M1によつて作動するパルスジエネレータPG1か
らフイードバツクされるパルス信号を偏差カウン
タ21のダウンカウント端子Dに、夫々図示しな
い切換回路を介して入力する。 このようにすると、モータM1が回転し始めた
時点から一定時間経過するまでは、パルス信号の
周期及びパルスジエネレータPG1の出力特性によ
つて決まる速さで、偏差カウンタ21のカウント
値は増加し、前記一定時間経過後は偏差カウンタ
21のカウント値は一定に保たれる。 そして、偏差カウンタ21のアツプカウント端
子Uに入力されるパルス信号がなくなると、パル
スジエネレータPG1からのパルス信号によつてそ
のカウント値がデクリメントされていく。 このような変化をする偏差カウンタ21のカウ
ント値を速度基準値として、この速度基準値と速
度検出部23からの実速値(パルスジエネレータ
PG1からのパルス信号をF/V変換して得る)と
を比較して両者が一致するように駆動部22は速
度フイードバツク制御する。 このように、偏差カウンタ21がパルス分配器
20からのパルス信号をカウントし始めることに
よつてモータM1が回転し始め、偏差カウンタ2
1のカウント値が増加、一定、減少して零になる
ことによつて、モータM1がそのパルス数に応じ
た回転数だけ回転して停止し、それによつて位置
(回転量)制御が行われる訳であるが、モータM1
の回転量が所定値以上又は以下の場合は、次のよ
うな補正が行われる。 すなわち、パルスジエネレータPG1としてイン
クリメンタル形のものを使用すると、モータM1
の回転方向をその出力パルス信号の位相を弁別す
ることによつて検知できる。 そこで、前述した切換回路にその弁別機能を持
たせて、モータM1が正転の時は前述のとおりパ
ルスジエネレータPG1からのパルス信号を偏差カ
ウンタ21のダウンカウント端子Dに、逆転の時
はそのパルス信号をアツプカウント端子Uに夫々
入力するようにする。 このようにすると、当然の事ながら回転量が所
定値に充たない時は、偏差カウンタ21のカウン
ト値は零にはならないので、モータM1をさらに
正方向に回転してカウント値が零になるように作
用し、回転量が所定値を越えていれば、偏差カウ
ンタ21のカウント値は負の値であるから、モー
タM1は逆方向に回転されると共に、その回転に
応じてパルスジエネレータPG1から出力されるパ
ルス信号によつて負の値のカウント値が正方向に
向つてインクリメントされて、カウント値が零に
なるように作用する。 それによつて、モータM1は結果的にはパルス
分配器20からのパルス信号のパルス数に応じた
回転数だけ回転して停止する。 なお、現在位置レジスタ25は、前述のように
して駆動制御される各モータM1〜M3の始動時点
からの見かけ上の回転量(正転量−逆転量)をカ
ウントする3個の位置カウンタ24からのカウン
ト出力を格納するようにしてあり、それによつて
ロボツト1の各部が原点位置からどれだけ動いた
かを示す現在位置データを常に保持している。 なお、これ等の各位置カウンタ24も、各パル
スジエネレータPG1〜PG3からのパルス信号の位
相を検知して、モータM1〜M3の正転時のパルス
信号をアツプカウント端子に、逆転時のパルス信
号をダウンカウント端子に夫々入力する切換回路
を入力側に夫々接続してある。 以上のようにして、第1図のロボツト1の手首
部8に取り付けた双頭ヘツド7における自動ねじ
締め機12の先端を、コンベア9上の停止したイ
ンストルメントパネル10の各穴10b,10c
の近傍に(一致する場合もある)に位置決めする
ことができる。 なお、自動ねじ締め機12の位置決めによつ
て、センシングヘツド13のマークMRKに対す
る位置決めもなされる。 そして、上記のようにして位置決めされたセン
シングヘツド13における検出部Q1〜Q4がマー
クMRKをどのように検出しているかで、位置決
め誤差を求めている。 次に、この発明に係わる部分に就て説明する。
第7図において、検出回路26は、第4図に示し
た検出回路部を4個備えており、検出部Q1〜Q4
の検出結果に応じて前述した出力P1〜P4を出力
する。 判別回路27は、後述するゲート信号G2によ
つて開かれるゲート回路28を介して入力される
検出回路26からの出力P1〜P4を2進データと
して入力して、第1表に示すような条件の下に信
号S0〜S13を出力する。 なお、第1表において、例えばQ1〜Q4がオフ
とは、検出部Q1〜Q4の全てがマークMRKの存在
を検出していないことを表わし、Q1がオンとは
検出部Q1のみがマークMRKの存在を検出してい
ることを示す。
The present invention relates to a position correction device for a robot. Assembly, which has recently been put into practical use
An important issue for robots is how to quickly and skillfully perform fastening operations, parts insertion operations, etc. repeatedly without failure. For example, in the case of fastening work, an automatic screw tightening machine that automatically supplies screws can be gripped by a mechanical hand attached to the tip of a robot's movable part, or it can be attached directly to the tip of a robot's movable part.
It is conceivable to accurately position the tip of the automatic screw driver over the screw hole of the workpiece, and then lower the automatic screw driver vertically to perform the screw tightening work. However, in order to perform this work effortlessly and quickly,
It is natural to improve the repeatability of the robot, but if the screw hole position of the workpiece supplied to the robot's working position is not constant, the positioning of the tip of the automatic screwdriver, which is the working end of the robot, will not be accurate. Even then, the probability of failure increases. For example, when configuring a screw tightening work line using a robot, it is conceivable that the work flowing on the conveyor is temporarily stopped at the robot's work position and the screw tightening work is performed.
In this case, a stopping error of the workpiece becomes a problem, and if this stopping error occurs in millimeter units, it becomes difficult to fasten the workpiece. The above-mentioned stopping error will not be a problem if a high-precision positioning device is installed, but if a high-precision positioning device like the one described above is used for a relatively large workpiece such as an automobile instrument panel, for example. When trying to make one, not only did the equipment become large-scale, but the equipment costs were extremely high. Therefore, in recent years, attempts have been made to equip robots with a visual recognition function to visually recognize the positions of screw holes in the workpiece and correct the position of the tip of an automatic screw tightening machine. However, even with this method, there are disadvantages in that it takes too much time to process the image data from the TV camera with the current technology, and the screw hole position is in a narrow or deep part of the workpiece, and the color of the workpiece may vary. If there is not much difference between the color of the screw hole (black), it is difficult to recognize, and the entire device is expensive, so it is not very practical. This invention was made in view of the above-mentioned background, and it is possible to quickly correct positional deviation errors between the working position of the robot, such as the aforementioned screw hole, and the working tool of the robot using a relatively simple device. The purpose is to make it possible to absorb corrections. In order to achieve the above object, the present invention is arranged such that the relative positional relationship of the robot with respect to the work object is constant, and a mark is made at a predetermined position corresponding to the work position of the robot on the work object. a copying base; an arm that is attached to the robot and rotates in a plane parallel to the surface of the copying base; and a rotating shaft that is attached to the tip of the arm and extends in a direction toward the surface of the copying base; a double-headed head having a work tool for performing a predetermined work at the work position and a detection body for detecting the mark; a synchronizing means for matching a working position and a relative positional relationship with the mark; a plurality of detecting units disposed on the detecting body in a fixed arrangement in a region narrower than the mark and each detecting the mark; The moving direction and amount of movement of the power tool are uniquely determined in advance in order to guide more detecting parts into the mark according to the position and number of detecting parts in the detecting body when detecting the presence of the mark. a position correction data storage means storing position correction data consisting of a data group; and when the double-headed working tool is positioned at a target position near the working position,
selection means for selecting position correction data corresponding to the position and number of detection parts on the detection object in which the presence of the mark has been detected from among a data group stored in the position correction data storage means; drive means for driving the movable part of the robot based on the selected position correction data; and selection of position correction data by the selection means until all the detection parts of the detection body are positioned within the mark. A position correction device for a robot, comprising a position correction control means for repeatedly driving the movable part by the drive means and correcting the position of the working tool. Embodiments of the present invention will be described below with reference to the accompanying drawings. FIG. 1 is a perspective view showing a fastening operation performed by a horizontal articulated robot to which the present invention is applied. In the figure, a horizontal articulated robot 1, also called the SCARA type, has a column 3 fixed upright on a base 2, and an elevating section 4 that moves up and down in the Z direction with respect to the column 3. , a first arm 5 that pivots in the direction of arrow θ 1 on the x-y plane with respect to the lifting unit 4, and a first arm 5 that pivots in the direction of arrow θ 2 on the x-y plane with respect to this first arm 5. The second arm 6 and the end plate 6a of this second arm 6
The wrist part 8 is attached to a shaft part 7a of a double-headed head (schematically shown in FIG. 1), which will be described later, via a bearing, and the shaft part 8 is rotatably attached thereto. The elevating unit 4 is operated by the motor M 1 attached to the column 3 through the speed reducer GB 1 and the rotation inside the column 3.
The first arm 5 is driven in the direction of arrow Z via a linear motion conversion mechanism, and the first arm 5 is driven by a motor attached to the lifting section 4.
It is driven by M 2 in the direction of arrow θ 1 via reduction gear GB 2 . Further, the second arm 6 is driven in the θ 2 direction by a motor M 3 attached to the first arm 5 via a speed reducer GB 3 . The arms 5 and 6 are a copying base 1 which will be described later.
1 and rotates in a plane parallel to the surface 11a of the object. Note that PG 1 to PG 3 are pulse generators attached to the output shafts of the respective motors M 1 to M 3 , and detect the movement positions of the elevating section 4 and the first and second arms 5 and 6, respectively. In addition, a toothed pulley PU 1 is rotatably attached to the connecting shaft of the elevating part 4 and the first and second arms 5 and 6.
A toothed belt is connected between the PU 2 and the toothed pulley PU 3 fixed around the shaft portion 7a of the double-headed head 7.
VT 1 and VT 2 are tensioned, so that the first,
Even if the second arms 5 and 6 turn in the directions of arrows θ 1 and θ 2 , the posture of the double-headed head 7 remains constant. In other words,
The toothed belts VT1 and VT2 are provided with synchronizing means for matching the working position (hole 10b) and the relative positional relationship between the mark MRK and the double-headed head 7, which will be described later, in response to the turning movement of the arms 5 and 6. It consists of This horizontal articulated robot 1 is transported from the direction of arrow Y by a workpiece transport conveyor 9 disposed in front of the robot 1, and stops at the position shown in the figure. Tighten the screws on the glow box slide 10a and the instrument panel (not shown). Each instrument panel 10 flowing on the workpiece conveyor 9 is individually fixed to a work jig 11 on the upstream side, and this work jig 11 is, for example, conveyed by the free-flow type workpiece conveyor 9. and air cylinder SL in the position shown.
It is stopped by a stopper ST which moves forward and backward in the direction of arrow X. However, in order to keep the working jig 11 in a substantially constant stopping position, the conveyor 9 is provided with a stopping reference plane (not shown). On the upper surface 11a of the work jig 11, there are holes 10b for attaching the glow box slide 10a, which is the true working position of the robot 1 in the instrument panel 10 determined from the design drawing, and an instrument panel that does not appear in the drawing. Marks with a diameter slightly larger than the size of each hole are placed at designated positions corresponding to the mounting holes.
MRK has been applied. That is, this upper surface 11a functions as a copying base, and since the instrument panel 10 is fixed to the work jig 11, each hole in the instrument panel 10 and each mark on the upper surface 11a
The relative positional relationship with MRK is constant. The glow box slide 10a and an unillustrated instrument panel are arranged upstream of the conveyor 9 so that the respective holes and the holes on the instrument panel 10 side are in phase with each other. Further, in this embodiment, the instrument panel 10 is fixed to the work jig 11 on the upstream side, but for example, the instrument panel 10 may be clamped and transported as it is on the work conveyor 9, and the instrument panel 10 may be ment panel 1
0 stops at the position shown in the figure, the work jig 1
A copying base body configured in the same manner as the top surface 11a of FIG. 1 may be moved from the side of the conveyor 9 toward the instrument panel 10 and stopped at a predetermined position. Then, the instrument panel 10 and the work jig 1 are installed by the stopper ST as shown in FIG.
Since there is a possibility that an error may occur in the stopping position of robot 1, one automatic screw tightening machine 12 in the double-headed head 7 attached to the tip of the robot 1 is used.
(described later) is moved to a target position obtained in advance by teaching, for example, when the other sensing head (detection object) [described later] 13 of the double-headed head 7
Marks on the top surface 11a of the work jig 11 by
MRK is detected, and based on the detection result, the instrument panel 1 is
This is intended to absorb the positional deviation error between the hole on the 0 side and the tip of the automatic screw tightening machine 12. In addition to the positional deviation error caused by the above-described stop error, errors in teaching data for each instrument panel 10 can also be absorbed. Next, the structure of the double-headed head 7 will be explained with reference to FIGS. 2 and 3. First, in FIG. 2, an automatic screw tightening machine 12 is fixed to a guide bar 14 that is slidably attached to one U-shaped support portion 7b of the double-headed head 7 in the direction of arrow Z. This screw tightening machine 1
The automatic screw tightening machine 12 is raised and lowered by moving the automatic screw tightening machine 2 along with a guide bar 14 in the direction of the arrow Z using an air cylinder 15 fixed to the support part 7b. When the tip of the automatic screw tightening machine 12 is positioned over, for example, a hole 10c for installing an instrument panel in the instrument panel 10, an air cylinder 15 is activated by a command from a control section, which will be described later.
The tip descends toward the hole 10c, and the tip reaches the hole 10c.
When it comes into contact with the upper surface of the hole 10c, the tapping screw supplied from the screw supply port 12b is screwed into the hole 10c by a bit rotated by an internal motor. Also, the other support portion 7c in the double-headed head 7
The head 13a has a built-in detection circuit which will be described later.
, a base portion 13b, and a rod portion 1 for attaching the sensing portion.
A sensing head 13 consisting of a sensor 3c, a sensing section 13d, etc. is attached. The sensing portion 13d of the sensing head 13 has a structure as shown in FIG. That is, four detection parts 13f 1 to 13f 4 for detecting the presence of the mark MRK on the upper surface 11a of the work jig 11 are respectively attached to the disk 13e smaller in diameter than the mark MRK attached to the tip of the rod 13c. 1
The detection parts 13f 1 to 13f 4 have truncated cone-shaped relief holes 13g provided at the tips of the detection parts 13f 1 to 13f 4 , which are in contact with the outer circumferential circle of the detection parts 3e and distributed in a fixed arrangement so as to be symmetrical to each other. Light receiving end face portions 16a 1 to 16a 4 of four optical fibers 16 molded in detection portions 13f 1 to 13f 4 , respectively, are fixed to the bottoms of the optical fibers 1 to 13g4 , respectively. These four optical fibers 16 are connected to the second
Head 13 of sensing head 13 as shown in the figure.
It is guided to a detection circuit provided inside a. In addition, automatic screw tightening machine 1 with double head 7
2 and the respective tips of the sensing head 13, as shown in FIG.
If the tip of the sensing head 13 is located directly above the mark MRK, the tip of the automatic screw tightener 12 will be aligned with the hole 10b.
Or it will be located directly above 10c. The detection circuit includes, for example, four circuit sections configured as shown in FIG. In this circuit section, the phototransistor PT receives the light transmitted through the optical fiber 16, and causes a current to flow through the resistor R in accordance with the intensity of the light. Then, the voltage VX generated across this resistor R
For example, the CMOS trigger buffer SH
The circuit constants are set so that the output e becomes "H" or "L" depending on whether the voltage VX is larger or smaller than the input threshold level VTH . For example, the diameter d 1 of the disk 13e, the diameter of the mark MRK
d 2 and the opening diameter d 3 of the escape holes 13g 1 to 13g 4 , for example, if a size relationship is set as shown in FIG. Output e when looking more than 2/3 of the way
is set to "L", and set to "H" otherwise. Note that the color of the mark MRK is, for example, black, and the color of the upper surface 11a of the work jig 11 is a color lighter than black, for example, white. This will reduce the trigger buffer
When the output e of SH is “L”, the output transistor Tr
is off, the output P4 becomes "1" by the constant current source CI, and when the output e is "H", the output transistor Tr is turned on and the output P4 becomes "0". In the same circuit, diode D is used to prevent reverse connection, Zener diode ZD 1 is used to prevent backflow, and Zener diode ZD 2 is used to absorb surge. Therefore, by checking whether the output P4 is "1" or "0", it is possible to know whether the light-receiving end surface 16a of the optical fiber 16 within the relief hole 13g4 has detected the presence of the mark MRK. be able to. Hereinafter, as shown in FIG. 6, the detection units 13f 1 to 1
3f4 are respectively referred to as Q1 to Q4 , and the outputs of the corresponding detection circuit sections are referred to as P1 to P4 . FIG. 7 is a control block diagram of the horizontal articulated robot 1 of FIG. 1 including the robot position correction device according to the present invention. Note that the deviation counter 21, drive section 22, speed detection section 23, and position counter 24 from the pulse distributor 20 in FIG. 7 are a digital DC servo system of the motor M1 that drives the lifting section 4 in FIG. Since the digital DC servo systems of the other first and second arms 5 and 6 are configured in exactly the same way, illustration thereof is omitted. First, the basics for driving and controlling the robot will be explained. In the same figure, the movement data calculation unit 17 calculates a position indicating the target position of the tip of the automatic screw tightening machine 12 shown in FIG . Based on the data and the current position data of the elevating portion 4 and each part of the first and second arms 5 and 6 stored in the current position register 25, the amount of movement of the elevating portion 4 and the first and second arms 5 and 6 are determined. , and outputs the calculation results to the pulse distributor 20. Note that the memory 19 stores a plurality of position data, which is the result of determining the positions of the holes 10b and 10c (FIG. 2) in the instrument panel 10 of FIG. 1, for example, by teaching, data on the origin position of the robot, etc. are stored and read out according to a predetermined work order. However, with these position data, there is no guarantee that the automatic screw tightening machine 12 in the double-headed head 7 at the tip of the robot 1 can be accurately positioned over the holes 10b and 10c of the instrument panel 10, which have different stopping positions. However, it is possible to position it at least in its vicinity. The pulse distributor 20 forms a pulse signal that expresses the amount of movement (angle) of each part by the number of pulses based on the calculation result from the movement data calculation unit 17, and distributes each pulse signal to each digital DC servo system. It is distributed and output to the deviation counter 21. In digital DC servo system, deviation counter 21
The rotation of the motor M1 is controlled via the D/A converter and servo amplifier in the drive section 22 according to the count output of the motor M1 , and the outline of the control of its speed and position (amount of rotation) is as follows. It's like this. That is, when the motor M1 should be rotated in the forward direction, the pulse signal from the pulse distributor 20 is sent to the up count terminal U of the deviation counter 21, and the motor is
A pulse signal fed back from the pulse generator PG1 operated by M1 is inputted to the down-count terminal D of the deviation counter 21 via a switching circuit (not shown). In this way, the count value of the deviation counter 21 will be kept at a speed determined by the period of the pulse signal and the output characteristics of the pulse generator PG 1 until a certain period of time has elapsed since the motor M 1 started rotating. After the predetermined time has elapsed, the count value of the deviation counter 21 is kept constant. When the pulse signal input to the up-count terminal U of the deviation counter 21 disappears, the count value is decremented by the pulse signal from the pulse generator PG1 . Using the count value of the deviation counter 21 that changes in this way as a speed reference value, this speed reference value and the actual speed value from the speed detection section 23 (pulse generator
(obtained by F/V converting the pulse signal from PG 1 ), and the drive unit 22 performs speed feedback control so that the two match. In this way, when the deviation counter 21 starts counting the pulse signals from the pulse distributor 20, the motor M1 starts to rotate, and the deviation counter 2
As the count value of M1 increases, remains constant, or decreases to zero, the motor M1 rotates by the number of rotations corresponding to the number of pulses and then stops, thereby controlling the position (rotation amount). However, motor M 1
If the amount of rotation is greater than or equal to a predetermined value, the following correction is performed. In other words, if an incremental type pulse generator PG 1 is used, the motor M 1
The direction of rotation can be detected by distinguishing the phase of its output pulse signal. Therefore, the above-mentioned switching circuit is provided with this discrimination function, and when the motor M 1 is rotating in the forward direction, the pulse signal from the pulse generator PG 1 is sent to the down count terminal D of the deviation counter 21 as described above, and when the motor M 1 is rotating in the reverse direction, the pulse signal is sent to the down count terminal D of the deviation counter 21. The pulse signals are respectively input to the up count terminals U. By doing this, the count value of the deviation counter 21 will not become zero when the amount of rotation is less than the predetermined value, so the count value will become zero by rotating the motor M1 further in the positive direction. If the amount of rotation exceeds the predetermined value, the count value of the deviation counter 21 is a negative value, so the motor M1 is rotated in the opposite direction and the pulse generator is adjusted in accordance with the rotation. The negative count value is incremented in the positive direction by the pulse signal output from the generator PG1 , so that the count value becomes zero. As a result, the motor M1 eventually rotates by the number of rotations corresponding to the number of pulses of the pulse signal from the pulse distributor 20 and then stops. The current position register 25 includes three position counters that count the apparent amount of rotation (forward rotation amount - reverse rotation amount) of each motor M 1 to M 3 whose drive is controlled as described above from the time of starting. The count output from 24 is stored, so that current position data indicating how far each part of the robot 1 has moved from the origin position is always held. Each of these position counters 24 also detects the phase of the pulse signal from each pulse generator PG 1 to PG 3 and sends the pulse signal during forward rotation of the motors M 1 to M 3 to the up count terminal. A switching circuit for inputting a pulse signal at the time of reverse rotation to the down count terminal is connected to each input side. As described above, the tip of the automatic screw tightening machine 12 on the double-headed head 7 attached to the wrist portion 8 of the robot 1 shown in FIG.
It can be positioned near (or even coincident with). Note that the positioning of the automatic screw tightening machine 12 also positions the sensing head 13 with respect to the mark MRK. Then, the positioning error is determined based on how the detection units Q 1 to Q 4 in the sensing head 13 positioned as described above detect the mark MRK. Next, parts related to this invention will be explained.
In FIG. 7, the detection circuit 26 includes four detection circuit sections shown in FIG. 4, including detection sections Q1 to Q4.
The above-mentioned outputs P 1 to P 4 are output according to the detection results. The discrimination circuit 27 receives outputs P 1 to P 4 from the detection circuit 26 as binary data through a gate circuit 28 opened by a gate signal G 2 to be described later, and outputs them as shown in Table 1. The signals S 0 to S 13 are output under such conditions. In Table 1, for example, when Q 1 to Q 4 are off, it means that all of the detection units Q 1 to Q 4 have not detected the presence of the mark MRK, and when Q 1 is on, it means that the detection unit Q Only 1 indicates that the presence of mark MRK is detected.

【表】 また、第1表においてQ1,Q3がオン又はQ2,
Q4がオンとなる状態がないのは、第6図から明
らかなように4個の検出部Q1〜Q4のうち、対角
に位置する2個の検出部のみがマークMRKの存
在を検出することがあり得ないからである。 なお、このように作用する判別回路27は、例
えば公知の2進−16進変換回路によつて簡単に作
ることができる。 制御部29は、この発明に係わる制御を含むロ
ボツト全体の制御を司る。 すなわち、制御部29は、第8図イに示すロボ
ツト起動指令STが入力されると、先ず同図ロに示
すゲート信号G1をゲート回路18に出力して、
ゲート回路18を開き、それによつて最初の目標
位置を示す位置データがメモリ19から移動デー
タ算出部17に出力される。 移動データ算出部17は、その位置データを受
けた後、第8図ハに示すようにゲート信号G1の
立下りのタイミングに基づいて、ロボツト1の各
部の移動データを算出して、その算出結果をパル
ス分配器20に出力する。 そして、パルス分配器20は、その算出結果を
受けて第8図ニに示すようにタイミングで各デジ
タルDCサーボ系の各偏差カウンタ21に前記算
出結果に応じたパルス信号を分配出力する。 それによつて、前述したデジタルDCサーボ系
の作用により、入力されたパルス信号に応じた位
置決め制御がなされるため、ロボツト1の手首部
8に取り付けた双頭ヘツド7における自動ねじ締
め機12の先端は、インストルメントパネル10
における最初の例えば穴10cの位置近傍の目標
位置に位置決めされる。 なお、上記の説明では、ロボツト1を原点から
いきなり最初の目標位置まで動かすようにした
が、実際には両者の間に複数の中継点を設定して
ロボツト1の運動軌跡を限定するようにしてい
る。 次に、パルス分配器20がパルス信号の分配を
終了すると、第8図ホに示す分配終了信号PEが
制御部29に入力される。 制御部29は、この分配終了信号PEを受けて
第8図ヘに示すようなゲート信号G2をゲート回
路28に出力して、ゲート回路28を開く。 このゲート回路28が開くと、双頭ヘツド7に
おけるセンシングヘツド13の検出部Q1〜Q4の
穴検出状況に応じた出力P1〜P4が検出回路26
から判別回路27に出力されて、前述のような判
別が行われ、それによつて第8図トに示すタイミ
ングで信号S0〜S13の何れか1つが制御部29に
入力される。 制御部29は、この信号を受けて該信号がS0な
ら、検出部Q1〜Q4の何れもマークMRKを検出し
ていないので、位置補正不能と見做して異常信号
NGを出力し、ロボツト1の動作停止等の異常処
理を行う。 また、入力信号がS1〜S12なら、それに対応す
る選択信号T1〜T12の何れかを選択読出回路30
に出力する。 選択読出回路30は、選択信号T1〜T12に応じ
て夫々センシングヘツド13の先端の移動方向及
び移動量を示す位置補正データを格納したレジス
タRST1〜RST12の何れか1つを選択して、
その選択したレジスタから位置補正データを第8
図チに示すタイミングで移動データ算出部17に
出力する。 レジスタRST1〜RST12に格納する位置補
正データの内容と選択信号T1〜T12の関係は、例
えば第2表に示すように設定してある。
[Table] Also, in Table 1, Q 1 and Q 3 are on or Q 2 ,
The reason why there is no state in which Q 4 is turned on is because, as is clear from FIG. This is because it is impossible to detect it. It should be noted that the discrimination circuit 27 that operates in this manner can be easily made using, for example, a known binary-hexadecimal conversion circuit. The control unit 29 is in charge of overall control of the robot, including control according to the present invention. That is, when the control section 29 receives the robot start command ST shown in FIG. 8A, it first outputs the gate signal G1 shown in FIG.
The gate circuit 18 is opened, thereby outputting position data indicating the first target position from the memory 19 to the movement data calculating section 17. After receiving the position data, the movement data calculation unit 17 calculates the movement data of each part of the robot 1 based on the falling timing of the gate signal G1 as shown in FIG. The result is output to the pulse distributor 20. Then, in response to the calculation result, the pulse distributor 20 distributes and outputs a pulse signal according to the calculation result to each deviation counter 21 of each digital DC servo system at the timing shown in FIG. 8D. As a result, positioning control is performed according to the input pulse signal by the action of the digital DC servo system described above, so that the tip of the automatic screw tightening machine 12 at the double-headed head 7 attached to the wrist portion 8 of the robot 1 is , instrument panel 10
For example, it is positioned at a target position near the first hole 10c. In the above explanation, the robot 1 is suddenly moved from the origin to the first target position, but in reality, multiple relay points are set between the two to limit the movement trajectory of the robot 1. There is. Next, when the pulse distributor 20 finishes distributing the pulse signal, a distribution end signal PE shown in FIG. Upon receiving this distribution end signal PE , the control section 29 outputs a gate signal G2 as shown in FIG. 8 to the gate circuit 28, thereby opening the gate circuit 28. When this gate circuit 28 opens, the outputs P 1 to P 4 corresponding to the hole detection status of the detection parts Q 1 to Q 4 of the sensing head 13 in the double-headed head 7 are sent to the detection circuit 26.
The signals S 0 to S 13 are outputted to the discrimination circuit 27 and subjected to the discrimination described above, whereby one of the signals S 0 to S 13 is inputted to the control unit 29 at the timing shown in FIG. 8G. When the control unit 29 receives this signal and the signal is S 0 , since none of the detection units Q 1 to Q 4 has detected the mark MRK, it considers that the position cannot be corrected and sends an abnormal signal.
Outputs NG and performs abnormality processing such as stopping the operation of the robot 1. Further, if the input signal is S 1 to S 12 , one of the corresponding selection signals T 1 to T 12 is selected by the readout circuit 30.
Output to. The selection readout circuit 30 selects one of the registers RST1 to RST12 storing position correction data indicating the moving direction and amount of movement of the tip of the sensing head 13, respectively, in accordance with the selection signals T1 to T12.
The position correction data is transferred from the selected register to the eighth register.
The data is output to the movement data calculation unit 17 at the timing shown in FIG. The relationship between the contents of the position correction data stored in the registers RST1 to RST12 and the selection signals T1 to T12 is set as shown in Table 2, for example.

【表】【table】

【表】 なお、第2表のように設定した理由は、例えば
第9図イに示すように、検出部Q4のみがマーク
MRKの存在を検出している場合、センシングヘ
ツド13を検出部Q4方向(矢示方向)に距離l1移
動させれば、同図ロに示すように検出部Q1,Q2
がマークMRKの存在を検出するようになり、こ
の状態から検出部Q1〜Q2の中心方向(矢示方向)
にセンシングヘツド13を距離l2移動させれば、
同図ハに示すように検出部Q1,Q3,Q4がマーク
MRKの存在を検出するようになるからである。 また、第9図ハの状態から検出部Q4の方向
(矢示方向)にセンシングヘツド13を距離l3移
動させれば、同図ニに示すように全ての検出部
Q1〜Q4がマークMRKの存在を検出するようにな
るからである。 したがつて、第2表のように設定することによ
つて、4個の検出部Q1〜Q4の1つがマークMRK
の存在を検出していれば、前述のように3回位置
補正を繰返すと、第9図ニに示すように検出部
Q1〜Q4の全てがマークMRKの存在を検出するよ
うになり、検出部Q1〜Q4の2つがマークMRKの
存在を検出していれば、2回位置補正を繰返す
と、第9図ニに示すようになる。 また、検出部Q1〜Q4の3つがマークMRKの存
在を検出していれば、1回の位置補正で第9図ニ
に示すようになる。 第7図に戻つて、制御部29に判別回路27か
ら入力される信号がS13なら、再び第8図ロに示
すゲート信号G1をゲート回路18に出力してゲ
ート回路18を開き、それによつて今度はねじ締
め作業を行うための位置データがメモリ19から
読み出されて、その位置データが移動データ算出
部17に出力される。 以上のような前提の下に、制御部29が実行す
る制御動作の流れを第10図のフロー図に従つて
説明する。 STEP1 前述したようにしてロボツト1の手首
部8に取り付けた双頭ヘツド7における
自動ねじ締め機12をテイーチングによ
る目標位置まで移動させる。 STEP2 自動ねじ締め機12の先端が目標位置
に位置したら、判別回路27からの信号
S0〜S13に基づいて、検出部Q1〜Q4のど
れが幾つマークMRKの存在を検出した
かをチエツクし、何れも検出していなけ
れば異常信号NGを出力して異常処理を
行う。 検出部Q1〜Q4の内1〜3個マーク
MRKの存在を検出していれば、選択信
号T1〜T12の何れかを選択読出回路30
に出力してSTEP3に進み、4個ともマ
ークMRKの存在を検出していれば、ゲ
ート信号G1をゲート回路18に出力し
てSTEP4に進む。 STEP3 STEP2において出力された選択信号
T1〜T12の何れかによつて選択されたレ
ジスタRST1〜RST12の何れかから
読み出された第2表に示す位置補正デー
タを移動データ算出部17に出力し、そ
れによつて前述した移動データ算出部1
7、パルス分配器20、及びロボツト各
部のデジタルDCサーボ系の作用により、
センシングヘツド13の先端の位置補正
を行う。 そして、このSTEP3とSTEP2のル
ープを繰り返して、検出部Q1〜Q4が全
てマークMRKの存在を検出したら、前
記ループから抜け出てSTEP4に進む。 STEP4 双頭ヘツド7における一方のセンシン
グヘツド13の検出部Q1〜Q4の全てが
マークMRKの存在を検出しているた
め、センシングヘツド13の先端部(詳
しくは円盤13e)は、完全にマーク
MRK内の上部に位置している。 したがつて、双頭ヘツド7における他
方の自動ねじ締め機12の先端は、イン
ストルメントパネル10の穴10cに完
全に覗いており、ねじ締めが可能であ
る。 そこで、第2図のエアシリンダ15を
駆動制御する図示しない電磁切換弁に作
動信号を送つてエアシリンダ15を駆動
して自動ねじ締め機12を穴10cに向
つて下降させ、それによつてねじ締め作
業を行なう。 STEP5 STEP4のねじ締め作業が完了したか
否かを監視し、完了したら自動ねじ締め
機12を上昇させた後STEP6に進む。 なお、ねじ締め作業が完了したか否か
を監視する方法としては、自動ねじ締め
機12のビツトにかかるトルクを検出す
ることによつて行うとか、単にタイマに
より時間計測によつて行う方法等が考え
られる。 STEP6 インストルメントパネル10における
全ての穴10c,10bのねじ締め作業
が完了したか否かをチエツクし、完了し
ていなければSTEP1に戻つて前述の動
作を繰り返し、完了していればSTEP7
に進む。 なお、2回目以降におけるSTEP1で
処理される目標位置は、インストルメン
トパネル10の各穴10c,10bに対
応して順次メモリ19から読み出され
る。 STEP7 ロボツト1の作業位置に停止したコン
ベア9上のインストルメントパネル10
におけるねじ締め作業が全て終了したの
で、ロボツト1を原点に復帰させて、次
の作業タイミングまで待機すると共に、
第1図のエアシリンダSLを駆動してス
トツパSTを引き込めて作業を終了した
インストルメントパネル10を下流に流
す。 なお、第7図において、判別回路27、制御部
29、選択読出回路30、及びレジスタRST1
〜RST12によつて位置補正量決定手段を、又
移動データ算出部17、パルス分配器20、現在
位置レジスタ25、及び各デジタルDCサーボ系
によつて位置補正制御手段を夫々構成している。 また、以下に上記実施例の変更例を列記する。 (イ) 第11図に示すように、4個の検出部Q1〜
Q4の中心に新たな検出部Q5を設けて、この検
出部Q5がマークMRKの存在を検出した時点
で、ねじ締め作業を開始するようにしても良
い。 この場合、上記実施例より精度は落ちるが、
自動ねじ締め機12の先端中心が、穴12b又
は12cに覗くようになるので、ねじ締めは可
能である。 (ロ) 検出部の数は、2個以上なら幾つでも良く、
例えば第12図に示すように7個にしても良
い。 この場合、円盤13eの径d4を、マーク
MRKの径d2の2倍弱とし、7個の検出部のう
ち近接する3個を夫々マークMRKと同円に内
接するようにする。 そして、検出部のうち1つが、マークMRK
の存在を検出していれば、その検出した検出部
の方向にl4=d4/2−d3/2(d3:検出部の径)
移動させ、又検出部のうちの2つが、マーク
MRKの存在を検出していれば、その検出した
2つの検出部の中心方向に前記l4だけ移動させ
れば、必らず中心の検出部がマークMRKの存
在を検出するようになり、それによつてねじ締
め作業が失敗なく行える。 (ハ) 上記実施例では、自動車のインストルメント
パネルにおけるグローボツクスリツド及び計器
盤の締結作業にこの発明を適用した例に就て述
べたが、どのようなワークの締結作業にも全く
同様に適用できる。 なお、締結作業の中で、例えばスタツドボル
トにナツトを締め付ける作業の場合は、双頭ヘ
ツド7に自動ねじ締め機12の代りにナツトラ
ンナを取り付ければ良い。 (ニ) 締結作業の他には、例えばピンの差し込み作
業等が考えられるが、この場合もやはり双頭ヘ
ツド7に自動ねじ締め機12の代りにピン把持
用のチヤツク又はメカニカルハンドを取り付け
れば良い。 (ホ) 上記実施例では、作業用治具11の上面11
aに施したマークMRKの代りに、穴を穿設し
てその穴をマークとしても良い。 (ヘ) 上記実施例では、この発明を3軸の水平多関
節型ロボツトに適用した例について述べたが、
これに限るものではなく、どのような軸構成の
ロボツトにも同様に適用できる。 以上説明したように、この発明によれば、ねじ
穴のようなロボツトの作業位置とロボツトの作業
工具との間の位置ずれ誤差を比較的簡単な装置で
高速に補正吸収できるので、ロボツトを生産ライ
ンに設置する上で多大な効果がある。
[Table] The reason for setting as shown in Table 2 is that, for example, as shown in Figure 9A, only the detection part Q 4 is marked.
When detecting the presence of MRK, if the sensing head 13 is moved a distance l 1 in the direction of the detection part Q 4 (arrow direction), the detection parts Q 1 and Q 2 will be moved as shown in FIG.
starts to detect the presence of mark MRK, and from this state the center direction of detection parts Q 1 to Q 2 (in the direction of the arrow)
If the sensing head 13 is moved a distance l 2 to
As shown in Figure C, detection parts Q 1 , Q 3 , and Q 4 are marked.
This is because the presence of MRK will be detected. Furthermore, if the sensing head 13 is moved a distance l 3 in the direction of the detection section Q4 (in the direction of the arrow) from the state shown in FIG.
This is because Q 1 to Q 4 will detect the presence of mark MRK. Therefore, by setting as shown in Table 2, one of the four detection units Q 1 to Q 4 can be set as the mark MRK.
If the presence of
All of Q 1 to Q 4 now detect the presence of mark MRK, and if two of the detection parts Q 1 to Q 4 detect the presence of mark MRK, repeating the position correction twice will cause the 9th detection part to detect the presence of mark MRK. The result will be as shown in Figure D. Further, if the three detection units Q 1 to Q 4 detect the presence of the mark MRK, the position shown in FIG. 9D will be obtained with one position correction. Returning to FIG. 7, if the signal input from the discrimination circuit 27 to the control unit 29 is S13 , the gate signal G1 shown in FIG. Therefore, position data for performing the screw tightening work is read out from the memory 19, and the position data is output to the movement data calculation section 17. Based on the above-mentioned premise, the flow of the control operation executed by the control section 29 will be explained with reference to the flowchart of FIG. 10. STEP 1 The automatic screw tightening machine 12 in the double-headed head 7 attached to the wrist portion 8 of the robot 1 as described above is moved to the target position by teaching. STEP 2 When the tip of the automatic screw tightening machine 12 is located at the target position, the signal from the discrimination circuit 27
Based on S 0 to S 13 , check how many of the detection units Q 1 to Q 4 have detected the presence of marks MRK, and if none has been detected, output an abnormal signal NG and perform abnormal processing. . 1 to 3 marks from detection part Q 1 to Q 4
If the presence of MRK is detected, the readout circuit 30 selects one of the selection signals T1 to T12 .
If the presence of all four marks MRK is detected, the gate signal G1 is output to the gate circuit 18 and the process proceeds to STEP 4. STEP3 Selection signal output in STEP2
The position correction data shown in Table 2 read out from any one of the registers RST1 to RST12 selected by any one of T1 to T12 is output to the movement data calculation unit 17, thereby performing the above-mentioned movement. Data calculation section 1
7. Through the action of the pulse distributor 20 and the digital DC servo system of each part of the robot,
The position of the tip of the sensing head 13 is corrected. Then, the loop of STEP 3 and STEP 2 is repeated, and when all of the detection units Q 1 to Q 4 detect the presence of the mark MRK, the process exits from the loop and proceeds to STEP 4. STEP 4 Since all of the detection parts Q 1 to Q 4 of one of the sensing heads 13 in the double-headed head 7 have detected the presence of the mark MRK, the tip of the sensing head 13 (specifically, the disk 13e) is completely marked.
It is located at the top of MRK. Therefore, the tip of the other automatic screw tightening machine 12 in the double-headed head 7 is completely visible in the hole 10c of the instrument panel 10, and screw tightening is possible. Therefore, an operating signal is sent to the electromagnetic switching valve (not shown) that controls the air cylinder 15 shown in FIG. do the work. STEP 5 It is monitored whether or not the screw tightening work in STEP 4 has been completed, and when it is completed, the automatic screw tightening machine 12 is raised and the process proceeds to STEP 6. Note that methods for monitoring whether or not the screw tightening work has been completed include detecting the torque applied to the bit of the automatic screw tightening machine 12, or simply measuring time using a timer. Conceivable. STEP 6 Check whether the screw tightening work for all the holes 10c and 10b in the instrument panel 10 is completed. If not, return to STEP 1 and repeat the above operation, and if completed, STEP 7.
Proceed to. Note that the target positions to be processed in STEP 1 from the second time onwards are sequentially read out from the memory 19 corresponding to each hole 10c, 10b of the instrument panel 10. STEP 7 Instrument panel 10 on conveyor 9 stopped at the working position of robot 1
Since all the screw tightening work has been completed, the robot 1 is returned to the origin and waits until the next work timing.
The air cylinder SL shown in FIG. 1 is driven to retract the stopper ST and the instrument panel 10 whose work has been completed is flown downstream. In addition, in FIG. 7, the discrimination circuit 27, the control section 29, the selection readout circuit 30, and the register RST1
~RST 12 constitutes position correction amount determining means, and movement data calculation section 17, pulse distributor 20, current position register 25, and each digital DC servo system constitute position correction control means. Further, modifications of the above embodiment are listed below. (b) As shown in Fig. 11, four detection parts Q 1 ~
A new detection part Q5 may be provided at the center of Q4 , and the screw tightening work may be started when this detection part Q5 detects the presence of the mark MRK. In this case, the accuracy is lower than in the above example, but
Since the center of the tip of the automatic screw tightening machine 12 can be seen into the hole 12b or 12c, screw tightening is possible. (b) The number of detection parts may be any number as long as it is two or more,
For example, the number may be seven as shown in FIG. In this case, the diameter d 4 of the disk 13e is marked
The diameter is a little less than twice the diameter d 2 of MRK, and three of the seven detecting parts are inscribed in the same circle as the mark MRK. And one of the detection parts is marked MRK.
If the presence of is detected, l 4 = d 4 /2 - d 3 /2 (d 3 : diameter of the detection part) in the direction of the detected detection part.
and two of the detection parts are marked
If the presence of MRK is detected, if you move the two detecting parts that have been detected by the distance l 4 in the direction of the center, the center detecting part will always detect the presence of mark MRK, and Therefore, screw tightening work can be performed without failure. (C) In the above embodiment, the present invention was applied to the work of fastening glow box slides and instrument panels in automobile instrument panels, but the invention can be applied to the fastening work of any workpiece in exactly the same way. Applicable. Incidentally, in the case of tightening a nut on a stud bolt, for example, in the fastening work, a nut runner may be attached to the double-headed head 7 instead of the automatic screw tightening machine 12. (d) In addition to the fastening work, for example, a pin insertion work can be considered, but in this case as well, a chuck or mechanical hand for grasping the pin may be attached to the double-headed head 7 instead of the automatic screw tightening machine 12. (e) In the above embodiment, the upper surface 11 of the work jig 11
Instead of the mark MRK made on a, a hole may be drilled and the hole may be used as a mark. (f) In the above embodiment, an example was described in which the present invention was applied to a three-axis horizontal articulated robot.
The invention is not limited to this, and can be similarly applied to robots with any axis configuration. As explained above, according to the present invention, positional deviation errors between the robot's working position and the robot's work tool, such as a screw hole, can be corrected and absorbed at high speed with a relatively simple device, so that the robot can be produced easily. It has a great effect when installed on the line.

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

第1図は、この発明を適用した水平多関節型ロ
ボツトによる締結作業の様子を示す斜視図、第2
図は、第1図の双頭ヘツドの構成を示す拡大側面
図、第3図は、双頭ヘツドにおけるセンシングヘ
ツドの先端部の構造を示す断面図及び下面図、第
4図は、第3図の検出部の検出回路部の一例を示
す図路図、第5図は、センシングヘツドにおける
円盤及び検出部とマークとの大きさの関係を示す
説明図、第6図は、センシングヘツドにおける4
個の検出部の名称定義に供する図、第7図は、こ
の発明によるロボツトの位置補正装置を含む第1
図の水平多関節型ロボツトの制御装置の一例を示
すブロツク図、第8図イ〜チは、夫々第7図の動
作説明に供するタイミングチヤート、第9図イ〜
ニは、夫々位置補正の概要説明に供する図、第1
0図は、第7図の制御部が実行する制御動作を示
すフロー図、第11図及び第12図は、夫々セン
シングヘツドにおける検出部の他の構成例を示す
説明図である。 1……水平多関節型ロボツト、7……双頭ヘツ
ド、9……部品搬送コンベア、10……インスト
ルメントパネル、10a……グローブボツクスリ
ツド、10b,10c……穴、12……自動ねじ
締め機、13……センシングヘツド(検出体)、
13g1〜13g4……逃げ穴、16……光フアイ
バ、16a1〜16a4……受光端面部、17……移
動データ算出部、20……パルス分配器、21…
…偏差カウンタ、22……駆動部、23……速度
検出部、24……位置カウンタ、25……現在位
置レジスタ、26……検出回路、27……判別回
路、29……制御部、30……選択読出回路、
M1〜M3……モータ、PG1〜PG3……パルスジエ
ネレータ、Q1〜Q5……検出部、RST1〜RST1
2……レジスタ。
FIG. 1 is a perspective view showing a fastening operation performed by a horizontally articulated robot to which the present invention is applied;
The figure is an enlarged side view showing the configuration of the double-headed head in Figure 1, Figure 3 is a sectional view and bottom view showing the structure of the tip of the sensing head in the double-headed head, and Figure 4 is the detection shown in Figure 3. FIG. 5 is an explanatory diagram showing the size relationship between the disk in the sensing head, the detection part and the mark, and FIG.
FIG. 7, which is a diagram for defining the names of the detection units, shows the first detection unit including the robot position correction device according to the present invention.
A block diagram showing an example of a control device for a horizontally articulated robot shown in FIG.
D is a diagram for explaining the outline of position correction, and 1st
FIG. 0 is a flowchart showing the control operation executed by the control section in FIG. 7, and FIGS. 11 and 12 are explanatory diagrams showing other configuration examples of the detection section in the sensing head, respectively. 1... Horizontal articulated robot, 7... Double-headed head, 9... Parts conveyor, 10... Instrument panel, 10a... Glove box slid, 10b, 10c... Hole, 12... Automatic screw tightening machine, 13...sensing head (detection object),
13g 1 to 13g 4 ... escape hole, 16 ... optical fiber, 16a 1 to 16a 4 ... light receiving end face section, 17 ... movement data calculation section, 20 ... pulse distributor, 21 ...
... Deviation counter, 22 ... Drive section, 23 ... Speed detection section, 24 ... Position counter, 25 ... Current position register, 26 ... Detection circuit, 27 ... Discrimination circuit, 29 ... Control section, 30 ... ...selective readout circuit,
M 1 to M 3 ... Motor, PG 1 to PG 3 ... Pulse generator, Q 1 to Q 5 ... Detection section, RST1 to RST1
2...Register.

Claims (1)

【特許請求の範囲】 1 ロボツトの作業対象に対して相対位置関係が
一定となるように配置され、前記作業対象におけ
る前記ロボツトの作業位置に対応した所定の位置
にマークを施した倣い基体と、 前記ロボツトに取付けられ前記倣い基体の表面
に平行な面内を旋回する腕と、 当該腕の先端に設けられかつ前記倣い基体の表
面に向かう方向に伸びる回動軸に取付けられ、前
記作業位置において所定の作業を行なう作業工具
と前記マークを検出する検出体とを有する双頭ヘ
ツドと、 前記腕の旋回時にこの旋回移動に対応させて前
記双頭ヘツドを回動させ前記双頭ヘツドと前記作
業位置及び前記マークとの相対位置関係を一致さ
せる同期手段と、 前記検出体に前記マークよりも狭い領域内に一
定の配列で分散配置され、それぞれ前記マークを
検出する複数の検出部と、 前記マークの存在を検出した際の前記検出体に
おける検出部の位置及び個数に応じて、より多く
の検出部を前記マーク内に導くべく予め一義的に
定められた前記作業工具の移動方向及び移動量の
データ群からなる位置補正データを記憶した位置
補正データ記憶手段と、 前記双頭ヘツドの作業工具を前記作業位置近傍
の目標位置に位置決めした時に、前記マークの存
在を検出した前記検出体における検出部の位置及
び個数に対応した位置補正データを前記位置補正
データ記憶手段に記憶されているデータ群の中か
ら選択する選択手段と、 該選択手段によつて選択された位置補正データ
に基づいて前記ロボツトの可動部を駆動する駆動
手段と、 前記検出体における全ての検出部が前記マーク
内に位置されるまで前記選択手段による位置補正
データの選択及び前記駆動手段による前記可動部
の駆動を繰り返し行ない、前記作業工具の位置補
正を行なう位置補正制御手段とを有することを特
徴とするロボツトの位置補正装置。
[Scope of Claims] 1. A copy base body arranged so that the relative positional relationship with respect to the work object of the robot is constant, and a mark is provided at a predetermined position corresponding to the work position of the robot on the work object; an arm that is attached to the robot and rotates in a plane parallel to the surface of the copying base; and an arm that is attached to a rotation shaft that is provided at the tip of the arm and extends in a direction toward the surface of the copying base; a double-headed head having a work tool for performing a predetermined work and a detection body for detecting the mark; and when the arm turns, the double-headed head is rotated in response to the turning movement, and the double-headed head is moved between the work position and the work position. synchronizing means for matching the relative positional relationship with the mark; a plurality of detecting units disposed on the detecting body in a fixed array in a distributed manner within an area narrower than the mark, each detecting the mark; and detecting the presence of the mark. From a data group of the movement direction and movement amount of the power tool that is uniquely determined in advance to guide more detection parts into the mark according to the position and number of detection parts in the detection object at the time of detection. a position correction data storage means storing position correction data, and a position and number of detection parts on the detection body that detect the presence of the mark when the double-headed work tool is positioned at a target position near the work position; selecting means for selecting position correction data corresponding to the position correction data from a data group stored in the position correction data storage means; and controlling the movable part of the robot based on the position correction data selected by the selection means. a driving means for driving the power tool; and repeating the selection of position correction data by the selection means and the driving of the movable part by the driving means until all detection parts of the detection body are positioned within the mark, and 1. A position correction device for a robot, comprising a position correction control means for performing position correction.
JP22714182A 1982-12-27 1982-12-27 Compensator for position of robot Granted JPS59118386A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22714182A JPS59118386A (en) 1982-12-27 1982-12-27 Compensator for position of robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22714182A JPS59118386A (en) 1982-12-27 1982-12-27 Compensator for position of robot

Publications (2)

Publication Number Publication Date
JPS59118386A JPS59118386A (en) 1984-07-09
JPH0227100B2 true JPH0227100B2 (en) 1990-06-14

Family

ID=16856122

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22714182A Granted JPS59118386A (en) 1982-12-27 1982-12-27 Compensator for position of robot

Country Status (1)

Country Link
JP (1) JPS59118386A (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5342942B2 (en) * 1972-04-21 1978-11-15
JPS55129733U (en) * 1979-03-12 1980-09-13

Also Published As

Publication number Publication date
JPS59118386A (en) 1984-07-09

Similar Documents

Publication Publication Date Title
CN113714789B (en) Screw tightening device based on visual positioning and control method
US7177722B2 (en) Assembling method and apparatus
US5249356A (en) Method and apparatus for mounting electronic component
US4558424A (en) Robot control apparatus
JPH0517564B2 (en)
JP2003225837A (en) Automatic screw tightening device
EP0411139A1 (en) Positioning correction for robots
JPH03270829A (en) Apparatus for automatically attaching automobile door
JPH0238357B2 (en)
US6741055B2 (en) Positioning-controlling apparatus and positioning-controlling method, and part-mounting equipment and part-mounting method
EP0109447A1 (en) Method and device for automatically adjusting working position of robot
JP2020175489A (en) End effector, end effector control method, robot device comprising end effector, article manufacturing method using end effector, control program and recording medium
JPH0212708B2 (en)
JPS584381A (en) Method of positioning and controlling both arm in two-arm robot
JPS59118386A (en) Compensator for position of robot
JPH08257849A (en) Screw lift detection device
JP2564722Y2 (en) Robot control device
JPS62148173A (en) Method of adjusting origin of joint type robot
JPS606816A (en) Sensor for positioning
KR100224862B1 (en) Calibration device and method of robot arm
JP2724054B2 (en) Positioning control device
JPS59166430A (en) Position compensating device in automatic screw fastening machine
KR950003552Y1 (en) Tapping device
JPS6288589A (en) Robot
JPS5997895A (en) Detector for position of work of robot