皆さん、こんにちは!
今回はマシンビジョンのキャリブレーションについて解説しました。慣れないうちはキャリブレーションと聞いてもうまくイメージできないですよね。
僕もロボットシステムの立ち上げで何度かカメラのキャリブレーションをしていますが最初は戸惑いました。
この記事はこんな人におすすめです!
- キャリブレーションってなに?イメージがわかない。
- キャリブレーションって難しそうだけどどうやってするのか知りたい
結論から言うと
- マシンビジョンのキャリブレーションはロボットの座標とビジョンセンサの座標を合わせることです。
- キャリブレーションはビジョンセンサのキャリブレーション機能を使うことでエンドユーザーでもできます。
キャリブレーションしたことがない人でもこの記事を読むことでキャリブレーションのイメージがつかめるようになるはずです。では以下で詳しく見ていきましょう!
ビジョンセンサの役割
まずはロボットと組み合わせるビジョンセンサの役割について説明します。
今回はロボットとビジョンセンサの組み合わせを想定していますが、ビジョンセンサとコンベヤなどの搬送システムとの組み合わせでもマシンビジョンにあたります。
例えばロボットは目が見えないとはよく言われますが、ロボットにビジョンセンサをつけると位置検出がとでも簡単になります。
ロボットは抜群の座行感覚で指定された場所に手を伸ばすことはできます。一度ティーチングをしてしまえば、ロボットは指定された場所にほぼ、狂いなく動作します。でも、目が見えないので、もし、環境が変わって物の位置がズレても気づきません。
それを補正したり、より高度な処理をする目となるのがビジョンセンサの役割です。
適当にワークを置いたり何かの拍子に位置がずれたりしてもビジョンセンサでワークの位置を認識してロボットに正確なワークの位置情報を教えてあげることができます。
また、ワークに傷があったり形状が異なる場合はエラーを出して人に伝えることができます。
ビジョンセンサをつけることでロボットの出来ることは格段に幅が広がります。
キャリブレーションの目的
キャリブレーションとは日本語で言うところの「校正」に当たります。
校正って何?って感じですよねー。校正とは簡単に言うとずれを修正することです。
キャリブレーションは先ほど説明したビジョンセンサの持つピクセル座標とロボットの座標のずれを合わせることです。
カメラ自体は座標を持っていません。撮像した画像の位置はピクセル座標で表します。キャリブレーションはこのピクセルをミリメートルに変換したり、ロボットの位置とカメラの位置のずれを補正したりします。
ロボットの座標とビジョンセンサの座標を合わせる他にもこんなキャリブレーションもあります。
- ビジョンセンサのピクセルと撮像した物の寸法を合わせる。
- 広角レンズなどのレンズによる画像の歪みを直す
- カメラの傾きを補正する
何をどこまで校正する必要があるのかがポイントです。
例えば、ハンドリング目的で多少の位置ずれが許されるような場合、センサの座標とロボットの座標が合わせられれば使えるはずです。シビアに0.1mmレベルの誤差までしか許容出来ないのであれば、レンズや取り付け角度のキャリブレーションなど必要になります。
当然、そこまで求めるとビジョンセンサの種類も限られますし、お値段も高くなります。ロボットよりビジョンセンサの方が高いなんてことにもなります。
キャリブレーションの仕方
キャリブレーションのやり方には2パターンあります。
- ビジョンセンサのもつキャリブレーション機能を使う
- 必要なキャリブレーションの理論を調べて自分で設定する
当然ながらおすすめは圧倒的に1番目の「ビジョンセンサの持つキャリブレーション機能を使う」方法です。ビジョンセンサの選定の時点でメーカーにキャリブレーションのやり方や自動キャリブレーション機能の有無などはしっかり確認しておきましょう。
カメラのピクセル座標とロボットのXY座標の変換ぐらいでしたらキャリブレーションの中でも比較的簡単な部類なので自分ですることもできますが、それでも慣れていないとかなり大変です。
自分で理論を理解してキャリブレーションするのであれば難易度はかなり上がります。しかし、ビジョンセンサのキャリブレーション機能を使ってするキャリブレーションはマニュアルに沿って設定すればできるレベルなので圧倒的に簡単です。
わからなければ購入先のメーカーや商社に連絡すれば教えてもらったりサポートしてもらうこともできるのでエンドユーザーでも設定できます。
ちなみに2Dビジョンセンサと3Dビジョンセンサでもキャリブレーションの仕方はことなり3Dビジョンセンサは3次元になる分手間が増えます。3Dビジョンはキャリブレーションの手間が少ないメーカーをお勧めします。
まとめ
今回はマシンビジョンで行うキャリブレーションについて解説しました。結論は以下になります。
- マシンビジョンのキャリブレーションはロボットの座標とビジョンセンサの座標を合わせることです。
- キャリブレーションはビジョンセンサのキャリブレーション機能を使うことでエンドユーザーでもできます。
ロボットとカメラを扱うのであればキャリブレーションは欠かせません。
ビジョンセンサの世界は奥が深いので今後も記事を増やしていくのでお待ちください!