【解決手段】ティーチングシステムTSは、移載先LPに対して上方に設けられた軌道Tに沿って走行して移載先LPに対して物品1を移載する移動体Vに保持される撮像装置11と、撮像装置11により上方から移載先を撮像した画像を用いて、その移載先に対して移動体が物品を移載するためのティーチングデータを生成する生成部20と、を備え、鉛直方向に対する撮像装置11の傾きを検出する傾斜検出部21と、撮像装置と移載先との距離を検出する距離検出部と、傾斜検出部の検出結果及び距離検出部の検出結果に基づいて、生成部により生成されたティーチングデータを補正する補正部26と、を備える。
移載先に対して上方に設けられた軌道に沿って走行して前記移載先に対して物品を移載する移動体に保持される撮像装置と、前記撮像装置により上方から前記移載先を撮像した画像を用いて、その移載先に対して前記移動体が物品を移載するためのティーチングデータを生成する生成部と、を備えるティーチングシステムであって、
鉛直方向に対する前記撮像装置の傾きを検出する傾斜検出部と、
前記撮像装置と前記移載先との距離を検出する距離検出部と、
前記傾斜検出部の検出結果及び前記距離検出部の検出結果に基づいて、前記生成部により生成された前記ティーチングデータを補正する補正部と、を備える、ティーチングシステム。
前記生成部は、前記距離検出部の検出結果に基づいて、前記移載先に対して物品を移載するための高さ方向の前記ティーチングデータを生成する、請求項1に記載のティーチングシステム。
前記移載先傾斜検出部は、前記撮像装置により撮像された前記移載先の画像を用いて、前記移載先の水平方向に対する傾きを検出する、請求項3に記載のティーチングシステム。
移動体に保持される撮像装置により上方から移載先を撮像した画像を用いて、その移載先に対して前記移動体が物品を移載するためのティーチングデータを生成する方法であって、
鉛直方向に対する前記撮像装置の傾きを傾斜検出部により検出することと、
前記撮像装置と前記移載先との距離を距離検出部により検出することと、
前記傾斜検出部の検出結果及び前記距離検出部の検出結果に基づいて、生成された前記ティーチングデータを補正することと、を含む、ティーチングデータ生成方法。
【発明を実施するための形態】
【0014】
以下、本発明の実施形態について図面を参照しながら説明する。ただし、本発明はこの形態に限定されない。また、図面においては実施形態を説明するため、一部分を大きく又は強調して記載するなど適宜縮尺を変更して表現している。
図2、3、7、13、14、16では、XYZ座標系を用いて図中の方向を説明する。このXYZ座標系は、水平面に平行な平面をXY平面とする。このXY平面において移動体Vが走行する方向をX方向と表記し、X方向に直交する方向をY方向と表記する。また、XY平面に垂直な方向はZ方向と表記する。X方向、Y方向及びZ方向のそれぞれは、図中の矢印の指す方向が+方向であり、矢印と反対の方向が−方向であるとして説明する。
【0015】
図1は、実施形態に係るティーチングシステムTSが適用される搬送システム100の一例を示す図である。
図1では、ティーチングシステムTSの要部を拡大した図を併せて示している。
図2は、搬送システム100の移動体の一例を示す図である。
図3は、移動体Vにより物品1を移載先LPに搬送する動作の一例を示す図である。
図1から
図3に示す搬送システム100は、物品1を搬送するシステムである。
【0016】
物品1は、例えば、半導体生産に用いられるウエハ又はレクチル等の物体を収容するFOUP、SMIF Pod、レクチルPod等である。搬送システム100は、第1〜第n(n≧2かつ整数)移動体V1〜Vn(以下、移動体Vと総称する場合がある。)と、第1〜第m(m≧2かつ整数)移載先LP1〜LPm(以下、移載先LPと総称する場合がある。)と、上位コントローラCUと、を備える。本実施形態では、ティーチングシステムTSが搬送システム100に適用されている例について説明する。なお、本実施形態では、搬送システム100において、第1移載先LP1が基準移載先MSTとして用いられる例について説明する。
【0017】
移動体Vは、軌道Tに沿って走行する天井搬送車であり、軌道Tの鉛直下方に配置された移載先LPとの間で物品1の受け渡しを行う。軌道T又は軌道Tの近傍には、移載先LPごとに停止指標N1〜Nm(
図3参照)が設けられている。各移動体Vは、第1〜第m移載先LP1〜LPmそれぞれに対して物品1の移載を行う際、停止指標N1〜Nmを後述の停止指標検出部Fで検出して後述の走行部Mを停止させ、後述の移載装置Uにより物品1を昇降させることで第1〜第m移載先LP1〜LPmに対して物品1の受け渡しを行う。停止指標N1〜Nmを検出して停止した移動体Vの位置が初期位置である。なお、移動体Vの詳細については後述する。また、図示では移載先LPが軌道Tの鉛直下方に配置された例を示しているが、移載先LPが軌道Tの下方かつ側方に配置されてもよい。移載先LPは、例えば、処理装置又は保管装置などの一部に設けられるロードポート、あるいは物品1を一時保管するために設けられた棚部(バッファ)である。また、移載先LPの設置数は任意である。
【0018】
各移動体Vは、上記した停止指標N1〜Nmを停止指標検出部Fで検出することにより、この検出をきっかけとして、後述する走行部Mが予め定められた位置(X方向の位置)で停止し、後述する移動体Vの移載装置Uが予め定められた量(Y方向への移動量、Z方向まわりの回転量など)だけ移動して物品1を下降させるように予め設定されている。以下に詳述する機差データ及びティーチングデータは、この移動量を定めるために予め取得されるデータである。
【0019】
基準移載先MST(第1移載先LP1)は、各移動体Vにおける機差を検出するために用いられる。上記の設定において移動体Vが基準移載先MSTに対応して停止し、物品1を下降させて基準移載先MSTに載置される物品1の水平方向の位置と、基準移載先MSTの予め定められた水平方向の基準載置位置との差が、各移動体Vに特有の誤差(機差)である。この機差の検出には、ティーチングユニット110が用いられる。このティーチングユニット110による機差の取得(機差データの生成)については、
図16を用いて後述する。
【0020】
なお、停止指標N1〜Nmは、各移載先LPに対応して取り付けられるが、その取付位置が本来取り付けるべき位置からずれる場合がある。本実施形態において、機差は、このような取付位置の誤差を含んだ値として検出される。すなわち、本明細書において、機差は、各移動体Vがそれぞれ有している特有の誤差と、上記した停止指標N1〜Nmの取付誤差などの他の誤差とを含む意味で用いている。
【0021】
なお、基準移載先MSTは、処理装置等のロードポートである第1移載先LP1が用いられることに代えて、各移動体Vにおける機差を検出するための専用の移載先として設けられてもよい。この場合、基準移載先MSTは、設備側の床面等に固定されてもよいし、例えば、車輪等が設けられて、移動可能であってもよい。また、基準移載先MSTは2台以上設置されてもよい。
【0022】
図2では、物品1がFOUPの例を示している。物品1は、本体部1aと、蓋1bと、フランジ部1cと、溝部1dとを備える。本体部1aは、内部にウエハ等を収容する。蓋1bは、本体部1aの側面に着脱可能に設けられる。フランジ部1cは、本体部1aの天頂部分に設けられ、後述する移載装置Uの保持部2に保持される。溝部1dは、本体部1aの底面に放射状に複数設けられ、物品1の位置決めに用いられる。
【0023】
移動体Vは、走行部Mと、本体部BOとを備える。走行部Mは、不図示の走行駆動部によって走行輪6を駆動し、軌道Tに沿ってX方向(一方向)に走行する。走行駆動部は、例えば、サーボモータなどの電動モータ又はリニアモータが用いられる。軌道Tは、例えば、吊り金具等によってクリーンルーム等の設備の天井5から吊り下げられて設けられる。走行輪6は、軌道Tに接して配置され、例えば、上記した電動モータ等により駆動する駆動輪と従動輪とを有し、エンコーダにより走行距離又は走行輪6(例えば従動輪)の回転数等が検出される。車載コントローラCは、例えば、サーボモータ(ステッピングモータ)に供給するパルス数、又は上記したエンコーダの検出結果に基づいて移動体Vの速度及び停止位置の一方又は双方の制御を行う。
【0024】
本体部BOは、支持軸7を介して走行部Mの下方に取り付けられる。本体部BOは、物品1を保持する保持部2と、保持部2を鉛直方向に昇降させる昇降部3と、昇降部3を軌道Tと直行する方向に移動させる横出し機構8と、を備えた移載装置Uと、電源部BTとを有する。保持部2は、物品1のフランジ部1cを把持することにより、物品1を吊り下げて保持する。保持部2は、例えば、水平方向に移動可能な複数の爪部2aを有し、爪部2aをフランジ部1cの下方に進入させることにより、物品1を吊り下げて保持する。保持部2は、ワイヤ又はベルト等の吊り下げ部材2bと接続されている。昇降部3は、例えば、ホイストであり、吊り下げ部材2bを繰り出すことにより保持部2を下降させ、吊り下げ部材2bを巻き取ることにより保持部2を上昇させる。
【0025】
横出し機構8は、本体部BOに対して昇降部3を軌道Tと直交するY方向に移動させる。横出し機構8は、例えば、複数の可動板を有し、不図示の駆動部により+Y方向又は−Y方向に昇降部3を移動させる。なお、横出し機構8により昇降部3をY方向に移動させるか否かは任意である。なお、保持部2、昇降部3、及び横出し機構8を含む移載装置Uは、車載コントローラCによって制御される。移載装置Uを備える本体部BOは、走行部Mと一体となって軌道TをX方向に移動する。
【0026】
移載先LP(基準移載先MST)に対して物品1を移載する場合は、走行部Mを停止させ、移載装置Uの昇降部3により保持部2を下降させることにより、移載先LPに対して物品1を移載可能である。なお、保持部2の下降に先だって、横出し機構8により昇降部3を軌道Tと直交する方向(Y方向)に横出ししてもよい。
図2に示すように、移載先LPには、位置決め部材として複数の(例えば3本の)ピン9が設けられている。ピン9は、物品1の溝部1dに入り込むことにより、移載先LP上において物品1を位置決めする。
【0027】
また、走行部Mは、軌道T又は軌道Tの近傍に取り付けられた停止指標N1〜Nm(
図3参照)を検出する停止指標検出部Fを備える。走行部Mは、停止指標検出部Fで停止指標N1〜Nmを検出することにより、各移載先LPのそれぞれに対応して予め定められた位置(初期位置)に停止する。この停止指標N1〜Nmは、例えばバーコードなどが用いられ、各移動体Vに搭載されたバーコードリーダ等の停止指標検出部Fにより検出される。なお、停止指標N1〜Nmは、移載先LPごとに設けられる形態に限定されない。例えば、1つの停止指標が複数の移載先LPに関連付けられて設けられる形態であってもよい。
【0028】
本実施形態における搬送システム100は、走行部Mが停止指標N1〜Nmに対応する初期位置に停止すると、各移動体Vの車載コントローラCが移載装置Uを駆動して移載先LPに対して物品1の受け渡しを行うように設定されている。ただし、搬送システム100において、このように設定するか否かは任意である。
【0029】
図16は、ティーチングユニット110を用いた機差の取得(機差データの生成)の一例を説明する図である。
図16では、ティーチングユニット110の要部を拡大した図を併せて示している。上記したように、複数の移動体Vのそれぞれは、固有の機差を有している。本実施形態では、
図16に示すようなティーチングユニット110を用いて複数の移動体Vそれぞれの機差データを生成する。ティーチングユニット110は、例えば、物品1と同様の外形上の構成を有し、後述するティーチングシステムTSと同様に天頂部にフランジ部14を備えている。このフランジ部14が移動体Vの保持部2により把持されることで、ティーチングユニット110が移動体Vに保持される。ティーチングユニット110は、底部(底面)に設けられたタッチパネル130と、そのタッチパネル130から供給されるデータを用いて、移動体Vの機差データを生成する生成部120と、を備える。
【0030】
本実施形態における、ティーチングユニット110を用いた機差データの取得においては、先ず、保持部2によりティーチングユニット110を把持した移動体Vが軌道Tに沿って、基準移載先MSTに対応する停止指標N1が検出される位置まで走行する。停止指標N1が検出される初期位置で移動体V(走行部M)が停止すると、移動体Vはその初期位置から基準移載先MSTに対して昇降部3によりティーチングユニット110を下降させ、基準移載先MSTにティーチングユニット110を載置させる。ここで、
図16の破線で示すように、ティーチングユニット110の底部に設けられたタッチパネル130が、基準移載先MSTに備えられた位置決め部材としての複数のピン9に接触し、各ピン9の水平方向(XY面内)の位置座標が取得される。生成部120は、このようにして取得された位置座標と、予め設定されている基準移載先MSTの基準位置(座標)とのずれから、移動体VのX方向及びY方向における機差データを生成する。また、ティーチングユニット110が基準移載先MSTに載置された際(タッチパネル130がピン9に接触した際)の、移載装置U(昇降部3)によるティーチングユニット110の下降量と、予め設定されている基準移載先MSTの基準下降量とのずれから、移動体VのZ方向における機差データを生成する。このようにして、搬送システム100に備えられた複数の移動体Vそれぞれについて機差データを得ることができる。
【0031】
図2に戻って、ティーチングシステムTSは、移載先LPに対して移動体Vが物品1を移載するためのティーチングデータを生成する。ティーチングシステムTSは、本体部10と、撮像装置11と、傾斜検出部12と、距離検出部13と、生成部20とを備える。本体部10は、例えば、物品1と同様の外形上の構成を有する。本体部10は、天頂部にフランジ部14を備えている。このフランジ部14が移動体Vの保持部2により把持されることで、本体部10が移動体Vに保持される。フランジ部14の形状は、例えば、物品1のフランジ部1cと同一又はほぼ同一であってもよい。
【0032】
ティーチングシステムTSは、電力供給線BLを介して、移動体Vの電源部BTから電力が供給されているが、この構成に限定されず、電力供給線BLを介して移動体V以外の電源部から電力が供給されてもよいし、ティーチングシステムTSの一部にバッテリ等の電源部を備えていてもよい。
【0033】
本体部10は、撮像装置11、傾斜検出部12、距離検出部13、及び生成部20を備える。撮像装置11は、撮像光軸AXが鉛直下方となるように設定され、移載先LPを上方(鉛直上方)から撮像する。撮像装置11は、例えばデジタルカメラが用いられる。撮像装置11が撮像する画像は、静止画又は動画のいずれであってもよい。また、撮像装置11が撮像する画像は、RGB画像又はグレースケールのいずれであってもよい。また、撮像装置11は、特定波長の光(例えば、赤外光など)の像を取得する構成であってもよい。撮像装置11は、本体部10が最も上昇した位置(すなわち保持部2が最も上昇した位置)において移載先LPを撮像する。
【0034】
撮像装置11は、撮像した移載先LPの画像を生成部20に送信する。撮像装置11は、画像を生成部20に送信する前に、その画像に対して画像処理を施してもよい。撮像装置11は、撮像した画像に対して、例えば、ホワイトバランス、ガンマ補正等の画像処理を施した後に、画像処理後の画像を生成部20に送信してもよい。
【0035】
傾斜検出部12は、鉛直方向に対する撮像装置11の傾きθ(すなわち、鉛直方向に対する撮像光軸AXの傾きθ(
図7参照))を検出する。傾斜検出部12としては、例えば加速度センサが用いられる。傾斜検出部12は、鉛直方向に対する撮像装置11のX方向の傾きθX及びY方向の傾きθYを検出する。なお、傾斜検出部12は、本体部10に1つ設けられることに限定されず、複数設けられてもよい。複数の傾斜検出部12が用いられる場合、例えば、複数の傾斜検出部12から出力された検出結果の平均値を用いて撮像装置11の傾きθとしてもよいし、1つをメインの傾斜検出部12とし、他を参照用又はバックアップ用の傾斜検出部12として用いる形態であってもよい。傾斜検出部12は、検出した撮像装置11の傾きθを生成部20に送信する。
【0036】
距離検出部13は、撮像装置11と移載先LPとの距離Hを検出する。距離検出部13は、例えば非接触式の距離センサが用いられる。非接触式の距離センサは、例えば、光学式、磁気式、静電容量式などの各種センサが用いられる。なお、距離検出部13は、本体部10に1つ設けられることに限定されず、複数設けられてもよい。複数の距離検出部13が用いられる場合、例えば、複数の距離検出部13から出力された検出結果の平均値を用いて距離Hとしてもよいし、1つをメインの距離検出部13とし、他を参照用又はバックアップ用の距離検出部13として用いる形態であってもよい。距離検出部13は、検出した距離Hを生成部20に送信する。
【0037】
生成部20は、撮像装置11により上方から移載先LPを撮像した画像を用いて、その移載先LPに対して移動体Vが物品1を移載するためのティーチングデータを生成する。ティーチングデータは、対象となる移載先LPの上方において移動体Vが停止し、予め定められた設定により移載装置Uを動作させて物品1をその移載先LPに載置した際に、その移載先LPの定められた載置位置と、実際の物品1の載置位置との位置ずれ(X方向のずれ及びY方向のずれ)を補正するためのデータである。
図1に示すように、生成部20は、補正部26を備える。なお、補正部26の詳細については後述する。
【0038】
生成部20は、距離検出部13の検出結果に基づいて、移載先LPに対して物品1を移載するための高さ方向(Z方向)のティーチングデータを生成する。移載先LPの高さ(例えば、床面からの高さ)の情報を、予め移載先LPの情報の一つとして搬送システム100が取得しているが、距離検出部13の検出結果である距離Hを用いることで、先に取得している移載先LPの高さの情報と、実際の高さとのずれが明らかとなる。生成部20は、この高さ方向のずれを補正するための高さ方向のティーチングデータを生成する。なお、生成部20は、高さ方向のティーチングデータを生成するか否かは任意である。
【0039】
図4は、ティーチングシステムTSの一例を示すブロック図である。
図4に示すように、生成部20は、画像受信部21と、傾斜受信部22と、距離受信部23と、データ格納部24と、データ算出部25と、補正部26と、データ出力部27とを有する。画像受信部21は、撮像装置11によって撮像された画像に関するデータを受信し、データ格納部24に格納する。傾斜受信部22は、傾斜検出部12によって検出された傾きθ(傾斜角度)に関する情報を受信し、データ格納部24に格納する。距離受信部23は、距離検出部13によって検出された距離Hに関する情報を受信し、データ格納部24に格納する。
【0040】
データ格納部24は、各種データを格納する。データ格納部24は、後述のデータ算出部25で算出されたティーチングデータ、及び後述の補正部26で補正された補正ティーチングデータを格納する。
【0041】
データ算出部25は、データ格納部24に格納された画像に関するデータに基づいて、ティーチングデータを生成するための演算処理を行う。データ算出部25は、先に取得している機差データと、第2〜第m移載先LP2〜LPmの画像とに基づいて、第2〜第m移載先LP2〜LPmのそれぞれにおける基準位置とのずれであるティーチングデータを生成する。
【0042】
図5は、撮像装置11で撮像した画像の一例を示す図である。
図5を参酌しながら、ティーチングデータを生成する処理について説明する。なお、各移動体Vの機差データは、上記したように、ティーチングユニット110及び基準移載先MST(第1移載先LP1)を用いて取得している(
図16参照)。この機差データは、例えば、X方向に+1.0mm、Y方向に−1.0mm、Z方向に+2.0mm等を示すデータである。機差データは、例えば、ティーチングユニット110から送られて移動体Vの車載コントローラCの記憶部等に記憶されている。
【0043】
続いて、機差データを取得した移動体Vを用いて、第2〜第m移載先LP2〜LPmのティーチングデータを取得する処理について説明する。ティーチングデータを取得する移動体Vは、基準移動体とも称される。この移動体Vは、ティーチングシステムTSを保持して軌道Tを走行し、第1〜第m移載先LP1〜LPmにそれぞれ停止した状態で、撮像装置11により第1〜第m移載先LP1〜LPmをそれぞれ撮像する。例えば、保持部2を、移動体Vの走行時と同じ高さに維持した状態(換言すれば、昇降部3により保持部2を下降させず、最も高い位置とした状態)において、その保持部2に保持されるティーチングシステムTSの撮像装置11により第2〜第m移載先LP2〜LPmをそれぞれ撮像する。あるいは、ティーチングシステムTSを、第2〜第m移載先LP2〜LPmに載置させない(接触させない)高さまで下降させた状態において撮像する形態であってもよい。移動体Vは、停止指標N1〜Nm(
図3参照)を検出して走行部Mが予め定められた位置(X方向の位置)で停止し、移載装置Uが第1〜第m移載先LP1〜LPmにおいて予め定められた量(Y方向への移動量、Z方向まわりの回転量など)だけ移動した状態で撮像装置11により第1〜第m移載先LP1〜LPmをそれぞれ撮像する。
【0044】
移動体Vは、先ず、第1移載先LP1に停止した状態で、撮像装置11により第1移載先LP1(MST)を撮像する。例えば、停止指標N1を検出して走行部Mが予め定められた位置で停止した後、前述のティーチングユニット110により得られた機差データに基づいてX方向及びY方向に移動する。この移動後の状態は、第1移載先LP1に対する機差補正後の移載位置であり、この状態に位置する移動体Vが保持部2により保持した物品1を鉛直方向に下降させることで、第1移載先LP1におけるピン9にその物品1が正しく位置決めされる。移動体Vは、上記移動後の状態において、撮像装置11により第1移載先LP1(MST)を鉛直方向に撮像する。このようにして撮像された画像IM1が、以降、第2〜第m移載先LP2〜LPmにおけるティーチングデータを取得する際の基準(基準画像)として用いられる。
【0045】
続いて、移動体Vは、第2移載先LP2に停止した状態で、撮像装置11により第2移載先LP2を撮像する。例えば、停止指標N2を検出して走行部Mが予め定められた位置で停止した後、前述のティーチングユニット110により得られた機差データに基づいてX方向及びY方向に移動した後、撮像装置11により第2移載先LP2を撮像する。
図5(A)に、このようにして撮像された画像IM2を示す。画像IM2には第2移載先LP2における3本のピン9の像9Aが撮像されている。
【0046】
図5(B)は、前述した基準画像としての第1移載先LP1の画像IM1を例示している。この図に示すように、画像IM1は、第1移載先LP1における3本のピン9の位置を示す像9Bを含んでおり、データ格納部24に格納されている。データ算出部25は、画像IM2における3つの像9Aと、画像IM1における3つの像9Bとに基づいて、像9Aと像9Bとのずれを算出する。データ算出部25は、算出したずれをデータ格納部24に格納する。
【0047】
図6は、画像におけるずれと画素との関係を示す図である。データ算出部25は、画像IM1及び画像IM2から、
図6に示すように、まず、像9Aの重心位置9AGを算出し、同様に像9Bの重心位置9BGを算出する。
図6では1つの重心位置9AG、9BGについて示しているが、3つの像9A、9Bのそれぞれについて重心位置9AG、9BGが算出される。重心位置の算出は、パターンマッチングなど、任意の手法を用いることができる。また、重心位置を用いることに代えて、像9A、9Bの所定位置、例えば同一方向におけるエッジなどが用いられてもよい。
【0048】
図6に示すように、1つの画素Pは、X方向とY方向とでサイズが異なる。また、像9Aの重心位置9AGは画素PAの位置にあり、像9Bの重心位置9BGは画素PBの位置にある。従って、重心位置9AGから重心位置9BGまでの画素数は、X方向で6ピクセル(Pixel)であり、Y方向で2ピクセルとなる。なお、画像上の間隔はピクセル数から実際のずれに換算される。例えば、1画素のY方向の間隔が1.0mm、X方向の間隔が0.5mmとすると、重心位置9BGに対する重心位置9AGのずれは、
X方向:+方向の6ピクセル×0.5mm=+3.0mm
Y方向:−方向の2ピクセル×1.0mm=−2.0mm
となる。従って、画像上のずれは、X方向に+3.0mm、Y方向に−2.0mmとなる。このずれ量はデータ格納部24に格納される。
【0049】
データ算出部25は、第2移載先LP2の画像上における3本のピン9の位置と、ピン9の基準位置とのずれ量から第2移載先LP2のティーチングデータを生成する。例えば、上記のように、ピン9の位置と、ピン9の基準位置とのずれ量がX方向に+3.0mm、Y方向−2.0mmである場合、第2移載先LP2のティーチングデータは、X方向に+3.0mm、Y方向に−2.0mmと生成される。
【0050】
なお、本実施形態においては、第2移載先LP2において画像IM1を撮像する際、停止指標N2を検出して走行部Mが予め定められた位置で停止し、機差データに基づいてX方向及びY方向に移動した後、撮像装置11により第2移載先LP2を撮像するが、停止指標N2を検出して走行部Mが予め定められた位置で停止した後、機差データに基づく移動を行うことなく撮像装置11により第2移載先LP2を撮像してもよい。この場合、データ算出部25は、第2移載先LP2の画像上における3本のピン9の位置と、ピン9の基準位置とのずれ量から移動体Vの機差を差し引くことにより、第2移載先LP2のティーチングデータを生成する。
【0051】
このような処理を第2〜第m移載先LP2〜LPmにおいてそれぞれ行うことにより、第2〜第m移載先LP2〜LPmについてのティーチングデータが生成される。すなわち、第2〜第m移載先LP2〜LPmそれぞれについて、停止指標N2〜Nmを検出して走行部Mが予め定められた位置で停止した後、X方向及びY方向にどれだけ移動すれば保持部2の昇降を開始するための正しい位置となるかを示すティーチングデータを得ることができる。例えば、各移動体Vは、停止指標N2〜Nmを検出して走行部Mが予め定められた位置で停止した後、X方向及びY方向に、(a)機差データに基づく移動量と、(b)ティーチングデータに基づく移動量との和に相当する移動量だけ移動した状態で、保持部2の昇降を行うことで、第2〜第m移載先LP2〜LPmそれぞれとの間で位置ずれなく物品1を受け渡しできる。また、上記した説明では水平方向(X方向及びY方向)についてのティーチングデータの生成について説明している。高さ方向(Z方向)については、ティーチングシステムTSの距離検出部13で検出される距離Hにより、高さ方向のティーチングデータが生成される。
【0052】
データ算出部25は、第1〜第m移載先LP1〜LPmについて、予め高さ(距離)に関する情報を取得している。例えば、第1移載先LP1(基準移載先MST)について予め取得している高さ(距離)に関する情報と、ティーチングユニット110を第1移載先LP1に載置したときの下降量(距離)とのずれがその移動体Vにおける高さ方向の機差である。この機差に関する情報は、上記した移動体Vの機差データに含まれる。第2〜第m移載先LP2〜LPmについての高さ方向のティーチングデータは、第2〜第m移載先LP2〜LPmについて予め取得している高さ(距離)に関する情報と、距離検出部13で検出した第2〜第m移載先LP2〜LPmまでの距離Hとのずれ量から高さ方向の機差を差し引くことでそれぞれ生成される。
【0053】
また、データ算出部25は、3つの像9Aと像9Bとのそれぞれの移動量から鉛直方向(Z方向)まわりのずれを算出することができる。データ算出部25は、第1移載先LP1(基準移載先MST)にティーチングユニット110を載置した際に、鉛直方向(Z方向)まわりのずれから、その移動体Vにおける鉛直方向まわりの機差を取得する。この鉛直方向まわりの機差に関する情報は、上記した移動体Vの機差データに含まれる。第2〜第m移載先LP2〜LPmについての鉛直方向まわりのティーチングデータは、撮像装置11により撮像された第2〜第m移載先LP2〜LPmの画像から、基準位置に対するずれ量(回転量)が算出され、このずれ量から鉛直方向まわりの機差を差し引くことでそれぞれ生成される。
【0054】
補正部26は、生成部20(データ算出部25)が生成した機差データ及びティーチングデータを、傾斜検出部12によって検出された傾きθと、距離検出部13によって検出された距離Hとに基づいて補正する。
図7は、移動体Vが傾いた状態の一例を示す図である。
図7に示すように、搬送システム100では、軌道Tが水平面に対して例えば角度θで傾いている場合がある。この移動体VがティーチングシステムTSを保持していると、撮像装置11の撮像光軸AXは、撮像装置11の鉛直線Rに対してX方向に角度θ(=θX)だけ傾いてしまう。この角度θ(傾きθ)は、傾斜検出部12によって検出される。撮像光軸AXが鉛直線Rに対して傾いた状態で撮像された画像には、ピン9の像9Aの位置が、画像IM1内においてずれてしまう。撮像装置11が鉛直線Rに対してY方向に傾く場合もあるが、以下の実施例においては上記のように撮像装置11の撮像光軸AXが鉛直線Rに対してX方向に角度θX(傾きθX)だけ傾いている態様におけるティーチングデータの補正について説明する。
【0055】
ここで、距離検出部13によって検出された撮像装置11とピン9との鉛直方向(Z方向)の距離HをZ1とし、撮像装置11の撮像光軸AXと撮像対象面(移載先LPの上面)PFとの交点をX1とする。この場合、撮像装置11の撮像光軸A0が鉛直方向から傾いていない場合(すなわち鉛直線Rと一致する場合)における撮像光軸A0と撮像対象面PFとの交点X0と、上記X1とのX方向における距離A1は、次の数式(1)で求められる。
【0056】
A1=Z1・tanθX・・・数式(1)
【0057】
補正部26は、生成部20(データ算出部25)が生成したティーチングデータにおけるX方向の値を、上記したずれ量で補正する。例えば、ピン9の基準位置に対する実際のピン9の位置のずれ量がX方向に+3.0mmであり、撮像装置11の傾きに起因する上記距離A1がX方向に−2.0mmである場合、データ算出部25により算出される移載先LPのティーチングデータは、X方向に+5.0mmとなる。補正部26は、データ算出部25が生成したティーチングデータにおけるX方向の値から、撮像装置11の傾きによるX方向のずれ量(上記距離A1)を差し引く。これにより、移載先LPのティーチングデータは、X方向に+3.0mmとなり、ピン9の基準位置に対する実際のピン9の位置のずれ量と等しくなる。
【0058】
Y方向についても、上記したX方向と同様の処理により、撮像装置11の傾きに起因するY方向のずれ量が求められる。補正部26は、生成部20が生成したティーチングデータにおけるY方向の値を、このずれ量で補正する。この処理により、X方向及びY方向のティーチングデータを、ピン9の基準位置に対する実際のピン9の位置のずれ量と等しいものとすることができる。換言すれば、生成部20(データ算出部25)が生成したティーチングデータから、撮像装置11の傾きに起因する水平方向のずれ量を差し引くことで、ピン9の基準位置に対する実際のピン9の位置のずれ量と等しいティーチングデータを算出することができる。
【0059】
補正部26は、第2〜第m移載先LP2〜LPmのそれぞれにおいて、傾斜検出部12により検出された傾きθと、距離検出部13により検出された距離Hとに基づいて、第2〜第m移載先LP2〜LPmのそれぞれのティーチングデータを補正する。補正部26により補正された補正ティーチングデータは、データ格納部24に格納される。
【0060】
図8は、上記した補正ティーチングデータの一例をテーブル形式で示した図である。
図8に示す「補正ティーチングデータ」の欄は、第2〜第m移載先LP2〜LPmにおけるティーチングデータについて、XYZ座標系の座標値で表している。
図8において、各座標値の単位は、X方向、Y方向、及びZ方向が例えばmmであり、Z方向まわりが°である。例えば、第2移載先LP2における第2補正量(+2、−3、−1、0)は、X方向に+2mm、Y方向に−3mm、Z方向に−1mm、Z方向まわりに0°であることを示している。なお、Z方向まわりは、例えば、上方から見て反時計回りを+方向とし、時計回りを−方向として設定される。
【0061】
補正ティーチングデータのうちX方向に関する値は、走行部Mの停止位置に関する誤差を含む。また、補正ティーチングデータのうちY方向に関する値は、移載装置Uの横出し機構8による昇降部3の横出し位置に関する誤差を含む。また、補正ティーチングデータのうちZ方向に関する値は、移載装置Uの昇降部38による保持部2の下降量に関する誤差を含む。また、補正ティーチングデータのうちZ方向まわりに関する値は、保持部2又は昇降部3をZ方向まわりに回転させる不図示の回転駆動部の回転量に関する誤差を含む。なお、補正ティーチングデータ(ティーチングデータ)としてZ方向まわりの値を加えるか否かは任意であり、補正ティーチングデータにZ方向まわりの値を加えなくてもよい。
【0062】
図4に示すデータ出力部27は、データ格納部24に格納された補正ティーチングデータを出力する。データ出力部27は、有線又は無線の通信回線により移動体Vの車載コントローラCに補正ティーチングデータを出力する。なお、
図2では総称して車載コントローラCと表記し、
図4及び
図9では、複数の移動体V1〜Vmに対応して移動体V1の車載コントローラC1を表記している。各移動体V1〜Vmは、データ出力部27から送られた補正ティーチングデータを用いて、第2〜第m移載先LP2〜LPmに対する物品1の受け渡しを行う。なお、第1移載先LP1を基準移載先MSTとして用いる場合、各移動体Vを自身の機差データを用いて第1移載先LP1に対する物品1の受け渡しを行う。補正ティーチングデータは、データ出力部27から上位コントローラCUに送られ、上位コントローラCUから各移動体V1〜Vmに送られてもよい。
【0063】
また、複数の移動体Vのうち、ティーチングデータを生成するために第2〜第m移載先LP2〜LPmの画像取得に用いられた移動体V(基準移動体)以外の移動体Vは、ティーチングユニット110を用いて自身の機差データを取得すればよく、第2〜第m移載先LP2〜LPmの画像を取得する動作は行わない。ただし、基準移動体としての移動体Vは1台であることに限定されず、2台以上の移動体Vが基準移動体として用いられてもよい。この場合、それぞれの移動体VがティーチングシステムTSを用いることで生成された複数のティーチングデータを平均化してもよい。
【0064】
図9は、車載コントローラC1〜Cmの機能ブロック構成の一例を示す。
図1では、移動体V1の車載コントローラC1を例として説明するが、他の移動体V2〜Vmについても同様の構成を有している。車載コントローラC1は、機差受信部31と、データ受信部32と、データ格納部33と、調整部34とを有する。機差受信部31は、例えば、ティーチングユニット110から送られた機差データを受信する。データ受信部32は、データ出力部27から送られた補正ティーチングデータを受信する。
【0065】
データ格納部33は、機差受信部31で受信した機差データ、及びデータ受信部32で受信した補正ティーチングデータを格納する。また、データ格納部33には、第1〜第m移載先LP1〜LPmの位置(座標値)に関するマップ情報が格納されている。調整部34は、データ格納部33に格納されている機差データ及び補正ティーチングデータに基づいて、マップ情報から得られた第2〜第m移載先LP2〜LPmの位置を補正し、第2〜第m移載先LP2〜LPmに対して物品1を移載するための移動体Vの停止位置、及び移載装置Uの駆動量を調整する。
【0066】
図10は、実施形態に係るティーチングデータ生成方法の一例を示すフローチャートである。ティーチングデータ生成方法は、上記したように複数の移動体Vのうちの1台または複数台である基準移動体がティーチングシステムTSを保持して軌道Tを走行し、第1〜第m移載先LP1〜LPmの画像をティーチングシステムTSの撮像装置11で撮像することにより行われる。なお、
図10に示すフローチャートの説明では、適宜、
図1〜
図9を参照する。
【0067】
まず、移動体V(基準移動体)は、ティーチングシステムTSを保持して走行し、第1〜第m移載先LP1〜LPm上に停止する。ティーチングシステムTSは、撮像装置11により移載先LPの画像を撮像する(ステップS01)。続いて、ティーチングシステムTSは、撮像装置11が撮像した画像に基づいて、データ算出部25によりティーチングデータを生成する(ステップS02)。ステップS02において,データ算出部25は、上記したように、撮像装置11が撮像した第2〜第m移載先LP2〜LPmの画像に基づいて得られる基準画像(機差補正後の第1移載先LP1の画像)とのずれから、第2〜第m移載先LP2〜LPmにおける各ティーチングデータを生成する。
【0068】
ティーチングシステムTSは、撮像装置11により第1〜第m移載先LP1〜LPmを撮像する際、傾斜検出部12により撮像装置11の傾きθを検出し、距離検出部13により撮像装置11と移載先LPとの距離Hを検出する(ステップS03)。続いて、ティーチングシステムTSは、傾斜検出部12で検出された傾きθと、距離検出部13で検出された距離Hとに基づいて、ティーチングデータを補正する(ステップS04)。ステップS04において、補正部26は、上記したように、傾きθと距離Hとから撮像装置11の傾きによる水平方向のずれ量を算出し、ティーチングデータをずれ量で補正する。第2〜第m移載先LP2〜LPmにおけるティーチングデータの補正は、それぞれでの傾きθ及び距離Hから得られるずれ量で補正する。このような一連の処理により補正されたティーチングデータ(補正ティーチングデータ)が生成される。
【0069】
このように、本実施形態に係るティーチングシステムTS及びティーチングデータ生成方法によれば、撮像装置11が傾いている場合であっても、撮像装置11により撮像された移載先LPの画像IMに基づいて生成されるティーチングデータを、鉛直方向からの撮像装置11の傾きθ、及び撮像装置11と移載先LPとの距離Hに基づいて補正するので、第2〜第m移載先LP1〜LPmにおける正確なティーチングデータを取得することができる。また、搬送システム100は、ティーチングシステムTSにより得られた正確なティーチングデータを用いることで、移動体Vにより移載先LPに対して確実に物品1を受け渡すことができる。
【0070】
図11は、ターゲット部材40の一例を示し、(A)は側面図、(B)は平面図である。上記した実施形態では、撮像装置11により移載先LPのピン9を撮像した画像を用いて機差データ又はティーチングデータを生成しているが、移載先LPを含む周辺の明るさによっては画像においてピン9の像が判別できない場合がある。ターゲット部材40は、このような場合において、移載先LPにおける目印を付与する。ターゲット部材40は、ティーチングシステムTSに含まれる。
【0071】
ターゲット部材40は、撮像装置11により上方から撮像可能な位置に複数の目印が設けられ、ティーチングデータを取得する際の移載先LPに載置される。ターゲット部材40は、
図11(A)及び(B)に示すように、脚部41と、本体部42と、発光部(目印)43と、移載先傾斜検出部44と、バッテリ45と、を有する。脚部41は、本体部42の下面側に複数設けられ、移載先LPのピン9を差し込み可能な不図示の凹部が設けられている。脚部41にピン9を差し込んだ状態では、本体部42は移載先LPに対して位置決めされる。
【0072】
発光部43は、本体部42の上面側に複数設けられる。発光部43は、本体部42から上方に向けて光を出射する。
図11(B)に示すように、発光部43は、上方から見て正方形の各角部である4カ所に配置されている。4カ所の発光部43は、同一であってもよいし、少なくとも1つを異ならせてもよい。発光部43の配置は、移載先LPのピン9の配置に関連付けられている。発光部43は、例えばLEDが用いられる。発光部43は、例えば、撮像装置11により撮像可能な波長の光を出射するLEDが選択される。
【0073】
移載先傾斜検出部44は、水平面に対する移載先LPの傾きを検出する。移載先傾斜検出部44は、例えば加速度センサ等が用いられる。移載先傾斜検出部44が検出した移載先LPの傾きに関する情報は、ターゲット部材40に備える不図示の通信部により、生成部20に送られる。補正部26は、移載先傾斜検出部44が検出した移載先LPの傾きに基づいて、生成部20で生成したティーチングデータを補正してもよいし、ティーチングデータに移載先LPの傾きに関する情報を加えてもよい。なお、ターゲット部材40は、移載先傾斜検出部44を備えなくてもよい。移載先傾斜検出部44を備えない場合、ティーチングシステムTSは、撮像装置11により撮像した移載先LPの画像から移載先LPの傾きを算出することができる。
【0074】
図12(A)及び(B)、並びに
図13(A)及び(B)は、撮像装置11による画像から移載先LPの傾きを検出する一例を説明する図である。
図12(A)に示すように、矩形の中心及び各角部に配置されたターゲットTG1〜TG5のうち、矩形の中心に配置されたターゲットTG3の鉛直上方に撮像装置11が配置される場合を例に挙げる。ターゲットTG1とターゲットTG2との間隔、及びターゲットTG4とターゲットTG5との隔間は、それぞれ距離2eである。ターゲットTG1とターゲットTG4との間隔、及びターゲットTG2とターゲットTG5との隔間は、それぞれ距離2hである。ターゲットTG1、TG2、TG4、TG5とターゲットTG2とのX方向の間隔は、それぞれ距離eである。ターゲットTG1、TG2、TG4、TG5とターゲットTG2とのY方向の間隔は、それぞれ距離hである。
【0075】
この状態で撮像装置11により撮像された画像は、
図12(B)に示すように、ターゲットTG1、TG2、TG4、TG5が矩形の各角部に配置され、ターゲットTG3が矩形の中心に配置された像として取得される。
【0076】
次に、
図13(A)に示すように、
図12(A)に示す状態から、撮像装置11がターゲットTG3の上方の位置AからXZ平面に沿って角度αだけ傾いて位置Bに変位した場合、撮像装置11は、位置Aから位置Bに距離dだけ−X側に変位することになる。なお、撮像装置11とターゲットTG3との距離Lは、位置Aと位置Bとで変化しない。位置Bの撮像装置11により撮像された画像は、
図13(B)に示すように、ターゲットTG1とターゲットTG2との間隔、及びターゲットTG4とターゲットTG5との隔間は、それぞれ距離2eより小さくなる。また、ターゲットTG1とターゲットTG4との間隔は距離2hより大きくなり、ターゲットTG2とターゲットTG5との隔間は距離2hより小さくなる。なお、撮像装置11とターゲットTG3との距離Lは変化しないことを前提する。
【0077】
すなわち、位置Bの撮像装置11を基準とすると、ターゲットTG1、TG2、TG4、TG5で形成される矩形の平面は、撮像装置11の撮像光軸AXに直交する平面に対して傾いていることになる。また、撮像光軸AXに直交する平面に対する傾きは、位置Aから位置Bに変位した角度αに相当する。従って、
図13(B)の画像から、例えば、距離2hに対するターゲットTG1とターゲットTG4との間隔変化量、及び距離2hに対するターゲットTG2とターゲットTG5との間隔変化量に基づいて、演算により角度αを算出することができる。
【0078】
なお、
図12及び
図13では、撮像装置11がXZ平面に沿って傾いた場合について説明しているが、撮像装置11がYZ平面に沿って傾いた場合についても同様に撮像光軸AXに直交する平面に対する傾きを算出できる。この手法を用いることにより、ティーチングシステムTSは、撮像装置11により撮像した移載先LP(ターゲット部材40)の画像から、水平面に対する移載先LPの傾きを算出することができる。その結果、ターゲット部材40において移載先傾斜検出部44が不要となり、ティーチングシステムTSのコスト増加を防止できる。
【0079】
図14及び
図15は、ティーチングシステムTSの他の例を示すブロック図である。上記した実施形態の構成では、生成部20が本体部10に設けられ、本体部10により生成部20が撮像装置11、傾斜検出部12、及び距離検出部13と一体化された構成を例に挙げて説明しているが、この構成に限定されない。
図14に示すティーチングシステムTS1は、生成部20が移動体Vの車載コントローラCにおける一部の機能として設けられている。すなわち、ティーチングシステムTS1は、車載コントローラCを含めて構成される。
【0080】
図14のティーチングシステムTS1では、移動体Vに保持される本体部10に撮像装置11、傾斜検出部12、及び距離検出部13が設けられる。撮像装置11により撮像した画像に関する情報、傾斜検出部12により検出した撮像装置11の傾きθに関する情報、及び距離検出部13により検出した撮像装置11から移載先LPまでの距離Hに関する情報は、本体部10に備える不図示の通信部により車載コントローラCに送られ、各情報を生成部20が取得する。
【0081】
なお、移動体V1が本体部10を保持する場合、移動体V1の車載コントローラC1に生成部20が設けられてもよいし、移動体V1以外の移動体V2〜Vnの車載コントローラC2〜Cnのいずれかに生成部20が設けられてもよい。生成部20により生成されたティーチングデータ(補正ティーチングデータ)は、生成部20が設けられた車載コントローラCから、他の移動体Vの車載コントローラCに配信される。
【0082】
このティーチングシステムTS1によれば、車載コントローラCの機能の一部を用いてティーチングデータ(補正ティーチングデータ)を生成するので、ティーチングシステムTS1の構成を簡略化できる。
【0083】
図15に示すティーチングシステムTS2は、生成部20が上位コントローラCUにおける一部の機能として設けられている。すなわち、ティーチングシステムTS2は、上位コントローラCUを含めて構成される。なお、移動体Vに保持される本体部10に撮像装置11、傾斜検出部12、及び距離検出部13が設けられる点は、
図14のティーチングシステムTS1と同様である。なお、生成部20により生成されたティーチングデータ(補正ティーチングデータ)は、上位コントローラCUから各移動体Vの車載コントローラCに配信される。
図15のティーチングシステムTS2では、生成部20が上位コントローラCUに設けられているが、上位コントローラCU以外の処理装置に生成部20が設けられてもよいし、本体部10とは別の生成部20専用の処理装置であってもよい。
【0084】
このティーチングシステムTS2によれば、上位コントローラCU等の処理装置の機能の一部を用いてティーチングデータ(補正ティーチングデータ)を生成するので、ティーチングシステムTS2の構成を簡略化できる。また、高性能な処理装置によりティーチングデータを生成するので、ティーチングデータ(補正ティーチングデータ)を早く生成することができる。
【0085】
以上、実施形態について説明したが、本発明の技術的範囲は、上記した記載に限定されない。また、上記した実施形態に、多様な変更又は改良を加えることが可能であることが当業者において明らかである。そのような変更又は改良を加えた形態も本発明の技術的範囲に含まれる。例えば、上記した実施形態では、ティーチングシステムTSを用いて移動体Vの機差データを生成しているが、この形態に限定されない。例えば、移動体Vの機差データは、他の装置等で生成させ、この機差データをティーチングシステムTSが取得してティーチングデータを生成させる構成であってもよい。
【0086】
また、特許請求の範囲、明細書及び図面中において示したシステム、方法、装置、プログラム及び記録媒体における動作、ステップ等の各処理の実行順序は、前の処理の出力を後の処理で用いるものでない限り、任意の順序で実現可能である。また、上記した実施形態における動作に関して、便宜上「まず」、「次に」、「続いて」等を用いて説明したとしても、この順で実施することが必須ではない。