JP6859967B2 - コンベアトラッキングシステムおよびキャリブレーション方法 - Google Patents

コンベアトラッキングシステムおよびキャリブレーション方法 Download PDF

Info

Publication number
JP6859967B2
JP6859967B2 JP2018026357A JP2018026357A JP6859967B2 JP 6859967 B2 JP6859967 B2 JP 6859967B2 JP 2018026357 A JP2018026357 A JP 2018026357A JP 2018026357 A JP2018026357 A JP 2018026357A JP 6859967 B2 JP6859967 B2 JP 6859967B2
Authority
JP
Japan
Prior art keywords
mobile device
robot
calibration
patterns
conveyor
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.)
Active
Application number
JP2018026357A
Other languages
English (en)
Other versions
JP2019141935A (ja
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.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Priority to JP2018026357A priority Critical patent/JP6859967B2/ja
Priority to EP18205720.8A priority patent/EP3527335B1/en
Priority to US16/188,281 priority patent/US11021333B2/en
Priority to CN201811353841.5A priority patent/CN110154017B/zh
Publication of JP2019141935A publication Critical patent/JP2019141935A/ja
Application granted granted Critical
Publication of JP6859967B2 publication Critical patent/JP6859967B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G47/00Article or material-handling devices associated with conveyors; Methods employing such devices
    • B65G47/74Feeding, transfer, or discharging devices of particular kinds or types
    • B65G47/90Devices for picking-up and depositing articles or materials
    • B65G47/905Control arrangements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/04Viewing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0093Programme-controlled manipulators co-operating with conveyor means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G43/00Control devices, e.g. for safety, warning or fault-correcting
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G47/00Article or material-handling devices associated with conveyors; Methods employing such devices
    • B65G47/74Feeding, transfer, or discharging devices of particular kinds or types
    • B65G47/90Devices for picking-up and depositing articles or materials
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/04Detection means
    • B65G2203/042Sensors
    • B65G2203/044Optical

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Manipulator (AREA)

Description

本発明は、コンベアトラッキングシステムにおけるキャリブレーションに関する。
ファクトリーオートメーション(FA)分野においては、省力化のため、画像処理を用いて各種の工程を制御する技術が多用されている。このような画像処理技術の適用例の一つとして、ベルトコンベア等の搬送装置によってワークを搬送するとともに、その搬送中のワークをロボットにより、追跡(トラッキング)およびピックアップするような作業工程がある。このような作業工程は、コンベアトラッキング等と称される。
このコンベアトラッキングの技術においては、カメラを用いて搬送装置上のワークを撮像し、その撮像によって得られた画像に対して、画像処理装置を用いてパターンマッチングあるいは2値化処理などの画像計測を行うことで、各ワークの位置を特定する。そして、この特定された各ワークの位置に基づいて、ロボットが各ワークを追跡およびピックアップする。
通常、カメラ画像に対する画像計測によって特定されるワークの位置は、カメラ画像を基準とした座標系(以下、「カメラ座標系」とも称す。)の座標値であり、そのままではロボットの制御には用いることができない。そこで、カメラ座標系において算出された座標値を、ロボットを制御するための座標系(以下、「ロボット座標系」とも称す。)上の座標値に変換する処理が必要となる。
このようなカメラ座標系の座標値とロボット座標系の座標値とを対応付ける関係は、キャリブレーションと呼ばれる操作によって決定される。例えば、特開2012−187651号公報(特許文献1)は、キャリブレーション用のパターンを含むシートを用いて、撮像部の撮像範囲内の座標値を移動機械の座標系の座標値に変換するためのパラメータセットを算出する方法を開示している。
特開2012−187651号公報 特開2009−290852号公報
特許文献1に開示される方法においては、ロボットのハンド先端をキャリブレーション用のパターン上に正確に位置決めする必要がある。ロボットのハンド先端をパターン上に正確に位置決めするためには、ある程度の経験が必要である。経験の乏しいユーザでも正確にキャリブレーションをできるように、例えば、特開2009−290852号公報(特許文献2)に開示されるような技術を用いて、ロボットのハンド先端がいずれの位置にあるのかをカメラで撮像することで計測するようにしてもよい。
しかしながら、キャリブレーションのために新たにカメラを設けることは現実的ではなく、また、新たに設けたカメラ自体のキャリブレーションも必要になってくる。
そこで、ロボット操作の経験の少ないユーザであっても、正確にキャリブレーションが可能な手法を提供することを一つの目的としている。
本開示の一例によれば、コンベアトラッキングシステムが提供される。コンベアトラッキングシステムは、ワークを搬送する搬送装置と、搬送装置に関連付けて配置され、搬送装置により搬送されるワークをピックアップするロボットと、搬送装置の搬送経路に撮像視野を有する撮像部と、撮像部により撮像された画像に対する画像計測を実行する視覚センサと、視覚センサによる画像計測結果に基づいて、予め算出されたパラメータセットを用いて、ロボットに対する動作指令を生成する制御装置と、パラメータセットの算出処理に用いられる、タッチパネルを有するモバイルデバイスとを含む。モバイルデバイスは、予め定められた位置に1または複数のパターンを表示する手段と、1または複数のパターンが表示された状態でタッチされたことに応じて、当該タッチされたタッチ位置を示す情報を制御装置へ送信する手段とを含む。制御装置は、モバイルデバイスが1または複数のパターンが表示された状態で撮像視野に配置されたときの視覚センサによる画像計測結果と、モバイルデバイスがロボットによりタッチされたときのタッチ位置と、モバイルデバイスが撮像視野に配置された状態の位置とロボットによりタッチされたときの位置との間の距離とに基づいて、パラメータセットを算出する手段を含む。
この開示によれば、モバイルデバイスにおいて、1または複数のパターンが表示される位置と、実際にロボットによりタッチされたタッチ位置とを検出することができるので、ユーザの操作スキルが低い場合であっても、その位置ずれを補正した上で、キャリブレーション用のパラメータセットを算出できる。
上述の開示において、モバイルデバイスは、撮像視野に配置されて撮像部により撮像された後に、ロボットによるタッチ動作を受けるようにしてもよい。
この開示によれば、搬送装置においてワークに代えて、モバイルデバイスを搬送することで、キャリブレーション用のパラメータセットを算出できる。
上述の開示において、制御装置は、モバイルデバイスに表示された1または複数のパターンのうち1つのパターンとタッチ位置とのずれ量にさらに基づいて、パラメータセットを算出するようにしてもよい。
この開示によれば、操作スキルの乏しいユーザであっても、誤差の少ないキャリブレーションを実現できる。
上述の開示において、制御装置は、ずれ量を、モバイルデバイスの搬送装置に対する方向に基づいて補正した上で、パラメータセットを算出するようにしてもよい。
この開示によれば、モバイルデバイスが搬送装置に対して傾いて配置されていたとしても、適切にパラメータセットを算出できる。
上述の開示において、モバイルデバイスは、ロボットによるタッチ位置に応じて、少なくとも1つのパターンを表示し、ロボットによるタッチ動作を受けた後に、撮像視野に配置されてもよい。
この開示によれば、タッチ位置に応じた位置にパターンを表示できるので、パターンとタッチ位置とのずれ量の発生が生じないため、キャリブレーションの誤差を低減できる。
上述の開示において、モバイルデバイスは、のパターンを表示するとともに、当該複数のパターンのうち、タッチすべきパターンを他のパターンとは異なる態様で表示する。
この開示によれば、経験の少ないユーザであっても、操作ミスなくキャリブレーションを実現できる。
上述の開示において、モバイルデバイスは、1または複数のパターンとともに、タッチ位置を表示してもよい。
この開示によれば、実際にロボットを操作して、モバイルデバイスをタッチした位置をユーザは確認できるので、ユーザは、自身の操作の正確性などを客観的に把握することができ、それによって操作スキルを向上させることができる。
上述の開示において、モバイルデバイスは、制御装置により算出されたパラメータセットの精度を表示してもよい。
この開示によれば、キャリブレーション用のパラメータセットが算出された後、ユーザは、その算出されたパラメータセットの精度を把握できるので、キャリブレーションのやり直しの必要性を客観的に把握できる。
上述の開示において、制御装置とモバイルデバイスとの間は、ワイヤレス通信でデータを遣り取りするようにしてもよい。
この開示によれば、モバイルデバイスを搬送装置上に配置した状態で、一連のキャリブレーションの手順を完結できる。
本開示の別の一例によれば、コンベアトラッキングシステムにおけるキャリブレーション方法が提供される。コンベアトラッキングシステムは、ワークを搬送する搬送装置と、搬送装置に関連付けて配置され、搬送装置により搬送されるワークをピックアップするロボットと、搬送装置の搬送経路に撮像視野を有する撮像部と、撮像部により撮像された画像に対する画像計測を実行する視覚センサと、視覚センサによる画像計測結果に基づいて、予め算出されたパラメータセットを用いて、ロボットに対する動作指令を生成する制御装置とを含む。キャリブレーション方法は、タッチパネルを有するモバイルデバイスのディスプレイの予め定められた位置に1または複数のパターンを表示するステップと、モバイルデバイスのディスプレイに1または複数のパターンが表示された状態で撮像視野に配置するとともに、視覚センサにより、モバイルデバイスを撮像して得られた画像に対する画像計測結果を取得するステップと、モバイルデバイスのディスプレイに1または複数のパターンが表示された状態でロボットによりモバイルデバイスがタッチされたときのタッチ位置を取得するステップと、画像計測結果と、タッチ位置と、モバイルデバイスが撮像視野に配置された状態の位置とロボットによりタッチされたときの位置との間の距離とに基づいて、パラメータセットを算出するステップとを含む。
この開示によれば、モバイルデバイスにおいて、1または複数のパターンが表示される位置と、実際にロボットによりタッチされたタッチ位置とを検出することができるので、ユーザの操作スキルが低い場合であっても、その位置ずれを補正した上で、キャリブレーション用のパラメータセットを算出できる。
本発明によれば、ロボット操作の経験の少ないユーザであっても、正確にキャリブレーションが可能な手法を提供できる。
本実施の形態に係るコンベアトラッキングシステムの全体構成を示す概略図である。 本実施の形態に係るコンベアトラッキングシステムにおけるキャリブレーション処理の一例を説明するための図である。 本実施の形態に係るコンベアトラッキングシステムに含まれるワークの位置特定に係る装置のハードウェア構成の一例を示す模式図である。 本実施の形態に係るコンベアトラッキングシステムに含まれるワークのピックアップに係る装置のハードウェア構成の一例を示す模式図である。 本実施の形態に係るコンベアトラッキングシステムにおいて使用されるモバイルデバイスのハードウェア構成の一例を示す模式図である。 本実施の形態に係るコンベアトラッキングシステムにおける座標変換およびトラッキングを説明するための図である。 本実施の形態に係るキャリブレーション処理(その1)を説明するための模式図である。 本実施の形態に係るキャリブレーション処理(その1)の処理手順を示すフローチャートである。 図8のステップS9の処理手順を示すフローチャートである。 図9に示すキャリブレーションに係るパラメータセットの算出処理を説明するための図である。 本実施の形態に係るキャリブレーション処理(その2)を説明するための模式図である。 本実施の形態に係るキャリブレーション処理(その2)の処理手順を示すフローチャートである。 本実施の形態に係るモバイルデバイスにおいて提供されるユーザインターフェイス画面の一例を示す図である。 本実施の形態に係るモバイルデバイスにおいて提供されるユーザインターフェイス画面の別の一例を示す図である。 本実施の形態に係るモバイルデバイスにおいて提供されるユーザインターフェイス画面のさらに別の一例を示す図である。 本実施の形態に係るモバイルデバイスにおいて提供されるユーザインターフェイス画面のさらに別の一例を示す図である。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
<A.適用例>
まず、図1および図2を参照して、本発明が適用される場面の一例について説明する。
図1は、本実施の形態に係るコンベアトラッキングシステム1の全体構成を示す概略図である。図1を参照して、コンベアトラッキングシステム1は、ワークWを搬送する搬送装置の一例であるコンベア10を含む。コンベア10は、駆動ローラ12および14によって回転駆動され、紙面左側から任意のタイミングで供給されるワークWを紙面右側へ順次搬送する。
コンベア10の近傍に配置されたロボット300がコンベア10上のワークWをピックアップして、図示しない別のラインなどへ配置する(ピックアンドプレイス動作)。ロボット300は、コンベア10に関連付けて配置され、コンベア10により搬送されるワークWをピックアップする。ロボット300は、ワークWをピックアップする際に、ワークWの向きを予め指定された方向に揃えることもある。典型的には、ワークWは、お菓子等の食品や各種の錠剤等が想定される。
コンベア10の搬送経路に撮像視野を有する撮像部であるカメラ250が配置される。カメラ250の撮像視野はコンベア10の上流側に設定される。カメラ250により撮像された画像は視覚センサ200へ出力される。図1には、視覚センサ200とカメラ250とが互いに独立した構成例を示すが、両者を一体化した構成を採用してもよい。
視覚センサ200は、カメラ250により撮像された画像に対する画像計測を実行する。本実施の形態においては、視覚センサ200は、カメラ250により順次撮像される画像に対して、パターンマッチング等の画像計測処理を行うことで、コンベア10上の各ワークWの位置(より具体的には、重心位置)を計測する。
コンベア10にはエンコーダ450が設けられており、エンコーダ450は、コンベア10の移動量に応じてパルス信号を出力する。エンコーダ450からのパルス信号は、カウンタ400によって受信され、コンベア10の移動量を示す値、および/または、移動速度を示す値を算出する。
制御装置の一例であるPLC(プログラマブルコントローラ)100がコンベアトラッキングシステム1における処理を統括する。PLC100は、フィールドネットワーク18を介して、視覚センサ200およびカウンタ400に接続されている。
PLC100は、視覚センサ200による画像計測結果に基づいて、予め算出されたパラメータセットを用いて、ロボット300に対する動作指令を生成する。より具体的には、PLC100は、視覚センサ200により計測される各ワークWの位置、および、カウンタ400によって算出されるコンベア10の移動量を示す値(および/または、移動速度を示す値)を取得する。PLC100は、コンベア10上に存在する各ワークWの位置をコンベア10の移動に応じて適宜更新し、更新後の各ワークWの位置に基づいて、ロボット300に対して動作指令を出力する。
ロボット300は、PLC100からの動作指令に従って、コンベア10上の対象となるワークWをピックアップし、指定された位置へ移動および配置する。図1には、典型例として、パラレルロボットを図示するが、これに限らず、スカラロボットや垂直多関節ロボットなどを用いてもよい。
ロボットコントローラ350は、PLC100からの動作指令を受けて、当該受信した動作指令に従って、ロボット300を構成する各軸を駆動する。ロボットコントローラ350は、情報系ネットワーク20を介してPLC100と接続されている。
ロボットコントローラ350には、ロボット300を手動操作するためのティーチングペンダント380が接続されている。ユーザがティーチングペンダント380を操作することで、ロボット300はユーザの操作(教示)に応じて動作する。
情報系ネットワーク20には、PLC100およびロボットコントローラ350に加えて、HMI(Human Machine Interface)700が接続されていてもよい。HMI700は、PLC100などが管理する情報をユーザへ提示するとともに、ユーザからの操作を受付けてPLC100へ出力する。
PLC100には、PLC100で実行されるユーザプログラムのソースコード編集、オブジェクトコード変換、デバッギングなどを行うためのサポート装置600が接続可能になっている。
図1に示すように、コンベアトラッキングシステム1においては、カメラ250の撮像視野を基準とする座標系(以下、「カメラ座標系」とも称す。)が定義される。カメラ座標系は、カメラ250により撮像される画像の頂点を基準とした2次元座標系とすることができる。図1に示す例では、画像の左上を基準としたXc軸−Yc軸の座標系が規定されている。すなわち、カメラ250が撮像視野を撮像することで出力される画像に対して、パターンマッチングなどによりワークWの位置を計測する場合、その計測されたワークWの位置は、カメラ座標系(Xc軸−Yc軸の座標系)の座標値として出力される。
また、コンベアトラッキングシステム1においては、ロボット300のハンド先端(ピッキング)位置を規定する座標系(以下、「ロボット座標系」とも称す。)が定義される。図1に示す例では、コンベア10の搬送面と平行な面に沿ってXrb軸およびYrb軸が規定されており、Xrb軸はコンベア10の搬送方向と平行であり、Yrb軸はコンベア10の搬送方向と直交しているとする。また、コンベア10の搬送面に直交する方向にZrb軸が規定される。したがって、ロボット座標系は、Xrb軸、Yrb軸、Zrb軸の3軸で構成されることになる。但し、カメラ座標系を構成するXc軸およびYc軸についても、コンベア10の搬送面と平行であるので、カメラ座標系とロボット座標系との間のキャリブレーションは、カメラ座標系のXc軸およびYc軸とロボット座標系のXrb軸およびYrb軸との関係のみに着目すればよい。
本実施の形態に係るキャリブレーションは、カメラ座標系の座標値とロボット座標系の座標値との間の相互変換を実現するためのパラメータセットを決定することを含む。
図2は、本実施の形態に係るコンベアトラッキングシステム1におけるキャリブレーション処理の一例を説明するための図である。図2を参照して、本実施の形態においては、タッチパネルを有するモバイルデバイス500を用いてキャリブレーションを実施する。モバイルデバイス500は、タッチパネルを有しており、タッチパネルによる検出結果などを用いて、パラメータセットを算出する。モバイルデバイス500としては、例えば、タブレット、ノートパソコン、スマートフォンなどが想定される。
具体的には、モバイルデバイス500のタッチパネルに予め規定されたキャリブレーション用の1または複数のパターン550を表示するとともに、カメラ250の撮像視野にモバイルデバイス500を配置する。このように、モバイルデバイス500は、予め定められた位置に1または複数のパターンを表示する機能を有している。
この状態において、カメラ250により撮像される画像に対して、視覚センサ200がパターン550の位置を計測し、その計測した位置(カメラ座標系の座標値)がPLC100へ送信される。
モバイルデバイス500とPLC100との間は、ワイヤレス通信でデータが遣り取りすることが好ましい。具体的には、PLC100にモバイルデバイス500とワイヤレス通信するためのインターフェイスを設けてもよい。あるいは、フィールドネットワーク18または情報系ネットワーク20にモバイルデバイス500とワイヤレス通信するためのインターフェイスを配置して、PLC100が当該インターフェイスを介して、モバイルデバイス500とデータを遣り取りするようにしてもよい。
続いて、モバイルデバイス500は、コンベア10上を予め定められた距離Lだけ下流側に移動する。このとき、モバイルデバイス500のタッチパネルに表示されているキャリブレーション用のパターン550は同一に維持される。そして、ユーザがロボット300を操作して、ロボット300のハンド先端をモバイルデバイス500のタッチパネルに表示される各パターン550に位置決めする。
このとき、モバイルデバイス500は、ロボット300のハンド先端がタッチパネル上のどこに位置決めされているかを検出できる。モバイルデバイス500は、タッチパネル上のロボット300のハンド先端が位置決めされた位置(ロボット座標系の座標値)をPLC100へ送信する。このように、モバイルデバイス500は、1または複数のパターン550が表示された状態でタッチされたことに応じて、当該タッチされたタッチ位置を示す情報をPLC100へ送信する機能を有している。
PLC100は、エンコーダ450およびカウンタ400を介して、コンベア10が移動した距離L(あるいは、距離Lに相当するカウント数)を取得できる。
PLC100は、パターン550の位置(カメラ座標系の座標値)と、モバイルデバイス500が移動した距離Lと、モバイルデバイス500が検出したハンド先端の位置(ロボット座標系の座標値)とを用いて、キャリブレーションに係るパラメータセットを決定する。
このように、PLC100は、モバイルデバイス500が1または複数のパターンが表示された状態で撮像視野に配置されたときの視覚センサ200による画像計測結果と、モバイルデバイス500がロボット300によりタッチされたときのタッチ位置と、モバイルデバイス500が撮像視野に配置された状態の位置とロボット300によりタッチされたときの位置との間の距離Lとに基づいて、パラメータセットを算出する。
後述するように、カメラ250によるモバイルデバイス500の撮像と、ロボット300によるモバイルデバイス500のタッチとは、いずれの順序で実施してもよい。以下の説明においては、モバイルデバイス500の撮像を先に実施する例と、ロボット300によるモバイルデバイス500のタッチを先に実施する例とをそれぞれ説明する。
本実施の形態においては、カメラ座標系の計測結果(座標値)をロボット座標系に変換するためのパラメータセットの決定、および、当該パラメータセットを用いたカメラ座標系とロボット座標系との間の座標変換演算をPLC100で実施する。このような構成を採用することで、コンベアトラッキングにおいて必要な演算をPLC100にて一括して実行できる。
<B.ハードウェア構成>
次に、本実施の形態に係るコンベアトラッキングシステム1を構成する各装置のハードウェア構成について説明する。
(b1:PLC100)
図3は、本実施の形態に係るコンベアトラッキングシステム1に含まれるワークWの位置特定に係る装置のハードウェア構成の一例を示す模式図である。図3を参照して、PLC100は、一種のコンピュータであり、各種プログラムをプロセッサで実行することで、各種処理を実現する。
PLC100は、プロセッサ102と、メインメモリ104と、フィールドネットワークインターフェイス106と、ワイヤレスネットワークインターフェイス108と、ローカル通信インターフェイス110と、情報系ネットワークインターフェイス112と、ストレージ120とを含む。これらのコンポーネントはバス140に接続される。
プロセッサ102は、ストレージ120などに格納されているプログラムをメインメモリ104に読み出して実行する。プロセッサ102は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)などで構成される。プロセッサ102としては、複数のコアを有する構成を採用してもよいし、プロセッサ102を複数配置してもよい。
メインメモリ104は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などの揮発性記憶装置などで構成される。
フィールドネットワークインターフェイス106は、フィールドネットワーク18を介して、視覚センサ200およびカウンタ400との間でデータを遣り取りするコントローラである。フィールドネットワーク18としては、EtherCAT(登録商標)などの定周期ネットワークを採用することが好ましい。
ワイヤレスネットワークインターフェイス108は、ワイヤレス通信でモバイルデバイス500との間でデータを遣り取りするコントローラである。ワイヤレス通信としては、例えば、IEEE802.11に従う無線LAN(Local Area Network)やBluetooth(登録商標)などを用いることができる。
ローカル通信インターフェイス110は、サポート装置600などとの間でデータを遣り取りするコントローラである。ローカル通信としては、例えば、USB(Universal Serial Bus)などを用いることができる。
情報系ネットワークインターフェイス112は、情報系ネットワーク20を介して、ロボットコントローラ350およびHMI700などとの間でデータを遣り取りするコントローラである。情報系ネットワーク20としては、例えば、一般的なネットワークプロトコルであるイーサネット(登録商標)やEtherNet/IP(登録商標)などを用いることができる。
ストレージ120は、PLC100において実行されるプログラムや各種データを不揮発的に格納する。ストレージ120は、例えば、フラッシュメモリやハードディスクなどの不揮発性記憶装置などで構成される。
図3に示す構成においては、ストレージ120には、PLCシステムモジュール122と、ユーザプログラム124と、トラッキングプログラム126と、キャリブレーションパラメータ128と、キャリブレーションプログラム130と、ロボット位置指令生成プログラム132とを含む。
PLCシステムモジュール122は、ライブラリなどを含んでおり、ユーザプログラム124が実行されることで実現される基本的な制御機能を提供する。ユーザプログラム124は、PLC100の制御対象に応じて、任意に作成されるプログラムであり、シーケンスプログラムおよびモーションプログラムなどを含む。
トラッキングプログラム126は、コンベアトラッキングを実現するためのワークWの位置を逐次更新するような処理を実現するためのコードを含む。トラッキングプログラム126が実行されることで、メインメモリ104に各ワークWの位置を管理するトラッキングレコード105が生成される。キャリブレーションパラメータ128は、後述するような手順によって決定される、キャリブレーションに係るパラメータセットである。キャリブレーションプログラム130は、後述するような手順を実現するためのコードを含む。ロボット位置指令生成プログラム132は、トラッキングプログラム126の実行により管理される各ワークWの位置に基づいて、ロボット300に対して必要な指令(例えば、ワーク追従速度、ピックアップ動作の開始位置、ワークWの移動先など)を生成する。
図3には、プロセッサ102がプログラムを実行することで必要な処理が提供される構成例を示したが、これらの提供される処理の一部または全部を、専用のハードウェア回路(例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。
(b2:視覚センサ200およびカメラ250)
図3を参照して、視覚センサ200は、一種のコンピュータであり、カメラ250により順次撮像される画像に対して、パターンマッチング等の画像計測処理を行うことで、コンベア10上の各ワークWの位置を計測する。
より具体的には、視覚センサ200は、物体認識エンジン202と、カメラインターフェイス204と、フィールドネットワークインターフェイス206とを含む。
物体認識エンジン202は、カメラ250からの入力画像に対してパターンマッチング等の画像計測処理を行う。物体認識エンジン202は、認識されたワークの位置として、カメラ座標系の座標値(Xci,Yci)を出力する。カメラインターフェイス204は、カメラ250からの画像を取得し、カメラ250に対して各種設定を与える。フィールドネットワークインターフェイス206は、フィールドネットワーク18を介して、PLC100との間でデータ(この例では、ワークWの座標値)を遣り取りするコントローラである。
視覚センサ200は、プロセッサがプログラムを実行することで実現されてもよいし、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
カメラ250は、レンズや絞りなどの光学系と、CCD(Charge Coupled Device)イメージセンサやCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの受光素子とを含む。カメラ250は、視覚センサ200からの指令に従って撮像するとともに、その撮像によって得られた画像を視覚センサ200へ出力する。
(b3:ロボット300およびロボットコントローラ350)
図4は、本実施の形態に係るコンベアトラッキングシステム1に含まれるワークWのピックアップに係る装置のハードウェア構成の一例を示す模式図である。図4を参照して、ロボットコントローラ350は、ロボット300を構成するモータ310−1,310−2,・・・,310−nを駆動することで、ロボット300に指定された動作を行わせる。
ロボットコントローラ350は、情報系ネットワークインターフェイス352と、位置コントローラ354と、ドライバ356−1,356−2,・・・,356−nとを含む。
情報系ネットワークインターフェイス352は、情報系ネットワーク20を介して、PLC100との間でデータ(この例では、動作指令)を遣り取りするコントローラである。位置コントローラ354は、PLC100からの動作指令に従って、ドライバ356−1,356−2,・・・,356−nに対して位置指令(例えば、移動量に応じた数のパルス)を出力する。ドライバ356−1,356−2,・・・,356−nは、位置コントローラ354からの指令に従って、ロボット300のモータ310−1,310−2,・・・,310−nを駆動するための電力信号を発生する。
ロボットコントローラ350は、プロセッサがプログラムを実行することで実現されてもよいし、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
(b4:カウンタ400およびエンコーダ450)
再度図4を参照して、カウンタ400は、エンコーダ450から出力されるパルス信号をカウントすることで、エンコーダ450の検出対象(本実施の形態においては、コンベア10)の移動量を検出する。
より具体的には、カウンタ400は、パルスカウンタ402と、演算処理部404と、フィールドネットワークインターフェイス206とを含む。
パルスカウンタ402は、カウンタ400からのパルス信号の入力を受けて、その立上りまたは立下りの発生回数を積算する。演算処理部404は、パルスカウンタ402によるカウント数に所定の係数を乗じて、検出対象(コンベア10)の移動量を算出する。あるいは、演算処理部404は、パルスカウンタ402によるカウント数をそのまま出力することもできる。フィールドネットワークインターフェイス406は、フィールドネットワーク18を介して、PLC100との間でデータ(この例では、カウント数)を遣り取りするコントローラである。
(b5:モバイルデバイス500)
図5は、本実施の形態に係るコンベアトラッキングシステム1において使用されるモバイルデバイス500のハードウェア構成の一例を示す模式図である。図5を参照して、モバイルデバイス500は、プロセッサ502と、メインメモリ504と、ストレージ510と、ワイヤレスネットワークインターフェイス516と、タッチパネル520とを含む。これらのコンポーネントはバス518に接続される。
プロセッサ502は、ストレージ510に格納されているOS(Operating System)512およびキャリブレーションアプリ514などのプログラムをメインメモリ504に読み出して実行する。プロセッサ502は、例えば、CPU、MPU、GPUなどで構成される。プロセッサ502としては、複数のコアを有する構成を採用してもよいし、プロセッサ502を複数配置してもよい。メインメモリ504は、例えば、DRAMやSRAMなどの揮発性記憶装置などで構成される。ストレージ510は、例えば、フラッシュメモリやハードディスクなどの不揮発性記憶装置などで構成される。
ワイヤレスネットワークインターフェイス516は、ワイヤレス通信でPLC100などとの間でデータを遣り取りするコントローラである。
タッチパネル520は、外部からのタッチ操作を受けて、そのタッチされた位置を検出する。タッチパネル520は、各種情報を表示するためのディスプレイ522と、タッチ位置を検出するための位置検出デバイス524とを含む。なお、位置検出デバイス524としては、静電容量式、感圧式、超音波式などの公知のデバイスを用いることができる。
キャリブレーションアプリ514は、後述するような、キャリブレーション用のパターンをディスプレイ522に表示するとともに、ロボット300などによりタッチされた位置を検出して、PLC100へ送信するような処理を実現する。
(b6:サポート装置600)
サポート装置600は、PLC100で実行されるユーザプログラムのソースコード編集、オブジェクトコード変換、デバッギングなどの機能を提供する。典型的には、サポート装置600は、公知のアーキテクチャに従う汎用コンピュータでサポートプログラムを実行することで実現される。汎用コンピュータのハードウェア構成については公知であるので、詳細な説明は行わない。
(b7:HMI700)
HMI700は、PLC100などが管理する情報をユーザへ提示するとともに、ユーザからの操作を受付けてPLC100へ出力する。典型的には、HMI装置700は、公知のアーキテクチャに従う汎用コンピュータでサポートプログラムを実行することで実現される。汎用コンピュータのハードウェア構成については公知であるので、詳細な説明は行わない。
<C.座標変換およびキャリブレーション>
次に、本実施の形態に係るコンベアトラッキングシステム1における座標変換およびそれに向けられたキャリブレーションについて説明する。
図6は、本実施の形態に係るコンベアトラッキングシステム1における座標変換およびトラッキングを説明するための図である。図6(A)を参照して、カメラ250の撮像視野に設定されたカメラ座標系(Xc軸−Yc軸の座標系)において、ワークWの位置が計測されたとする。この計測された位置は、カメラ座標系の座標値(Xc1,Yc1)と示すことができる。カメラ座標系の座標値(Xc1,Yc1)をロボット座標系(Xrb軸−Yrb軸の座標系)の座標値(Xrb1,Yrb1)として表現する処理が座標変換である。本実施の形態に係る座標変換は、カメラ座標系の座標値(Xc1,Yc1)をロボット座標系の座標値(Xrb1,Yrb1)に変換する処理に加えて、その逆変換の処理も含み得る。
座標変換の一例として、例えば、以下の(1−1)式および(1−2)式に示される、な変換式を用いることができる。
Xrb1=A・Xc1+B・Yc1+C ・・・(1−1)
Yrb1=D・Xc1+E・Yc1+F ・・・(1−2)
上式において、係数A,B,C,D,E,Fがキャリブレーションに係るパラメータセットに相当する。
なお、座標変換式としては、上述したような変換式に限られずに、任意の変換式を用いることができる。キャリブレーションに係るパラメータセットは、用いられる変換式に応じたものとなる。
図6(B)を参照して、ワークWがコンベア10上を搬送されると、その搬送された距離だけ位置が変化することになるので、コンベア10の単位カウント数当たりの移動量(移動速度)をカメラ座標系(Xc軸−Yc軸の座標系)の各成分で表現したものをdX,dYとすると、任意の時刻tにおけるワークWの位置は、以下の(2−1)式および(2−2)式に示される換算式に従って算出できる。
Xrb1(t)=Xrb1(0)+dX・Enc(t) ・・・(2−1)
Yrb1(t)=Yrb1(0)+dY・Enc(t) ・・・(2−1)
但し、Enc(t)は、ワークWの位置が計測されたタイミング(時刻t0)におけるカウント数からのカウント数の増分を示す。
コンベアトラッキングシステム1においては、PLC100は、視覚センサ200により任意のワークWの位置が計測されたタイミングにおけるカウント数を当該ワークWの初期カウント数として保持する。そして、PLC100は、各ワークWについてのカウント数の増分に基づいて、各ワークWの位置を逐次更新(すなわち、トラッキング)する。
PLC100は、コンベア10による搬送によって、逐次更新される各ワークWの位置に基づいて、ロボット300に対して動作指令を出力する。
本実施の形態に係るコンベアトラッキングシステム1における処理を概略すると以下のようになる。
搬送対象であるワークWは、コンベア10の上流側から順次搬送される。コンベア10の上流側に配置されたカメラ250によりワークWを撮像することで、視覚センサ200が搬送対象となるワークWの位置(通常は、ワークWの重心位置)を計測する。PLC100は、視覚センサ200により計測されたワークWの位置(カメラ座標系の座標値)をロボット座標系の座標値に変換するとともに、コンベア10の移動量に応じて、各ワークWの位置を順次更新するともに、ロボット300に対して動作指令を与える。
ロボット300は、PLC100からの動作指令に従って、所定のトラッキング範囲(動作範囲)内に入来するワークWを順番にピックアップおよび搬送する。
本実施の形態に係るコンベアトラッキングシステム1においては、タッチパネルを有するモバイルデバイス500を用いてキャリブレーションを実施する。以下、キャリブレーションの手順などについて説明する。
<D.キャリブレーション処理(その1)>
まず、キャリブレーション処理(その1)について説明する。このキャリブレーション処理(その1)においては、従来のキャリブレーション用のパターンを含むシートに代えて、モバイルデバイス500を用いる。
(d1:概略)
図7は、本実施の形態に係るキャリブレーション処理(その1)を説明するための模式図である。図8は、本実施の形態に係るキャリブレーション処理(その1)の処理手順を示すフローチャートである。
図7および図8を参照して、まず、モバイルデバイス500をキャリブレーション用の1または複数のパターン550を表示する状態のセットし(ステップS1)、その状態でモバイルデバイス500をカメラ250の撮像視野のコンベア10上に配置する(ステップS2)。
続いて、カメラ250により、1または複数のパターン550を表示するモバイルデバイス500を撮像する(ステップS3)とともに、視覚センサ200が撮像された画像に対してパターンマッチングなどを行うことで各パターン550の位置(例えば、中心位置または重心位置)を計測する(ステップS4)。
その後、コンベア10を駆動して、モバイルデバイス500をトラッキング範囲(ロボット300の動作範囲)内に搬送する(ステップS5)。そして、ユーザは、ティーチングペンダント380などを用いて、ロボット300のハンド先端320をモバイルデバイス500上に表示されているパターン550に位置決めする(ステップS6)。このように、モバイルデバイス500は、撮像視野に配置されてカメラ250により撮像された後に、ロボット300によるタッチ動作を受ける。
モバイルデバイス500は、ロボット300のハンド先端320が位置決めされた位置を検出し、その位置を示す情報をPLC100へ送信する(ステップS7)。
そして、予め定められた数のパターン550に位置決めが行われたか否かが判断される(ステップS8)。予め定められた数のパターン550に位置決めが行われていなければ(ステップS8においてNO)、ステップS6以下の処理が繰返される。予め定められた数のパターン550に位置決めが行われていれば(ステップS8においてYES)、ステップS9以下の処理が実行される。
なお、ロボット300のハンド先端320の位置決め先は、1つのパターン550だけであってもよいが、3つのパターン550について位置決めすることが好ましい。
PLC100は、(1)モバイルデバイス500のディスプレイに表示されるパターン550の位置計測結果、(2)モバイルデバイス500のディスプレイ上における各パターン550の表示位置、(3)モバイルデバイス500において検出されたハンド先端320の位置、(4)ロボット300のティーチング結果(ロボット座標系のハンド先端320の位置)、(5)コンベア10の移動量、に基づいて、キャリブレーションに係るパラメータセットを算出する(ステップS9)。そして、PLC100は、算出したパラメータセットを格納する(ステップS10)。以上のような手順によってキャリブレーションは完了する。
(d2:パラメータセットの算出)
次に、図8のステップS9に示されるキャリブレーションに係るパラメータセットを算出するより詳細な手順について説明する。
図9は、図8のステップS9の処理手順を示すフローチャートである。図10は、図9に示すキャリブレーションに係るパラメータセットの算出処理を説明するための図である。図9に示される各ステップは、典型的には、PLC100のプロセッサ102がキャリブレーションプログラム130(図3参照)を実行することで実現される。
図9を参照して、PLC100は、(1)モバイルデバイス500のディスプレイに表示されるパターン550の位置計測結果に基づいて、モバイルデバイス500のコンベア10に対する傾きθtを算出する(ステップS91)。なお、モバイルデバイス500のコンベア10に対する傾きθtの処理は、視覚センサ200によって実行されてもよい。この場合、PLC100は、モバイルデバイス500のコンベア10に対する傾きθtを視覚センサ200から取得することになる。
図10に示すように、モバイルデバイス500のコンベア10に対する傾きθtは、視覚センサ200がモバイルデバイス500を撮像することで計測される各パターン550の位置関係に基づいて、コンベア10に対するモバイルデバイス500の傾きとして算出される。
なお、位置決め先のパターン550のカメラ座標系の座標値(Xc1,Yc1)も併せて取得される。
再度図9を参照して、PLC100は、続いて、(2)モバイルデバイス500のディスプレイ上における各パターン550の表示位置(モバイルデバイス500のディスプレイ上の座標値)と、(3)モバイルデバイス500において検出されたハンド先端320の位置(モバイルデバイス500におけるディスプレイ上の座標値)とに基づいて、位置決め先のパターン550からのずれ量を算出する(ステップS92)。算出されるずれ量は、モバイルデバイス500のディスプレイにおける座標値の差として規定される。後述の処理のために、モバイルデバイス500のディスプレイの表示領域に沿って規定される2つの軸成分の組合せとして規定される(図10中のdiff_xおよびdiff_y)。
より具体的には、図10に示すように、モバイルデバイス500は、ディスプレイ上のいずれの位置にパターン550を表示しているのかを知っているので、位置決め先のパターン550のディスプレイ上における座標値(Xd1’,Yd1’)をPLC100へ知らせることができる。また、モバイルデバイス500は、ロボット300のハンド先端320がモバイルデバイス500に触れたディスプレイ上における座標値(Xd1,Yd1)をPLC100へ知らせることができる。
PLC100は、モバイルデバイス500に表示された1または複数のパターン550のうち1つの位置決め先のパターン550とタッチ位置とのずれ量にさらに基づいて、パラメータセットを算出する。
より具体的には、PLC100は、モバイルデバイス500から取得するずれ量を、モバイルデバイス500のコンベア10に対する方向に基づいて補正した上で、パラメータセットを算出する。以下、この処理手順について示す。
PLC100は、位置決め先のパターン550の座標値(Xd1’,Yd1’)とハンド先端320の座標値(Xd1,Yd1)とに基づいて、位置決め先のパターン550とハンド先端320とを結ぶ、ずれ量ベクトルdiff_L(diff_x,diff_y)を算出する。また、PLC100は、モバイルデバイス500のディスプレイに対する、ずれ量ベクトルdiff_Lの傾きθ1(=atan(diff_y/diff_x)[rad])を算出する。
再度図9を参照して、PLC100は、ステップS91において算出した傾きθtに基づいて、ステップS92において算出したずれ量を、ロボット座標系におけるずれ量に変換する(ステップS93)。
より具体的には、図10に示すように、PLC100は、傾きθtおよび傾きθ1を用いて、位置決め先のパターン550とハンド先端320との間のずれ量ベクトル(ΔXrb1,ΔYrb1(ロボット座標系))を、以下の(3−1)式および(3−2)式に示される関係式に従って算出する。
ΔXrb1=k×diff_L×cos(θt+θ1) ・・・(3−1)
ΔYrb1=k×diff_L×sin(θt+θ1) ・・・(3−2)
但し、係数kは、モバイルデバイス500のディスプレイの画素値の大きさをロボット座標系の大きさに適合させるための補正係数であり、ディスプレイの大きさおよび解像度などに基づいて、予め取得されている。
再度図9を参照して、PLC100は、ロボット座標系におけるずれ量に用いて、(4)ロボット300のティーチング結果(Xrb1,Yrb1)を補正することで、位置決め先のパターン550のロボット座標系を算出する(ステップS94)。また、PLC100は、(5)コンベア10の移動量に基づいて、位置決め先のパターン550のロボット座標系における移動量を算出する(ステップS95)。そして、PLC100は、(1)モバイルデバイス500のディスプレイに表示されるパターン550の位置計測結果(カメラ座標系の座標値)を変換して得られるロボット座標系の座標値と、ステップS95において算出した移動量とを用いて、位置決め先のパターン550についての、キャリブレーションに係る関係式を決定する(ステップS96)。ステップS96において決定される関係式は、変換関数Fx,Fyを用いて、以下の(4−1)式および(4−2)式のようになる。
Xrb1’=Fx(Xc1)+dX・Enc
=Xrb1+k×diff_L×cos(θt+θ1)
=Xrb1+ΔXrb1 ・・・(4−1)
Yrb1’=Fx(Yc1)+dY・Enc
=Yrb1+k×diff_L×sin(θt+θ1)
=Yrb1+ΔYrb1 ・・・(4−2)
但し、Encは、モバイルデバイス500を移動させた際にカウントされたカウント数を示す。
再度図9を参照して、PLC100は、位置決め先のパターン550のすべてについて、キャリブレーションに係るパラメータセットの算出が完了したか否かを判断する(ステップS97)。キャリブレーションに係るパラメータセットの算出が完了していない位置決め先のパターン550が残っている場合(ステップS97においてNO)、PLC100は、別の位置決め先のパターン550について、ステップS92以下の処理を繰返す。
一方、すべての位置決め先のパターン550について、キャリブレーションに係るパラメータセットの算出が完了している場合(ステップS97においてYES)、PLC100は、ステップS96において決定した、位置決め先のパターン550毎の関係式(上述の(4−1)式および(4−2)式)に基づいて、キャリブレーションに係るパラメータセットを算出する(ステップS98)。このパラメータセットの算出は、連立一次方程式を解くことになる。
以上のような処理によって、キャリブレーションに係るパラメータセットの算出が完了し、処理は図8のステップS10に戻る。
<E.キャリブレーション処理(その2)>
次に、キャリブレーション処理(その2)について説明する。このキャリブレーション処理(その2)においては、先に、ロボット300のハンド先端320の位置をモバイルデバイス500により検出した上で、検出された位置をカメラ250により撮像することで、キャリブレーションに係るパラメータセットを算出する。
(e1:概略)
図11は、本実施の形態に係るキャリブレーション処理(その2)を説明するための模式図である。図12は、本実施の形態に係るキャリブレーション処理(その2)の処理手順を示すフローチャートである。
図11および図12を参照して、まず、モバイルデバイス500をトラッキング範囲(ロボット300の動作範囲)内に配置する(ステップS11)。そして、ユーザは、ティーチングペンダント380などを用いて、ロボット300のハンド先端320をモバイルデバイス500上の任意の位置にタッチさせる(ステップS12)。モバイルデバイス500は、ロボット300のハンド先端320が位置決めされた位置を検出し、その位置にパターン550を表示する(ステップS13)。
その後、コンベア10を逆方向に駆動して、モバイルデバイス500をカメラ250の撮像視野に搬送する(ステップS14)。続いて、カメラ250により、パターン550を表示するモバイルデバイス500を撮像する(ステップS15)とともに、視覚センサ200が撮像された画像に対してパターンマッチングなどを行うことでパターン550の位置(例えば、中心位置または重心位置)を計測する(ステップS16)。
このように、モバイルデバイス500は、ロボット300によるタッチ位置に応じて、少なくとも1つのパターン550を表示する。そして、モバイルデバイス500は、ロボット300によるタッチ動作を受けた後に、撮像視野に配置される。この撮像視野に配置されたモバイルデバイス500をカメラ250により撮像することで取得される画像計測結果に基づいて、パラメータセットが算出される。
PLC100は、(1)モバイルデバイス500のディスプレイに表示されるパターン550の位置計測結果、(2)モバイルデバイス500において検出されたハンド先端320の位置、(3)ロボット300のティーチング結果(ロボット座標系のハンド先端320の位置)、(4)コンベア10の移動量、に基づいて、キャリブレーションに係るパラメータセットを算出する(ステップS17)。そして、PLC100は、算出したパラメータセットを格納する(ステップS18)。以上のような手順によってキャリブレーションは完了する。
(e2:パラメータセットの算出)
次に、図10のステップS17に示されるキャリブレーションに係るパラメータセットを算出するより詳細な手順について説明する。
図10を参照して、モバイルデバイス500は、ロボット300のハンド先端がタッチパネルにタッチした位置を検出するとともに、その検出した位置にパターン550を表示する。ロボット300のティーチング結果(Xrb1,Yrb1)は、表示されるパターン550と対応するものとなる。
その後、モバイルデバイス500をカメラ250の撮像視野まで移動させることになるが、この移動量Enc(モバイルデバイス500を移動させた際にカウントされたカウント数)も既知である。
モバイルデバイス500をカメラ250の撮像視野に配置した状態で、視覚センサ200がモバイルデバイス500を撮像することでパターン550の位置(Xc1,Yc1)を取得できる。
最終的には、変換関数Fx,Fyを用いて、以下の(5−1)式および(5−2)式のようになる。
Fx(Xc1)+dX・Enc=Xrb1 ・・・(5−1)
Fy(Xc1)+dY・Enc=Yrb1 ・・・(5−2)
PLC100は、この(5−1)式および(5−2)式に基づいて、キャリブレーションに係るパラメータセットを算出する。
<F.ユーザインターフェイス>
次に、本実施の形態に係るモバイルデバイス500において提供されるユーザインターフェイスの一例について説明する。
(f1:タッチ位置への誘導)
モバイルデバイス500においては、1または複数のパターン550のうち、タッチすべきパターン550を他のパターン550とは異なる態様で表示するようにしてもよい。
図13は、本実施の形態に係るモバイルデバイス500において提供されるユーザインターフェイス画面の一例を示す図である。図13を参照して、モバイルデバイス500のディスプレイには、キャリブレーション用の1または複数のパターン550が表示される。これらのパターン550の表示に加えて、キャリブレーションの各段階において、ロボット300のハンド先端320を位置決めすべきパターン550が強調表示されるようにしてもよい。すなわち、位置決め先のパターン550には、位置決め先であることを示す強調表示560が付加される。
ユーザは、このような強調表示560に従って、ロボット300のハンド先端320を位置決めする。ロボット300のハンド先端320を複数のパターン550に順次位置決めしなければならない場合には、強調表示560の表示位置が順次切替わることになる。
いずれのパターン550をロボット300のハンド先端320でタッチすればよいかを示す強調表示560を用いることで、ユーザによるキャリブレーションの操作の煩雑さを低減できる。すなわち、ユーザが間違ったパターン550をハンド先端320でタッチするような事態を回避できる。
これにより、経験の乏しいユーザであっても、適切にキャリブレーションを実行できる。
(f2:タッチ位置の確認)
モバイルデバイス500においては、1または複数のパターン550とともに、実際にタッチされたタッチ位置を表示するようにしてもよい。
図14は、本実施の形態に係るモバイルデバイス500において提供されるユーザインターフェイス画面の別の一例を示す図である。図14を参照して、モバイルデバイス500のディスプレイには、キャリブレーション用の1または複数のパターン550が表示される。これらのパターン550の表示に加えて、ロボット300のハンド先端320が位置決めされて、モバイルデバイス500がハンド先端320のタッチが検出された位置を示すタッチ位置表示570が提供されてもよい。
図14には、一例として、円形のタッチ位置表示570を例示するが、点、楕円、多角形、星形、波紋などの任意の形状を用いてもよい。また、タッチ位置表示570の表示色についても任意の色を採用することができ、視認性を高めるために、点滅や表示色の変化などを採用してもよい。
ユーザは、ロボット300のハンド先端320を位置決めした後、タッチ位置表示570を参照することで、位置決め先のパターン550に正しく位置決めできているのかを確認することができる。また、位置決め先のパターン550と実際にタッチされた位置であるタッチ位置表示570との差を認識することで、ロボット300のクセや傾向を見出すことができ、キャリブレーションのためのロボット300の操作スキルを向上させることができる。
(f3:キャリブレーション精度の表示)
本実施の形態に係るキャリブレーションにおいては、パラメータセットの算出過程における回帰式からのずれなどに基づいて、キャリブレーション精度を算出できる。このキャリブレーション精度は、典型的には、PLC100において算出される。PLC100において算出されるキャリブレーション精度をモバイルデバイス500へ送信されてもよい。このような構成を採用した場合には、モバイルデバイス500を介して、キャリブレーション精度をユーザへ通知できる。
すなわち、モバイルデバイス500においては、PLC100により算出されたパラメータセットの精度を表示するようにしてもよい。
本実施の形態に係るコンベアトラッキングシステム1においては、モバイルデバイス500により検出されたタッチ位置がワイヤレス通信などによりPLC100へ送信される。そして、PLC100においてキャリブレーションに係るパラメータセットが算出されるとともに、その算出されたキャリブレーションのキャリブレーション精度についても算出される。そして、その算出されたキャリブレーション精度がモバイルデバイス500へ戻されることによって、ユーザは、キャリブレーションの操作を行った結果を即座に確認することができ、もし、十分なキャリブレーション精度が得られていないと判断した場合には、キャリブレーションの操作を即座にやり直すことができる。
図15は、本実施の形態に係るモバイルデバイス500において提供されるユーザインターフェイス画面のさらに別の一例を示す図である。図15を参照して、モバイルデバイス500のディスプレイには、PLC100から受信したキャリブレーション精度の数値が表示(数値表示580)されるとともに、キャリブレーションのやり直しを問い合わせるメッセージ582も表示される。
このようなメッセージ582に対して、ユーザは、キャリブレーションをやり直す場合には、「はい」のボタン584を選択し、そうでない場合には、「いいえ」のボタン586を選択する。
あるいは、キャリブレーション精度が予め定められた値に到達していない場合には、キャリブレーションをやり直す旨をユーザに指示するようにしてもよい。
このように、本実施の形態に係るモバイルデバイス500によれば、キャリブレーションの操作を行うと、即座にキャリブレーション精度を確認できるので、キャリブレーションを適切に行えたか否かを確実に判断できる。また、キャリブレーションを適切に行った場合の原因などをユーザ自身で考えることで、キャリブレーションのためのロボット300の操作スキルを向上させることができる。
(f4:ロボット操作支援)
本実施の形態に係るコンベアトラッキングシステム1においては、モバイルデバイス500において、表示されているパターン550の位置と実際にハンド先端320がタッチされた位置との差を算出できるので、その算出される差に基づいて、ユーザによるキャリブレーション操作のクセや傾向を取得できる。このようなユーザのクセや傾向に応じて、ユーザに対して、ロボット300の操作方法を支援するようにしてもよい。
図16は、本実施の形態に係るモバイルデバイス500において提供されるユーザインターフェイス画面のさらに別の一例を示す図である。図16を参照して、モバイルデバイス500のディスプレイには、例えば、取得されたユーザによるキャリブレーション操作のクセや傾向の内容とともに、そのクセや傾向に応じたガイダンスを含む支援メッセージ590を表示してもよい。
具体的には、支援メッセージ590には、ユーザ操作の傾向とともに、ユーザがロボット300のハンド先端320を操作するためのコツのようなものを提示する。このような支援メッセージ590をユーザに提示することで、例えば、ユーザがキャリブレーションをやり直すような場合には、ロボット300のハンド先端320をより適切に位置決めできるようになる。このような支援メッセージ590をユーザへ提示することで、キャリブレーションのためのロボット300の操作スキルを向上させることができる。
<G.付記>
上述したような本実施の形態は、以下のような技術思想を含む。
[構成1]
ワーク(W)を搬送する搬送装置(10)と、
前記搬送装置に関連付けて配置され、前記搬送装置により搬送されるワークをピックアップするロボット(300)と、
前記搬送装置の搬送経路に撮像視野を有する撮像部(250)と、
前記撮像部により撮像された画像に対する画像計測を実行する視覚センサ(200)と、
前記視覚センサによる画像計測結果に基づいて、予め算出されたパラメータセットを用いて、前記ロボットに対する動作指令を生成する制御装置(100)と、
前記パラメータセットの算出処理に用いられる、タッチパネル(520)を有するモバイルデバイス(500)とを備え、
前記モバイルデバイスは、
予め定められた位置に1または複数のパターン(550)を表示する手段(520)と、
前記1または複数のパターンが表示された状態でタッチされたことに応じて、当該タッチされたタッチ位置を示す情報を前記制御装置へ送信する手段(516)とを含み、
前記制御装置は、
前記モバイルデバイスが前記1または複数のパターンが表示された状態で前記撮像視野に配置されたときの前記視覚センサによる画像計測結果と、前記モバイルデバイスが前記ロボットによりタッチされたときの前記タッチ位置と、前記モバイルデバイスが前記撮像視野に配置された状態の位置と前記ロボットによりタッチされたときの位置との間の距離とに基づいて、前記パラメータセットを算出する手段(130)を含む、コンベアトラッキングシステム。
[構成2]
前記モバイルデバイスは、前記撮像視野に配置されて前記撮像部により撮像された後に、前記ロボットによるタッチ動作を受ける、構成1に記載のコンベアトラッキングシステム。
[構成3]
前記制御装置は、前記モバイルデバイスに表示された前記1または複数のパターンのうち1つのパターンと前記タッチ位置とのずれ量にさらに基づいて、前記パラメータセットを算出する、構成1または2に記載のコンベアトラッキングシステム。
[構成4]
前記制御装置は、前記ずれ量を、前記モバイルデバイスの前記搬送装置に対する方向に基づいて補正した上で、前記パラメータセットを算出する、構成3に記載のコンベアトラッキングシステム。
[構成5]
前記モバイルデバイスは、
前記ロボットによるタッチ位置に応じて、少なくとも1つのパターンを表示し、
前記ロボットによるタッチ動作を受けた後に、前記撮像視野に配置される、構成1に記載のコンベアトラッキングシステム。
[構成6]
前記モバイルデバイスは、前記1または複数のパターンのうち、タッチすべきパターンを他のパターンとは異なる態様(560)で表示する、構成1〜5のいずれか1項に記載のコンベアトラッキングシステム。
[構成7]
前記モバイルデバイスは、前記1または複数のパターンとともに、前記タッチ位置(570)を表示する、構成1〜6のいずれか1項に記載のコンベアトラッキングシステム。
[構成8]
前記モバイルデバイスは、前記制御装置により算出されたパラメータセットの精度(580)を表示する、構成1〜7のいずれか1項に記載のコンベアトラッキングシステム。
[構成9]
前記制御装置と前記モバイルデバイスとの間は、ワイヤレス通信でデータを遣り取りする、構成1〜8のいずれか1項に記載のコンベアトラッキングシステム。
[構成10]
コンベアトラッキングシステム(1)におけるキャリブレーション方法であって、
前記コンベアトラッキングシステムは、
ワーク(W)を搬送する搬送装置(10)と、
前記搬送装置に関連付けて配置され、前記搬送装置により搬送されるワークをピックアップするロボット(300)と、
前記搬送装置の搬送経路に撮像視野を有する撮像部(250)と、
前記撮像部により撮像された画像に対する画像計測を実行する視覚センサ(200)と、
前記視覚センサによる画像計測結果に基づいて、予め算出されたパラメータセットを用いて、前記ロボットに対する動作指令を生成する制御装置(100)とを備え、
前記キャリブレーション方法は、
タッチパネルを有するモバイルデバイスのディスプレイの予め定められた位置に1または複数のパターンを表示するステップ(S1)と、
前記モバイルデバイスのディスプレイに前記1または複数のパターンが表示された状態で前記撮像視野に配置するとともに、前記視覚センサにより、前記モバイルデバイスを撮像して得られた画像に対する画像計測結果を取得するステップ(S2〜S4)と、
前記モバイルデバイスのディスプレイに前記1または複数のパターンが表示された状態で前記ロボットにより前記モバイルデバイスがタッチされたときのタッチ位置を取得するステップ(S5〜S7)と、
前記画像計測結果と、前記タッチ位置と、前記モバイルデバイスが前記撮像視野に配置された状態の位置と前記ロボットによりタッチされたときの位置との間の距離とに基づいて、前記パラメータセットを算出するステップ(S9)とを備える、コンベアトラッキングシステムにおけるキャリブレーション方法。
<H.まとめ>
本実施の形態に係るようなコンベアトラッキングを運用するにあたっては、カメラ座標系とロボット座標系との間の変換を行うためのパラメータセットをキャリブレーションにより算出する必要がある。
従来のキャリブレーション方法としては、キャリブレーション用のパターンを含むシートをコンベア上に配置するとともに、カメラで撮像することで、パターンの重心位置をカメラ座標系の座標値として取得する。そして、コンベアを動作させて、ロボットがワークをピックアップする位置までキャリブレーション用のパターンを移動する。そして、ロボットのハンド先端をキャリブレーション用の各パターンの重心位置に位置決めすることで、その位置(ロボット座標系の座標値)を教示する。最終的に、カメラ座標系の座標値(カメラによる計測結果)と、ロボット座標系の座標値(ロボットの教示結果)と、コンベアの移動距離とに基づいて、パラメータセットを算出する。このとき、ロボットの教示は少なくとも3点が必要となる。
上述したような従来の手法では、ロボットの教示位置をキャリブレーション用のパターンに正しく位置合わせしなければ、座標変換式は誤差を含んだものとなる。このような誤差を含んだ座標変換式を用いて、ピックアップ動作を行うための指令を生成すると、ロボットがワークを吸着や把持するのを失敗することになる。
これに対して、本実施の形態においては、タッチパネルを有するモバイルデバイス500を用いて、モバイルデバイス500のディスプレイにキャリブレーション用のパターンを表示した状態で、モバイルデバイス500をカメラで撮像することで、各パターンの重心位置を取得する。
また、モバイルデバイス500をロボット300のハンド先端320でタッチすることで、そのときの教示位置とモバイルデバイス500のディスプレイに表示されているキャリブレーション用のパターンの位置とを取得する。これらのモバイルデバイス500により取得される情報をPLC100へ送信することで、PLC100において、キャリブレーション用のパラメータセットを算出する。
本実施の形態によれば、ロボット300に対する教示位置(ロボット座標系の座標値)と、そのときに実際にモバイルデバイス500が検出した座標値との情報を取得できるので、教示位置の誤差を補正することができる。これによって、従来のキャリブレーション用のパターンを含むシートを用いる場合に比較して、キャリブレーションの精度を高めることができる。
また、本実施の形態によれば、従来の方法において要求されていた、ロボットを少なくとも3点の位置に教示しなければならないとの制約を緩和でき、これによって、キャリブレーションに要する時間を短縮できる。
本実施の形態においては、モバイルデバイス500に、実際にタッチされた位置や、算出されたパラメータセットのキャリブレーション精度などを表示できるので、キャリブレーションに係るユーザの操作性を高めることができる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 コンベアトラッキングシステム、10 コンベア、12 駆動ローラ、18 フィールドネットワーク、20 情報系ネットワーク、100 PLC、102,502 プロセッサ、104,504 メインメモリ、105 トラッキングレコード、106,206,406 フィールドネットワークインターフェイス、108,516 ワイヤレスネットワークインターフェイス、110 ローカル通信インターフェイス、112,352 情報系ネットワークインターフェイス、120,510 ストレージ、122 PLCシステムモジュール、124 ユーザプログラム、126 トラッキングプログラム、128 キャリブレーションパラメータ、130 キャリブレーションプログラム、132 ロボット位置指令生成プログラム、140,518 バス、200 視覚センサ、202 物体認識エンジン、204 カメラインターフェイス、250 カメラ、300 ロボット、310 モータ、320 ハンド先端、350 ロボットコントローラ、354 位置コントローラ、356 ドライバ、380 ティーチングペンダント、400 カウンタ、402 パルスカウンタ、404 演算処理部、450 エンコーダ、500 モバイルデバイス、514 キャリブレーションアプリ、520 タッチパネル、522 ディスプレイ、524 位置検出デバイス、550 パターン、560 強調表示、570 タッチ位置表示、580 数値表示、582 メッセージ、584,586 ボタン、590 支援メッセージ、600 サポート装置、700 HMI装置、Enc 移動量、Fx,Fy 変換関数、L 距離、W ワーク。

Claims (9)

  1. ワークを搬送する搬送装置と、
    前記搬送装置に関連付けて配置され、前記搬送装置により搬送されるワークをピックアップするロボットと、
    前記搬送装置の搬送経路に撮像視野を有する撮像部と、
    前記撮像部により撮像された画像に対する画像計測を実行する視覚センサと、
    前記視覚センサによる画像計測結果に基づいて、予め算出されたパラメータセットを用いて、前記ロボットに対する動作指令を生成する制御装置と、
    前記パラメータセットの算出処理に用いられる、タッチパネルを有するモバイルデバイスとを備え、
    前記モバイルデバイスは、
    予め定められた位置に1または複数のパターンを表示する手段と、
    前記1または複数のパターンが表示された状態でタッチされたことに応じて、当該タッチされたタッチ位置を示す情報を前記制御装置へ送信する手段とを含み、
    前記制御装置は、
    前記モバイルデバイスが前記1または複数のパターンが表示された状態で前記撮像視野に配置されたときの前記視覚センサによる画像計測結果と、前記モバイルデバイスが前記ロボットによりタッチされたときの前記タッチ位置と、前記モバイルデバイスが前記撮像視野に配置された状態の位置と前記ロボットによりタッチされたときの位置との間の距離と、前記モバイルデバイスに表示された前記1または複数のパターンのうち1つのパターンと前記タッチ位置とのずれ量とに基づいて、前記パラメータセットを算出する手段を含む、コンベアトラッキングシステム。
  2. 前記モバイルデバイスは、前記撮像視野に配置されて前記撮像部により撮像された後に、前記ロボットによるタッチ動作を受ける、請求項1に記載のコンベアトラッキングシステム。
  3. 前記制御装置は、前記ずれ量を、前記モバイルデバイスの前記搬送装置に対する方向に基づいて補正した上で、前記パラメータセットを算出する、請求項1または2に記載のコンベアトラッキングシステム。
  4. 前記モバイルデバイスは、
    前記ロボットによるタッチ位置に応じて、少なくとも1つのパターンを表示し、
    前記ロボットによるタッチ動作を受けた後に、前記撮像視野に配置される、請求項1〜3のいずれか1項に記載のコンベアトラッキングシステム。
  5. 前記モバイルデバイスは、数の前パターンを表示するとともに、当該複数のパターンのうち、タッチすべきパターンを他のパターンとは異なる態様で表示する、請求項1〜のいずれか1項に記載のコンベアトラッキングシステム。
  6. 前記モバイルデバイスは、前記1または複数のパターンとともに、前記タッチ位置を表示する、請求項1〜のいずれか1項に記載のコンベアトラッキングシステム。
  7. 前記モバイルデバイスは、前記制御装置により算出されたパラメータセットの精度を表示する、請求項1〜のいずれか1項に記載のコンベアトラッキングシステム。
  8. 前記制御装置と前記モバイルデバイスとの間は、ワイヤレス通信でデータを遣り取りする、請求項1〜のいずれか1項に記載のコンベアトラッキングシステム。
  9. コンベアトラッキングシステムにおけるキャリブレーション方法であって、
    前記コンベアトラッキングシステムは、
    ワークを搬送する搬送装置と、
    前記搬送装置に関連付けて配置され、前記搬送装置により搬送されるワークをピックアップするロボットと、
    前記搬送装置の搬送経路に撮像視野を有する撮像部と、
    前記撮像部により撮像された画像に対する画像計測を実行する視覚センサと、
    前記視覚センサによる画像計測結果に基づいて、予め算出されたパラメータセットを用いて、前記ロボットに対する動作指令を生成する制御装置とを備え、
    前記キャリブレーション方法は、
    タッチパネルを有するモバイルデバイスのディスプレイの予め定められた位置に1または複数のパターンを表示するステップと、
    前記モバイルデバイスのディスプレイに前記1または複数のパターンが表示された状態で前記撮像視野に配置するとともに、前記視覚センサにより、前記モバイルデバイスを撮像して得られた画像に対する画像計測結果を取得するステップと、
    前記モバイルデバイスのディスプレイに前記1または複数のパターンが表示された状態で前記ロボットにより前記モバイルデバイスがタッチされたときのタッチ位置を取得するステップと、
    前記画像計測結果と、前記タッチ位置と、前記モバイルデバイスが前記撮像視野に配置された状態の位置と前記ロボットによりタッチされたときの位置との間の距離と、前記モバイルデバイスに表示された前記1または複数のパターンのうち1つのパターンと前記タッチ位置とのずれ量とに基づいて、前記パラメータセットを算出するステップとを備える、コンベアトラッキングシステムにおけるキャリブレーション方法。
JP2018026357A 2018-02-16 2018-02-16 コンベアトラッキングシステムおよびキャリブレーション方法 Active JP6859967B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018026357A JP6859967B2 (ja) 2018-02-16 2018-02-16 コンベアトラッキングシステムおよびキャリブレーション方法
EP18205720.8A EP3527335B1 (en) 2018-02-16 2018-11-12 Conveyor tracking system and calibration method
US16/188,281 US11021333B2 (en) 2018-02-16 2018-11-13 Conveyor tracking system and calibration method
CN201811353841.5A CN110154017B (zh) 2018-02-16 2018-11-14 输送机跟踪系统以及校准方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018026357A JP6859967B2 (ja) 2018-02-16 2018-02-16 コンベアトラッキングシステムおよびキャリブレーション方法

Publications (2)

Publication Number Publication Date
JP2019141935A JP2019141935A (ja) 2019-08-29
JP6859967B2 true JP6859967B2 (ja) 2021-04-14

Family

ID=64277601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018026357A Active JP6859967B2 (ja) 2018-02-16 2018-02-16 コンベアトラッキングシステムおよびキャリブレーション方法

Country Status (4)

Country Link
US (1) US11021333B2 (ja)
EP (1) EP3527335B1 (ja)
JP (1) JP6859967B2 (ja)
CN (1) CN110154017B (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6579498B2 (ja) * 2017-10-20 2019-09-25 株式会社安川電機 自動化装置及び位置検出装置
US10751883B2 (en) * 2018-08-16 2020-08-25 Mitutoyo Corporation Robot system with supplementary metrology position coordinates determination system
US10871366B2 (en) 2018-08-16 2020-12-22 Mitutoyo Corporation Supplementary metrology position coordinates determination system for use with a robot
US11002529B2 (en) 2018-08-16 2021-05-11 Mitutoyo Corporation Robot system with supplementary metrology position determination system
US11745354B2 (en) 2018-08-16 2023-09-05 Mitutoyo Corporation Supplementary metrology position coordinates determination system including an alignment sensor for use with a robot
US10913156B2 (en) 2018-09-24 2021-02-09 Mitutoyo Corporation Robot system with end tool metrology position coordinates determination system
US11707842B2 (en) * 2018-11-27 2023-07-25 Fanuc Corporation Robot system and coordinate conversion method
US11605177B2 (en) * 2019-06-11 2023-03-14 Cognex Corporation System and method for refining dimensions of a generally cuboidal 3D object imaged by 3D vision system and controls for the same
US11335021B1 (en) 2019-06-11 2022-05-17 Cognex Corporation System and method for refining dimensions of a generally cuboidal 3D object imaged by 3D vision system and controls for the same
CN110936355B (zh) * 2019-11-25 2021-06-22 广州微林软件有限公司 一种基于视觉测速定位的机械臂引导系统和方法
CN113134829B (zh) * 2020-01-17 2022-10-18 北京配天技术有限公司 机器人跟踪传送带上的工件的方法以及机器人跟踪系统
CN114929436A (zh) * 2020-01-22 2022-08-19 Abb瑞士股份有限公司 用于控制机器人的系统和方法、电子设备和计算机可读介质
US11584013B2 (en) * 2020-03-31 2023-02-21 Wipro Limited System, device and method for determining error in robotic manipulator-to-camera calibration
JP2022052995A (ja) * 2020-09-24 2022-04-05 セイコーエプソン株式会社 ロボットの制御方法およびロボットシステム
US11300940B1 (en) * 2020-09-29 2022-04-12 Rockwell Automation Technologies, Inc. Application code manager and intellicenter integration
JP2022061700A (ja) * 2020-10-07 2022-04-19 セイコーエプソン株式会社 ベルトコンベアキャリブレーション方法、ロボット制御方法、ロボットシステム、プログラム
CN112249642A (zh) * 2020-10-22 2021-01-22 广州文冲船厂有限责任公司 一种法兰放置方法及系统
KR102384648B1 (ko) * 2020-10-30 2022-04-11 한국전자기술연구원 터치를 이용한 로봇의 캘리브레이션 시스템 및 방법
WO2022168985A1 (ja) 2021-02-08 2022-08-11 株式会社ジーテクト パレタイズシステムおよび外観検査装置
WO2023067645A1 (ja) * 2021-10-18 2023-04-27 株式会社Pfu キャリブレーション装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3479969B2 (ja) * 1999-09-06 2003-12-15 村田機械株式会社 搬送システムのティーチング方法とその装置
JP3703411B2 (ja) * 2001-07-19 2005-10-05 ファナック株式会社 ワーク取り出し装置
US6822412B1 (en) * 2003-06-11 2004-11-23 Zhongxue Gan Method for calibrating and programming of a robot application
JP4267005B2 (ja) * 2006-07-03 2009-05-27 ファナック株式会社 計測装置及びキャリブレーション方法
JP2009290852A (ja) 2008-04-30 2009-12-10 Japan Novel Corp 機器、装置の機能チェック装置
EP2255930A1 (de) * 2009-05-27 2010-12-01 Leica Geosystems AG Verfahren und System zum hochpräzisen Positionieren mindestens eines Objekts in eine Endlage im Raum
JP5311294B2 (ja) * 2010-04-28 2013-10-09 株式会社安川電機 ロボットの接触位置検出装置
JP5218470B2 (ja) * 2010-04-28 2013-06-26 株式会社安川電機 ロボットの作業成否判定装置、および方法
JP5316563B2 (ja) * 2011-02-15 2013-10-16 オムロン株式会社 画像処理装置および画像処理システム
JP2012187651A (ja) * 2011-03-09 2012-10-04 Omron Corp 画像処理装置および画像処理システム、ならびにそれらに向けられたガイダンス装置
JP5810562B2 (ja) * 2011-03-15 2015-11-11 オムロン株式会社 画像処理システムに向けられたユーザ支援装置、そのプログラムおよび画像処理装置
JP5464177B2 (ja) * 2011-06-20 2014-04-09 株式会社安川電機 ピッキングシステム
EP2537645B1 (en) * 2011-06-20 2017-10-25 Kabushiki Kaisha Yaskawa Denki Robot System
US9102055B1 (en) * 2013-03-15 2015-08-11 Industrial Perception, Inc. Detection and reconstruction of an environment to facilitate robotic interaction with the environment
GB201311600D0 (en) * 2013-06-28 2013-08-14 Renishaw Plc Calibration of a contact probe
JP6264967B2 (ja) * 2014-03-14 2018-01-24 オムロン株式会社 ロボット制御装置
JP6415190B2 (ja) * 2014-09-03 2018-10-31 キヤノン株式会社 ロボット装置、ロボット制御プログラム、記録媒体、およびロボット装置の制御方法
US9656390B2 (en) * 2014-11-10 2017-05-23 Faro Technologies, Inc. Human-centric robot with noncontact measurement device
EP3277468A4 (en) * 2015-04-02 2019-10-16 ABB Schweiz AG METHOD FOR COMMISSIONING AN INDUSTRIAL ROBOT, INDUSTRIAL ROBOT SYSTEM AND CONTROL SYSTEM USING THE SAME
JP2016215319A (ja) * 2015-05-20 2016-12-22 ライフロボティクス株式会社 ロボットシステム及びロボット装置
JP6458713B2 (ja) * 2015-11-18 2019-01-30 オムロン株式会社 シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP6551184B2 (ja) * 2015-11-18 2019-07-31 オムロン株式会社 シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP6308248B2 (ja) * 2016-06-22 2018-04-11 オムロン株式会社 コンベアトラッキング等に向けられたガイダンス装置

Also Published As

Publication number Publication date
EP3527335B1 (en) 2020-12-30
CN110154017B (zh) 2022-07-26
JP2019141935A (ja) 2019-08-29
US11021333B2 (en) 2021-06-01
US20190256300A1 (en) 2019-08-22
CN110154017A (zh) 2019-08-23
EP3527335A1 (en) 2019-08-21

Similar Documents

Publication Publication Date Title
JP6859967B2 (ja) コンベアトラッキングシステムおよびキャリブレーション方法
JP5370398B2 (ja) 画像処理装置および画像処理プログラム
JP5316563B2 (ja) 画像処理装置および画像処理システム
TWI816056B (zh) 用以於環境中校正視覺系統的方法和系統
JP6308248B2 (ja) コンベアトラッキング等に向けられたガイダンス装置
JP5810562B2 (ja) 画像処理システムに向けられたユーザ支援装置、そのプログラムおよび画像処理装置
JP2012187651A (ja) 画像処理装置および画像処理システム、ならびにそれらに向けられたガイダンス装置
KR102276259B1 (ko) 비전-기반 조작 시스템들의 교정 및 동작
US9529945B2 (en) Robot simulation system which simulates takeout process of workpieces
JP2008021092A (ja) ロボットシステムのシミュレーション装置
JP6892286B2 (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JP5561214B2 (ja) 画像処理装置および画像処理プログラム
JP2020055096A (ja) 情報処理装置、情報処理方法及びシステム
EP3421930A1 (en) Three-dimensional shape data and texture information generation system, photographing control program, and three-dimensional shape data and texture information generation method
WO2018062156A1 (ja) ロボット、ロボットの制御装置、及び、ロボットの位置教示方法
CN114080590A (zh) 使用先进扫描技术的机器人料箱拾取系统和方法
JP2009248214A (ja) 画像処理装置、およびロボット制御システム
JP6265784B2 (ja) 姿勢推定システム、プログラムおよび姿勢推定方法
JP7153584B2 (ja) 傾斜補正システム、部品挿入システム、傾斜補正方法及び部品挿入方法
TW202315725A (zh) 位置姿勢計測系統

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210205

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210309

R150 Certificate of patent or registration of utility model

Ref document number: 6859967

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150