ビジョンのコツ その2 回転ズレはADJ_OFS

前回は基準位置から離れた同じ向きのワークのズレの調整方法を紹介しました。
今回は、ワークが回転しているときにロボットハンドをワークに合わせて回転させるとズレてしまうことの対策を考えてみます。

ツールの先端を原点とするツール座標をしっかりと設定していても、回転したワークを拾うときにズレはどうしても起きてきてしまうものです。そんなときに役立つのはADJ_OFS(アジャストオフセット)という命令です。今回はADJ_OFSの使い方について書いていきたいと思います。

手順1.ワークを180度回転させ、前回のプログラムをそのまま走らせみます。
↑上下さかさまにワークを置いてプログラムを動かす

.

手順2.ズレ量を調査して、ADJ_OFSで補正させます。
ズレ量を調査したところ、目分量ですが、だいたい次の図のような感じでした。

赤丸がハンドの中心で、X方向に-0.4mm、Y方向に+1.2mmずらすと本来行くべき中心になるようなズレ。ADJ_OFSは偏心する円の中心を補正する役目があるようなので、ズレ量の半分の値をセットしてあげます。
この場合、Xを-0.2mm、Yを+0.6mmになります。
それではプログラムに補正をさせる文を加えてみます。

1: !待機イチへ移動
2:カクジク イチ[1] 100% イチギメ
3:
4: !ビジョン検出
5: ビジョン ケンシュツ ‘VISION_R’
6: ビジョン ホセイデータシュトク ‘VISION_R’ ビジョンレジ[1] ジャンプ ラベル[999]
7:
8: !ADJ_OFSで回転微調整
9: イチレジ[7,1:ADJ_OFS値]=(-.2)     ←X方向-0.2mm
10: イチレジ[7,2:ADJ_OFS値]=.6        ←Y方向 +0.6mm
11: イチレジ[7,3:ADJ_OFS値]=0
12: イチレジ[7,4:ADJ_OFS値]=0
13: イチレジ[7,5:ADJ_OFS値]=0
14: イチレジ[7,6:ADJ_OFS値]=0
15: ヨビダシ ADJ_OFS(1,1,7,1)
16:
17: !ワーク上空へ移動
18: イチレジ[8,1:上空補正]=0
19: イチレジ[8,2:上空補正]=0
20: イチレジ[8,3:上空補正]=30
21: イチレジ[8,4:上空補正]=0
22: イチレジ[8,5:上空補正]=0
23: イチレジ[8,6:上空補正]=0
24:
25:チョクセン イチレジ[41:ワーク基準イチ] 100mm/sec イチギメ ビジョンホセイ,ビジョンレジ[1] イチホセイ,イチレジ[8:上空補正]
26:
27: !ワークへ移動
28:チョクセン イチレジ[41:ワーク基準イチ] 50mm/sec イチギメ ビジョンホセイ,ビジョンレジ[1]
29:
30: シュウリョウ
31:
32: ラベル[999]
33: !ワーク未検出
34: シュウリョウ

オレンジ色のところが新たに加えた部分です。

ADJ_OFS(引数1,引数2,引数3,引数4)の簡単な説明
引数1:補正データの入ったレジスタの種類。ビジョンレジは1、イチレジは2
引数2:引数1のレジスタ番号
引数3:調整量の設定値が入ったイチレジ番号
引数4:補正データを格納するビジョンレジまたはイチレジ番号
詳しくはマニュアルを見ましょう

あとは、このプログラムを動かしつつ、値を少しずつ変えて何度もトライして調整していってください。また、ワークの向きも180度だけではなく90度などもためして合わせこんでください。

どうしても、合わない場合は検出角度によってADJ_OFSの補正値を場合分けすることも可能です。また、ハンドのガタとり(バックラッシュ除去動作)したり、艤装ケーブルのツッパリによる位置ずれなどズレの起こる要因を取り除くことも考えてください。

コメント