以下、本発明の実施形態について添付図面を参照しながら以下の順に説明する。なお、各図において対応する構成要素には同一の符号が付され、重複する説明は省略される。
(1)ロボットの構成:
(2)制御装置の構成:
(3)撮像装置の構成:
(4)教示処理:
(5)製造処理:
(6)他の実施形態:
(1)ロボットの構成:
図1および図2は本発明の一実施形態にかかるロボット1の利用態様を示す図である。本実施形態にかかるロボット1は、水平多関節ロボット(SCARA型ロボット)である。本実施形態にかかるロボット1は水平面(x−y平面)に設置されており、水平面内においてy方向に平行な方向にワークを搬送可能な搬送装置20,21の間に設置されている。
ロボット1は、ベース10とアーム11とアーム12とを備えており、ベース10は、x−y平面に対して垂直な方向(z軸方向)に向けて延び、上端(z軸正方向の端部)においてアーム11を回転可能に支持している。アーム11は、x−y平面に対して平行に延びる部材であり、ベース10と逆側の端部の上端でアーム12を回転可能に支持している。すなわち、アーム11は、z軸に平行な回転軸A1を中心にしてベース10に対して回転可能であり、アーム12は、z軸に平行な回転軸A2を中心にしてアーム11に対して回転可能である。従って、ロボット1は、アーム11,12がx−y平面内で回転可能な水平多関節ロボットである。
アーム12の先端にはピックアップ部材30と撮像装置31とが取り付けられている。ピックアップ部材30は、アーム12に対してz軸方向に移動可能に支持されている。z軸方向への移動は種々の機構によって実現されて良く、例えば、ボールネジ機構やソレノイド等によって実現可能である。ピックアップ部材30の下部には図示しない吸着機構が備えられており、真空ポンプ45の動作による減圧が吸着機構の下方に存在する部品に作用することで、当該部品をピックアップ部材30の下部に吸着することができる。従って、ピックアップ部材30が部品上端まで近づけられた状態で吸着機構において減圧が行われると当該部品がピックアップされる。
撮像装置31は、ピックアップ部材30の下方に存在し得るワーク(被写体:部品や製造品等)を含む視野内の画像を撮像できるように、アーム12の先端に取り付けられている。従って、撮像装置31においては、ピックアップ部材30によってピックアップされるワークやワークによる作業対象とそれらの周辺の画像を撮像することができる。また、撮像装置31は、撮像エリアがx−y平面に平行に向けられたエリアセンサー(不図示)と、当該エリアセンサーをz軸に平行な回転軸A3で回転させる駆動部(不図示)を備えており、駆動部が駆動することによってエリアセンサーの向きをx−y平面内で回転させることができる。なお、本実施形態において撮像装置31に備えられたエリアセンサーは、ローリングシャッター方式のエリアセンサーである。
搬送装置20は、複数の部品W1をy軸正方向に向けて搬送可能なコンベヤーであり、搬送装置21は、複数の製造品W2をy軸正方向に向けて搬送可能なコンベヤーである。本実施形態において、搬送装置20,21は制御装置40によって制御される。すなわち、制御装置40は、図示しない制御部を備えており、当該制御部において実行するプログラムにより、搬送装置20,21に対して搬送速度を指示し、また、当該搬送速度を検出することができる。そして、制御部は、当該検出された搬送速度が指示通りの搬送速度となるように、搬送装置20,21の図示しないモーターを制御する。
以上のように、本実施形態においては、ロボット1の両側に配置された搬送装置20,21で部品W1および製造品W2が搬送されている。制御装置40は、ロボット1の動作も制御可能であり、制御装置40は、搬送装置20上を流れる部品W1をピックアップする動作と、搬送装置21上を流れる製造品W2に部品W1を嵌め込む組立動作とを、ロボット1に実行させる。
(2)制御装置の構成:
制御装置40は、搬送装置20,21とロボット1とを制御することが可能である。以下、ロボット1を制御するために制御装置40が備える構成を説明する。制御装置40は、図示しないプログラムの実行部(CPU,RAM,ROM等)を備えている。本実施形態においては、制御装置40が制御プログラムを実行することにより、制御装置40が相対移動方向取得部41および駆動制御部42として機能する。
制御装置40は、図示しないインタフェースを介して信号の入出力を行うことが可能であり、当該インタフェースを介してロボット1内のモーターと真空ポンプ45と撮像装置31とに接続されている。
制御装置40は、駆動制御部42の機能により、ロボット1と真空ポンプ45と撮像装置31とを制御することができる。すなわち、制御装置40は、駆動制御部42の機能により、アーム11,12およびピックアップ部材30を駆動するための各モーターに制御信号を出力する。当該制御信号により、制御装置40は、アーム11,12の角度を可動範囲内で任意の角度に調整することができ、アーム12の先端に取り付けられたピックアップ部材30を可動範囲内で任意の位置に移動させることができる。
制御装置40は、真空ポンプ45に対して制御信号を出力することにより、任意のタイミングでピックアップ部材30内の圧力調整空間内を減圧させることができ、ピックアップ部材30の下部の吸着機構に当該減圧を作用させてワークを吸着させることができる。また、制御装置40は、ピックアップ部材30に対して制御信号を出力することにより、任意のタイミングにおいて可動範囲内で任意の量だけピックアップ部材30を上下動させることができる。
さらに、制御装置40は、撮像装置31に対して制御信号を出力することにより、任意のタイミングで撮像装置31内のエリアセンサーを動作させ、視野内の被写体を撮像させることができる。撮像された画像データは制御装置40によって取得され、図示しない記録媒体に記録される。
本実施形態において、ロボット1は、任意の作業を行うために事前に教示が行われる。すなわち、作業の開始から終了までの動作が複数の工程に分割され、各工程が開始される際のロボット1の目標位置(アーム11,12の角度およびピックアップ部材30の位置)が予め規定され、教示情報として図示しない記録媒体に記録されている。制御装置40は、駆動制御部42の機能により、当該教示情報を参照し、アーム11,12およびピックアップ部材30に制御信号を出力することにより、アーム11,12の角度およびピックアップ部材30の位置を教示情報が示す目標位置とする。なお、本実施形態においては、搬送装置20,21における部品W1および製造品W2の搬送方向が予め特定され、教示情報に含まれている。
また、制御装置40は、駆動制御部42の機能により、目標位置に達した後にピックアップ部材30や真空ポンプ45を既定の順序で動作させる。以上の処理を繰り返すことにより、制御装置40は、ロボット1を既定の順序通りに動作させ、搬送装置20上を流れる部品W1をピックアップ部材30によってピックアップする動作と、搬送装置21上を流れる製造品W2にピックアップした部品W1を嵌め込む組立動作とを実行させる。
なお、本実施形態におけるロボット1は、撮像装置31が撮像した画像に基づいて、搬送装置20上を流れる部品W1の位置や、搬送装置21上を流れる製造品W2の位置(部品W1を嵌め込む位置)を決定する。例えば、部品W1は、x軸方向に複数個(図2では3個)並べられ、y軸方向にも複数個並べられた状態で搬送装置20によって搬送される。そして、ロボット1は、x軸方向、y軸方向に並べられた部品W1の中から1個を選択してピックアップして搬送装置21側に運び、搬送装置21によって搬送される製造品W2に取り付ける。
本実施形態において制御装置40は、部品W1をピックアップする際、撮像装置31によって搬送装置20上を搬送される部品W1を撮像する。制御装置40は、当該撮像画像を解析することにより、ピックアップ対象となる部品W1を特定し、搬送装置20による搬送に伴う当該部品W1の位置変化を搬送装置20の搬送速度に基づいて特定する。むろん、部品W1の位置変化は撮像画像に基づいて特定されても良い。そして、制御装置40は、搬送装置20によって搬送されている部品W1をピックアップできるようにアーム11,12を駆動し、特定された位置で吸着できるようにピックアップ部材30および真空ポンプ45を駆動することで、部品W1を1個ずつピックアップしていく。
また、制御装置40は、部品W1を製造品W2に取り付ける際、撮像装置31によって搬送装置21上を搬送される製造品W2を撮像する。制御装置40は、当該撮像画像を解析することにより、製造品W2上での部品W1の嵌め込み位置を特定し、搬送装置21による搬送に伴って変化する当該部品W1の嵌め込み位置を搬送装置21の搬送速度(撮像画像が利用されても良い)に基づいて特定する。そして、制御装置40は、特定された位置に部品W1を嵌め込むことができるようにアーム11,12を駆動し、特定された位置に部品W1を嵌め込むようにピックアップ部材30および真空ポンプ45を駆動することで、部品W1を1個ずつ嵌め込んでいく。
(3)撮像装置の構成:
以上のように、本実施形態においてロボット1は、搬送装置20,21によってy軸方向に移動し得る部品W1や製造品W2を撮像し、撮像画像に基づいてロボット1の動作を調整する。従って、撮像画像内の被写体(部品W1および製造品W2)の位置や形状を正確に解析する必要がある。当該解析は、被写体の像に歪みがあると正確に実施することができない。そして、本実施形態におけるエリアセンサーはローリングシャッター方式のエリアセンサーであるため、露光タイミングずれに起因する画像の歪みが副走査方向に沿って発生し得る。
図4は、撮像装置31が備えるエリアセンサーの撮影範囲31c1を模式的に示した図である。図4の左側はエリアセンサーの撮影範囲31c1を模式的に示し、当該撮影範囲31c1の図の中に撮影範囲31c1に撮影されながら移動している被写体を模式的に示している。さらに、図4の右側には当該被写体がエリアセンサーの撮影範囲31c1で撮影された場合の撮像画像I1を模式的に示している。図4において、エリアセンサーの撮影範囲31c1は直交する2軸(i軸およびj軸)に平行な2辺を有する矩形の範囲である。具体的には、エリアセンサーはi軸方向に複数の素子が並ぶことによって1ラインを構成し、各ラインがj方向に並んでいる。
本実施形態において、エリアセンサーの撮影範囲31c1はローリングシャッター方式のエリアセンサーで撮影されるため、1ラインを構成する全素子の露光は同時に開始され、同時に終了する。一方、異なるラインにおける露光の開始タイミングは異なっており、j軸方向の一方の端に存在するラインL1から露光が開始され、所定期間経過後に次のラインL2(不図示)の露光が開始される。以後、隣接するラインにおける露光開始タイミングが所定期間ずつずれながらライン順次に露光が開始され、やがて最終ラインLnの露光が開始される。このように、各ラインで所定期間だけずれたタイミングで露光が開始され、各ラインで所定の露光期間だけ露光が行われると、各ラインにおいて順次露光が終了する。従って、本実施形態においてはi軸方向が主走査方向、j軸方向が副走査方向となる。
ローリングシャッター方式においては、以上のように、ライン毎に露光開始タイミングがずれているため、各ラインにおいて撮像する時刻が異なっている。従って、エリアセンサーに対して相対的に移動する被写体が撮像される場合、異なる位置に存在する被写体が異なるラインで撮像されることになる。例えば、図4に示す例においてはj軸方向に副走査が行われるため、図4の上部に存在するラインは下部に存在するラインよりも早い時刻で被写体を撮像していることを示す。
ここで、図4に示すように、エリアセンサーの撮影範囲31c1が正方形の被写体Wを撮像する場合を考える。この被写体Wが、図4において破線の矢印で示すようにi軸の負方向に相対移動している場合、図4に示すエリアセンサーの撮影範囲31c1の下部に存在するラインは、上部に存在するラインよりも遅い時刻における被写体を撮像する。従って、図4の撮像画像I1として示されるように、被写体Wの像Iwの下部が上部よりもi軸の負方向に遷移した状態で画像が撮像される。
被写体Wの像Iwにおいては、副走査方向に沿って歪みの量が拡大していくため、当該歪みを補正しようとすると、ライン毎に異なる量の歪みを解消する必要があり、複雑な補正が必要になる。また、被写体Wの移動方向がj軸と非平行(例えば、j軸に対して斜め)である場合、より複雑な歪みを含む画像が撮像されるため、歪みを解消するために極めて複雑な補正が必要になる。
一方、被写体Wの移動方向が副走査方向であるj軸方向と平行である場合、歪みが単純になる。図5は、エリアセンサーの撮影範囲31c1が正方形の被写体Wを撮像する例であって、被写体Wが、図5の左側において破線の矢印で示すようにj軸の正方向に相対移動している例における撮像画像I2を模式的に示している。この例においても副走査方向はj軸の正方向であり、図5の下部に存在するラインは、上部に存在するラインよりも遅い時刻における被写体を撮像する。
従って、図5の撮像画像I2として示されるように、被写体Wの像Iwがj軸の正方向に伸張した状態で画像が撮像される。この像Iwにおいて、i軸方向において歪みの影響は現れず、j軸方向のみに影響がある。従って、副走査方向のみを縮小する画像処理によって当該歪みを補正することができる。なお、副走査方向または被写体Wの移動方向が図5に示す例と逆方向である場合、撮像される画像は副走査方向に縮小された画像になる。従って、副走査方向のみを伸張する画像処理によって歪みを補正することができる。
そこで、本実施形態において、制御装置40は、エリアセンサーに対して相対移動する被写体(部品W1や製造品W2)を撮像する場合に、相対移動の方向とエリアセンサーの副走査方向とが平行になるようにエリアセンサーの向きを制御する。このために、本実施形態にかかる撮像装置31は、エリアセンサーの副走査方向を、被写体の相対移動の方向に平行にする駆動部を備えている。
図6は、撮像装置31の構成例を示すブロック図である。図6に示すように、撮像装置31は、相対移動方向受信部31aと駆動部31bとエリアセンサー31cとレンズ機構31dを備えている。相対移動方向受信部31aは、被写体が搬送される搬送方向を示す情報を制御装置40から受信することができる。
すなわち、制御装置40は、図示しないプログラムの実行部によって相対移動方向取得部41として機能し、制御装置40は相対移動方向取得部41によって教示情報を参照し搬送装置20,21における部品W1,製造品W2の搬送方向を取得して撮像装置31に対して送信する。撮像装置31においては、相対移動方向受信部31aが当該搬送方向を取得する。当該搬送方向が特定されると、エリアセンサー31cが搬送装置20,21の上空に存在する場合において、エリアセンサー31cからみた被写体の移動方向が特定されることになる。従って、撮像装置31は相対移動方向受信部31aによって、エリアセンサー31cに対して被写体が相対移動する方向を取得することになる。駆動部31bは、エリアセンサー31cを当該エリアセンサー31cの撮像面に平行な面内で回転させる機構を備えている。
図6においては、駆動部31bによってエリアセンサー31cが回転可能であることが破線の矢印によって模式的に示されている。相対移動方向受信部31aが搬送装置20における部品W1の搬送方向を取得すると、相対移動方向受信部31aが当該搬送方向に平行な方向を特定し、駆動部31bに制御信号を出力する。この結果、駆動部31bが回転機構を駆動してエリアセンサー31cを回転させ、部品W1の搬送方向とエリアセンサー31cの副走査方向とを平行にする。例えば、図1、図2に示す例であれば、ピックアップ部材30において部品W1をピックアップする際に、ピックアップ部材30が搬送装置20の上空の教示位置に配置されると、エリアセンサー31cの副走査方向がy軸に平行になる。
相対移動方向受信部31aが搬送装置21における製造品W2の搬送方向を取得すると、総体移動方向受信部31aが当該搬送方向に平行な方向を特定し、駆動部31bに制御信号を出力する。この結果、駆動部31bが回転機構を駆動してエリアセンサー31cを回転させ、製造品W2の搬送方向とエリアセンサー31cの副走査方向とを平行にする。例えば、図1、図2に示す例であれば、ピックアップ部材30において部品W1を製造品W2に嵌め込む際に、ピックアップ部材30が搬送装置21の上空の教示位置に配置されると、エリアセンサー31cの副走査方向がy軸に平行になる。なお、レンズ機構31dは、被写体の像をエリアセンサー31cの撮影範囲31c1に結像させる機構であれば良く、図6に示す例においては、二点鎖線で示すように被写体領域31c2を縮小してエリアセンサー31cの撮影範囲31c1に結像させる縮小光学系である。また、レンズ機構31dは、エリアセンサー31cの回転とともに回転されても良いし、エリアセンサー31cがレンズ機構31dと独立に回転されてもよい。後者の場合、エリアセンサー31cの回転軸はレンズ機構における光軸と一致していることが好ましい。
エリアセンサー31cによって撮像が行われると、撮像された画像を示す画像データは制御装置40に送信され、図示しない記録媒体に記録される。制御装置40は、駆動制御部42の機能により、画像データが示す撮像画像に対して副走査方向のみを縮小または伸張する画像処理を行う。そして、制御装置40は、画像処理後の画像を解析することにより、ピックアップ部材30の位置を特定し、アーム11,12を駆動して特定された位置にピックアップ部材30を配置する。
本実施形態においては、露光タイミングずれに起因した画像の歪みが主走査方向には発生せず、副走査方向のみに発生するため、副走査方向のみを縮小または伸張する単純な画像処理によって歪みを補正することができる。従って、ロボット1は、撮像画像に基づいて正確な位置にピックアップ部材30を配置しながら作業を行うことができる。以上の構成によれば、ローリングシャッター方式のエリアセンサーを利用して実用的なロボットを提供することができる。従って、グローバルシャッター方式のエリアセンサーを利用したロボットよりも低コストで実用的なロボットを提供することができる。
(4)教示処理:
次に、本実施形態にかかるロボット1に教示を行う際の教示処理を説明する。図7は、教示処理を示すフローチャートである。教示処理において、利用者は、部品のピックアップ工程の教示位置を教示する(ステップS100)。すなわち、利用者は、ティーチングペンダント等を利用して、部品をピックアップする工程の初期位置にアーム11,12およびピックアップ部材30を移動させる。例えば、搬送装置20の上空にピックアップ部材30が配置された教示位置において撮像装置31で撮影された撮像画像に基づいて、ピックアップ対象の部品W1が選定され、吸着される工程がピックアップ工程である例を想定する。この場合、利用者は、x軸方向に並ぶ部品W1の全列(図2に示す例であれば3列)が撮像装置31の視野に含まれる角度にアーム11,12を回転させ、ピックアップ部材30を最上部まで上昇させる。
そして、利用者は、ティーチングペンダント等を操作し、アーム11,12の角度とピックアップ部材30の位置を教示位置とし、図示しない記録媒体に記録する。むろん、教示位置はより多数であっても良く、例えば、各部品W1がピックアップ部材30で吸着される位置が教示され、撮像装置31の撮像画像に基づいて当該位置が補正されながらピックアップが行われる構成等であっても良い。
教示情報が記録媒体に記録されると、次に、利用者は、部品の搬送方向を教示する(ステップS105)。すなわち、利用者は、搬送装置20による部品W1の搬送方向を特定し、ロボット1のベース10が設置された設置位置に対して固定されたロボット座標系(図1、図2に示すxyz座標系)における搬送方向を特定する。そして、利用者は、ティーチングペンダント等を操作し、当該搬送方向を教示情報として図示しない記録媒体に記録させる。例えば、図1,図2に示す例であれば、y軸の正方向が搬送方向として教示される。
次に利用者は、製造品に対する部品の嵌め込み工程の教示位置を教示する(ステップS110)。すなわち、利用者は、ティーチングペンダント等を利用して、部品を製造品に嵌め込む工程の初期位置にアーム11,12およびピックアップ部材30を移動させる。例えば、搬送装置21の上空にピックアップ部材30が配置された教示位置において撮像装置31で撮影された撮像画像に基づいて、製造品W2に対して部品W1を嵌め込む凹部の位置が特定され、当該凹部に部品W1が嵌め込まれる工程が嵌め込み工程である例を想定する。
この場合、利用者は、製造品W2の上部に存在する凹部が撮像装置31の視野に含まれる角度にアーム11,12を回転させ、ピックアップ部材30を最上部まで上昇させる。そして、利用者は、ティーチングペンダント等を操作し、アーム11,12の角度とピックアップ部材30の位置を教示位置とし、図示しない記録媒体に記録する。むろん、教示位置がより多数であるなど、他の構成が採用されてもよい。
教示情報が記録媒体に記録されると、次に、利用者は、製造品の搬送方向を教示する(ステップS115)。すなわち、利用者は、搬送装置21による製造品W2の搬送方向を特定し、ロボット座標系(図1、図2に示すxyz座標系)における搬送方向を特定する。そして、利用者は、ティーチングペンダント等を操作し、当該搬送方向を教示情報として図示しない記録媒体に記録させる。例えば、図1,図2に示す例であれば、y軸の正方向が搬送方向として教示される。以上のようにして任意の作業に関する教示情報が生成されると、制御装置40は、当該教示情報に基づいて当該作業を実行することができる。
(5)製造処理:
次に、製造処理を詳細に説明する。図8は、製造処理を示すフローチャートである。当該製造処理は、搬送装置20によって部品W1が既定の搬送速度で搬送され、搬送装置21によって製造品W2が既定の搬送速度で搬送されている状況で実行される。製造処理が開始されると、制御装置40は、駆動制御部42の機能により、部品のピックアップ工程の教示位置へアームを移動させる(ステップS200)。すなわち、制御装置40は、教示情報を参照し、ステップS100で教示された教示位置にアーム11,12およびピックアップ部材30を移動させるための制御信号を出力する。この結果、アーム11,12が回転し、教示位置とされた角度となって停止する。また、ピックアップ部材30が最上部まで移動して停止する。
次に、制御装置40は、相対移動方向取得部41の機能により、部品の搬送方向とエリアセンサーの副走査方向とを平行化させる(ステップS205)。すなわち、制御装置40は、教示情報を参照して搬送装置20の搬送方向を取得し、当該搬送方向を撮像装置31に対して送信する。搬送方向が送信されると、撮像装置31の相対移動方向受信部31aは、当該搬送方向を受信する。そして、相対移動方向受信部31aは当該搬送方向を特定し、駆動部31bに制御信号を出力する。駆動部31bは回転機構を駆動してエリアセンサー31cを回転させる。この結果、部品W1の搬送方向とエリアセンサー31cの副走査方向とが平行になる。
次に、制御装置40は、エリアセンサー31cによる撮像を行う(ステップS210)。すなわち、制御装置40は、駆動制御部42の機能により、撮像装置31に制御信号を出力し、エリアセンサー31cの撮像画像を取得する。次に、制御装置40は、駆動制御部42の機能により、当該撮像画像に対して補正を行う(ステップS215)。すなわち、本実施形態においては、部品W1の移動方向とエリアセンサーの副走査方向とが平行であるため、部品W1の像は副走査方向に歪み、主走査方向には歪まない。そこで、制御装置40は、撮像された画像に対して副走査方向のみを縮小または伸張する画像処理を行う。より具体的には、相対移動の速度に応じた比率で縮小または伸張を実行する。
本実施形態においては、相対移動の速度毎の比率(相対移動速度の大きさおよび方向に対応づけられた比率)が予め決められており、図示しない記録媒体に記録されている。そこで、制御装置40は、当該記録媒体を参照して搬送装置20による搬送速度および方向に基づいて、相対移動の速度に応じた比率を取得する。すなわち、本実施形態においてエリアセンサー31cは静止した状態で撮像されるため、制御装置40は、搬送速度の方向と光学系による像の逆転とに基づいて、搬送装置20の搬送速度および方向からエリアセンサー31c上での被写体の相対移動速度の大きさおよび方向を特定することができる。そして、制御装置40は、エリアセンサー31c上での被写体の相対移動方向が副走査方向と一致する場合、相対移動速度の大きさおよび方向に対応した比率で縮小を行う。一方、エリアセンサー31c上での像の移動方向が副走査方向と逆向きである場合、制御装置40は、対移動速度の大きさおよび方向に対応した比率で伸張を行う。
なお、相対移動の速度に応じた比率は、種々の手法で特定されて良い。例えば、相対移動速度毎の歪みの量は複数の相対速度および方向によって被写体を撮像するなどして予め特定することができる。そこで、複数の相対移動速度および方向、相対移動速度0で部品を撮像し、各相対移動速度および方向で撮像された部品の像の副走査方向の長さを相対移動速度0で撮影された部品の像の副走査方向の長さで除することより、各相対移動速度の比率が予め特定される。そして、各相対移動速度と比率とを対応づけたテーブル情報や、相対移動速度から比率を算出する関数情報が生成され、図示しない記録媒体に記録すれば良い。以上の構成によれば、縮小または伸張といった極めて単純な画像処理によって露光タイミングずれに起因した画像の歪みを補正することができる。
次に、制御装置40は、補正後の画像に基づいて部品をピックアップする(ステップS220)。すなわち、制御装置40は、補正後の画像に基づいて、ピックアップ対象の部品W1を特定し、補正後の画像に基づいて当該ピックアップ対象の部品W1の正確な位置を特定する。また、制御装置40は、搬送装置20の搬送速度とピックアップ部材30の動作(移動、下降、吸着)に要する時間に基づいて、当該時間が経過した後における部品W1の位置を特定する。そして、制御装置40は、駆動制御部42の機能により、ロボット1のモーターに制御信号を出力し、アーム11,12を移動させ、当該位置の上空にピックアップ部材30を配置する。さらに、制御装置40は、ロボット1のモーターに制御信号を出力し、ピックアップ部材30を下降させる。そして、真空ポンプ45に制御信号を出力することにより、ピックアップ部材30に部品W1を吸着させる。
次に、制御装置40は、駆動制御部42の機能により、製造品に対する嵌め込み工程の教示位置へアームを移動させる(ステップS225)。すなわち、制御装置40は、教示情報を参照し、ステップS110で教示された教示位置にアーム11,12およびピックアップ部材30を移動させるための制御信号を出力する。この結果、アーム11,12が回転し、教示位置とされた角度となって停止する。また、ピックアップ部材30が最上部まで移動して停止する。
次に、制御装置40は、相対移動方向取得部41の機能により、製造品の搬送方向とエリアセンサーの副走査方向とを平行化させる(ステップS230)。すなわち、制御装置40は、教示情報を参照して搬送装置21の搬送方向を取得し、当該搬送方向を撮像装置31に対して送信する。搬送方向が送信されると、撮像装置31の相対移動方向受信部31aは、当該搬送方向を受信する。そして、相対移動方向受信部31aは当該搬送方向に平行な方向を特定し、駆動部31bに制御信号を出力する。この結果、製造品W2の搬送方向とエリアセンサー31cの副走査方向とが平行になる。
次に、制御装置40は、エリアセンサー31cによる撮像を行う(ステップS235)。すなわち、制御装置40は、駆動制御部42の機能により、撮像装置31に制御信号を出力し、エリアセンサー31cの撮像画像を取得する。次に、制御装置40は、駆動制御部42の機能により、当該撮像画像に対して補正を行う(ステップS240)。すなわち、制御装置40は、記録媒体を参照して搬送装置21による搬送速度に応じた比率を取得する。そして、搬送方向が副走査方向と一致している場合、制御装置40は、当該比率で撮像画像を縮小する。一方、搬送方向が副走査方向と逆向きである場合、制御装置40は、当該比率で撮像画像を伸張させる。ここでも、縮小または伸張といった極めて単純な画像処理によって露光タイミングずれに起因した画像の歪みを補正することができる。
次に、制御装置40は、補正後の画像に基づいて部品を製造品に挿入する(ステップS245)。すなわち、制御装置40は、補正後の画像に基づいて、挿入対象の製造品W2を特定し、補正後の画像に基づいて当該挿入対象の製造品W2における挿入部の正確な位置を特定する。また、制御装置40は、搬送装置20の搬送速度とピックアップ部材30の動作(移動、下降、吸着の解除)に要する時間に基づいて、当該時間が経過した後における挿入部の位置を特定する。
そして、制御装置40は、駆動制御部42の機能により、ロボット1のモーターに制御信号を出力し、アーム11,12を移動させ、当該位置の上空にピックアップ部材30を配置する。さらに、制御装置40は、ロボット1のモーターに制御信号を出力し、ピックアップ部材30を下降させる。そして、真空ポンプ45に制御信号を出力することにより、ピックアップ部材30による部品W1の吸着を解除して挿入部に対する挿入を完了させる。
次に、制御装置40は、製造が完了したか否かを判定する(ステップS250)。すなわち、製造の完了条件は予め特定されており、当該完了条件が満たされた場合、制御装置40は、製造が完了したと判定する。なお、製造の完了条件は、種々の条件によって定義可能であり、例えば、製造品に対する既定回数の挿入の完了や、部品または製造品が搬送装置で搬送されない状態になったことなど、種々の条件が設定されて良い。ステップS250において、製造が完了したと判定されない場合、制御装置40は、ステップS200以降の処理を繰り返す。ステップS250において、製造が完了したと判定された場合、制御装置40は、製造処理を終了する。
(6)他の実施形態:
以上の実施形態は本発明を実施するための一例であり、他にも種々の実施形態を採用可能である。例えば、制御装置は、ロボットに内蔵されていても良いし、ロボットの設置場所と異なる場所、例えば外部のサーバ等に備えられていても良い。さらに、制御装置が複数のロボットを制御するように構成されていても良い。むろん、制御装置が複数の装置に分散して配置されていても良い。例えば、制御装置の一部がロボットに内蔵され、他の一部がロボットの外部のサーバ等に配置されていても良い。さらに、上述の実施形態の一部の構成が省略されてもよいし、処理の順序が変動または省略されてもよい。
ロボットは、ローリングシャッター方式のエリアセンサーを有していれば良い。すなわち、ロボットは、エリアセンサーで撮像された画像に基づいて動作可能であれば良い。エリアセンサーの被写体は、種々の被写体を想定可能であるが、ロボットによる作業の対象となるワーク等が被写体となり得る。ワークは、ロボットによってピックアップされる部品等であっても良いし、ロボットによって部品等が取り付けられる取付対象品や組立対象品等であっても良いし、ロボットによる作業(ネジ締め、研磨、バリ取り等)が行われる作業対象品であっても良く、種々のワークが想定可能である。
ローリングシャッター方式のエリアセンサーは複数のラインが並び、各ラインが複数の素子を備えている。そして、ライン毎に異なるタイミングで露光が開始され、ライン順次に各素子の露光結果が読み出されれば良い。エリアセンサーは、被写体を視野に含むように設置されればよく、ロボットがエリアセンサーの位置や姿勢を変化させることが可能な駆動部を備えていても良いし、固定的に設置されても良い。
また、エリアセンサーは種々の態様で提供されて良く、ロボットの構造体(アーム等)に内蔵されても良いし、エリアセンサーを含む撮像装置がエンドエフェクターや他の部位(人型ロボットの頭部等)に対して着脱可能であっても良い。ロボットにおいて、駆動部の移動方向や可動軸の数などは任意であり、任意の態様のロボットが採用されてよい。従って、上述のような水平多関節ロボットの他にも、直交ロボット、垂直多関節ロボット、双腕ロボットなど、種々の態様のロボットを本発明の実施形態とすることができる。
図9は、直交ロボット2の例を示す図である。直交ロボット2は、ベース200、アーム210,220、ハンド230,撮像装置231を備えている。アーム210はベース200に形成された溝200aに沿ってy軸方向に移動可能であり、アーム220はアーム210に形成された図示しない溝に沿ってz軸方向に移動可能である。ハンド230はアーム220に形成された図示しない溝に沿ってx軸方向に移動可能である。
直交ロボット2は、図示しない制御装置によって制御され、ハンド230を可動範囲内の任意の位置に移動させ、種々の作業を行うことができる。図9は、部品W3をハンド230によってピックアップし、部品W4に組み付ける組立作業を行う例である。この実施形態においても、撮像装置231にはエリアセンサーが組み込まれており、エリアセンサーはx−y平面に平行に配向されているとともに、z軸に平行な回転軸を中心に回転可能である。
制御装置は、ハンド230の移動の過程で撮像装置231によって部品W3を撮像しながら、ハンド230によって部品W3をピックアップするためにハンド230を配置すべき位置を特定する。また、ピックアップした部品W3を部品W4に対して組み付けるためにハンド230を配置すべき位置を特定する。この際、制御装置は、撮像装置231の図示しない駆動部に制御信号を出力し、部品W3や部品W4のエリアセンサーに対する相対移動方向に対して、エリアセンサーの副走査方向が平行になるようにエリアセンサーの向きを調整する。
すなわち、制御装置は、ハンド230の移動方向に対して平行になるようにエリアセンサーの向きを調整する。制御装置は、エリアセンサーの向きが調整された後に撮像された画像を補正し、補正後の画像に基づいてハンド230を配置すべき位置を特定する。この実施形態においても、部品W3や部品W4のエリアセンサーに対する相対移動方向に、エリアセンサーの副走査方向が平行であるため、制御装置は、単純な画像処理によって露光タイミングずれによる画像の歪みを低減した上で画像を解析することができる。
図10は、垂直多関節ロボット3の例を示す図である。垂直多関節ロボット3は、ベース300とベース300から延びる複数のアームを備えている。アームは、曲げ関節(回転軸に垂直な方向に延びるアームが回転する関節)および捻り関節(回転軸に平行な方向に延びるアームが回転する関節)の少なくとも一方を複数個備えていれば良く、種々の構成を使用可能である。
アームの先端にはハンド330と撮像装置331とが備えられている。垂直多関節ロボット3は、図示しない制御装置によって制御され、アームが種々の方向に回転することにより、可動範囲内において種々の位置にハンド330を配置し、ハンド330の姿勢が種々の姿勢になるように調整することができる。
図10は、部品W5をハンド330によってピックアップし、部品W6の挿入穴Hに挿入する作業を行う例である。この実施形態においても、撮像装置331にはエリアセンサーが組み込まれており、エリアセンサーは撮像装置331が延びる方向Axに垂直に配向されているとともに、当該方向Axに平行な回転軸を中心に回転可能である。
制御装置は、ハンド330の移動の過程で撮像装置331によって部品W5を撮像しながら、ハンド330によって部品W5をピックアップするためにハンド330を配置すべき位置を特定する。また、ピックアップした部品W5を部品W6の挿入穴Hに挿入するためにハンド330を配置すべき位置を特定する。この際、制御装置は、撮像装置331の図示しない駆動部に制御信号を出力し、部品W5や部品W6のエリアセンサーに対する相対移動方向に対して、エリアセンサーの副走査方向が平行になるようにエリアセンサーの向きを調整する。
すなわち、制御装置は、ハンド330の移動方向に対して平行になるようにエリアセンサーの向きを調整する。制御装置は、エリアセンサーの向きが調整された後に撮像された画像を補正し、補正後の画像に基づいてハンド330を配置すべき位置を特定する。この実施形態においても、部品W5や部品W6のエリアセンサーに対する相対移動方向に、エリアセンサーの副走査方向が平行であるため、制御装置は、単純な画像処理によって露光タイミングずれによる画像の歪みを低減した上で画像を解析することができる。
さらに、当該実施形態にかかる垂直多関節ロボット3は、ハンド330の移動軌跡および姿勢の選択自由度が高いため、各種の軌跡及び姿勢で部品W5や部品W6にハンド330を近づけることができる。そこで、軌跡が柔軟に変化したとしても、制御装置が被写体の相対移動方向に平行になるようにエリアセンサーの副走査方向を追従させて変化させる構成とすれば、移動過程において撮像された各撮像画像を単純な画像処理によって処理することで歪みを低減することが可能になる。
エリアセンサーにおいては各種の被写体を撮像することが可能であり、エリアセンサーに対して相対移動する被写体が撮像可能であればよい。相対移動は、エリアセンサーと被写体との少なくとも一方が移動することによって実現されれば良い。従って、搬送装置等によって移動する被写体がエリアセンサーによって撮像されても良いし、固定的に存在する被写体が移動するエリアセンサーによって撮像されても良いし、移動する被写体が移動するエリアセンサーによって撮像されても良い。
相対移動の方向は一定であっても良いし、変化しても良い。すなわち、相対移動の方向が一定である場合、当該直線的な相対移動の方向に対してエリアセンサーの副走査方向が平行であれば良い。相対移動の方向が変化する場合、当該相対移動の方向の変化に追従するようにエリアセンサーの位置および向きが変化し、副走査方向が平行になるように構成されていても良い。
エリアセンサーの向きは、その副走査方向が相対移動の方向と平行であることにより、露光タイミングずれに起因した画像の歪みが単純になり、ロボットでの使用に耐えない程の歪みが生じることが防止できれば(または補正で低減できる程度の歪みであれば)良い。従って、ロボットでの使用に耐えない歪みが生じないのであれば、平行から微小な範囲で角度がずれていても良い。すなわち、露光タイミングずれに起因した画像の歪みが単純になり、撮像された画像をそのまま使用可能であるか、単純な画像処理で歪みを低減して撮像された画像を使用可能である場合には、相対移動の方向とエリアセンサーの副走査方向とが平行であるといえる。
さらに、補正で低減できる程度の歪みにするために、エリアセンサーに対する被写体の相対移動方向が変化し得る構成のロボットにおいて、常にエリアセンサーに対する被写体の相対移動方向とエリアセンサーの副走査方向とが(平行に近い)一定の関係になるように制御されている構成であっても良い。この構成によれば、継続的にまたは間欠的に撮像された画像に対し、同種の画像処理(特定方向への縮小や伸張等)を行うことにより、歪みを低減することが可能になる。また、この場合において、相対移動速度が一定であれば、補正のパラメータ(比率の値等)も共通にすることができる。
単純な画像処理としては、相対移動の方向とエリアセンサーの副走査方向とが平行であることに応じて生じる副走査方向の歪みを、当該歪みの影響がないといえる程度に低減できる処理であればよい。このための構成例としては、エリアセンサーで撮像された画像に対して副走査方向のみを縮小または伸張する画像処理を行う構成が挙げられる。すなわち、相対移動の方向とエリアセンサーの副走査方向とが平行である場合、露光タイミングずれに起因した歪みは副走査方向のみに生じると考えられる。そこで、副走査方向のみを縮小または伸張する画像処理を行えば、露光タイミングずれに起因した画像の歪みを補正することができる。従って、極めて単純な画像処理によって露光タイミングずれに起因した画像の歪みを補正することができる。この構成によれば、画像処理時間が極めて短くなるため、エリアセンサーにおける継続的な撮像が行われ、歪みを低減する補正が行われた画像を実質的にリアルタイムに取得することが可能である。
画像処理は、副走査方向のみの縮小または伸張であれば良く、相対移動の方向が副走査方向と一致している場合は、被写体が副走査方向に伸びた歪みのある画像が撮像されるため、縮小が行われる。一方、相対移動の方向が副走査方向と逆向きである場合は、被写体が副走査方向に縮められた歪みのある画像が撮像されるため、伸張が行われる。なお、画像処理は、上述の実施形態のように、制御装置40で行われても良いし、撮像装置31に内蔵された制御部等で行われてもよい。
縮小および伸張は、副走査方向の画像の歪みを低減できるように実施されれば良く、例えば、相対移動の速度に応じて縮小および伸張の比率を変化させる構成が採用されてもよい。すなわち、相対移動の速度が速いほど画像の歪みは大きくなるので、相対移動の速度が速いほど補正による変化率(補正前後の大きさの変化/補正前の大きさ)が大きくなるように構成されていれば良い。すなわち、縮小であれば相対移動の速度が速いほど縮小率(補正後の大きさ/補正前の大きさ)が小さくなり、伸張であれば相対移動の速度が速いほど伸張率(補正後の大きさ/補正前の大きさ)が大きくなるように構成されていれば良い。
むろん、副走査方向における部品の搬送速度や走査速度等に基づいて縮小および伸張の比率が変化しても良い。図11は、搬送装置20と撮像装置31とを模式的に示す図である。当該図11においては、搬送装置20によって部品Wがy軸正方向に搬送速度vで搬送され、撮像装置31のエリアセンサー31cはy軸負方向に走査速度uで副走査する例が想定されている。また、撮像装置31の光学系において、焦点距離はf、レンズから部品Wまでの距離はLである。なお、走査速度uは、単位時間あたりの走査ライン数nとエリアセンサー31cのラインピッチpとによってu=p・nと表現することもできる。
この例において部品Wはf/Lに縮小されてエリアセンサー31c上に結像する。従って、y軸方向に長さSの部品Wが静止している場合、エリアセンサー31c上ではS・f/Lの長さになる。エリアセンサー31cにおいて、部品Wの撮像が開始されてから撮像が終了するまでの期間、すなわち、図11に示す二点鎖線の範囲が走査される期間をΔtとすると、この間にエリアセンサー31cはy軸方向にu・Δtの長さの範囲を走査する。一方、当該期間Δtにおいて部品Wは距離v・Δtだけ移動するため、期間Δtにおいて搬送装置20上で部品が存在するy軸方向の長さは(S+v・Δt)となる。従って、y軸方向の本来の長さがSの部品Wが長さ(S+v・Δt)として撮影されていたと見なすと、撮影された像をy軸方向にS/(S+v・Δt)倍すれば像の歪みが除去される。ここでは当該S/(S+v・Δt)を変形率Aと呼ぶ。
一方、y軸方向の長さが(S+v・Δt)である物体Wをエリアセンサー31cで撮像すると、エリアセンサー31c上ではy軸方向の像の長さは(S+v・Δt)・f/Lとなる。当該y軸方向の像の長さは、上述のように、u・Δtであるため、両者が等しいとすると、u・Δt=(S+v・Δt)・f/Lとなり、S=Δt・(u・L/f−v)、(S+v・Δt)=u・Δt・L/fとなる。
当該Sおよび(S+v・Δt)を上述の変形率Aに代入すると、A=Δt・(u・L/f−v)/(u・Δt・L/f)である。この式を整理すると、A=1−(v/u)・(f/L)となる。従って、変形率Aは、搬送速度vと走査速度uとの比を光学系による縮小率に乗じた値を1から減じた値となる。なお、ここでは、搬送速度vがy軸正方向を向いている場合に正、走査速度uがy軸負方向を向いている場合に正としているため、搬送方向と副走査方向とが逆方向である場合には変形率AがA=1−|(v/u)・(f/L)|となり、搬送方向と副走査方向とが同一方向である場合には変形率AがA=1+|(v/u)・(f/L)|となる。
いずれにしても、この例において変形率A内のパラメーターであるu,f,Lは予め測定可能である。また、搬送速度vは予め測定したり、搬送装置20への制御によって特定したり、センサーによって計測するなどして特定可能である。そこで、図1に示す構成において制御装置40が、いずれかの手法によって搬送速度vを取得し、既知の測定値としてのパラメーターu,f,Lを取得すれば、取得した値を代入することによって変形率Aを取得することができる。そして、制御装置40が、撮像装置31での撮像結果をy軸方向に沿って変形率Aで縮小または伸張させることにより、副走査方向の画像の歪みを低減する。
むろん、エリアセンサー31cにおいて副走査方向の走査速度が可変である場合には、調整された走査速度の値を制御装置40が取得して変形率Aを決定してもよい。また、撮像装置31がズームレンズを備えている場合には、ズーム後の縮小率(部品Wの副走査方向の実際の長さと副走査方向の像の長さとの比率(上述の例におけるf/L))を制御装置40が取得して変形率を決定してもよい。以上の構成によれば、搬送装置20における搬送速度vやエリアセンサー31cにおける副走査方向の走査速度uや、光学系における縮小率が可変である構成において、可変の要素の変化に応じて動的に副走査方向の画像の歪みを低減することが可能である。
さらに、相対移動の方向を取得する相対移動方向取得部と、取得された相対移動の方向に基づいて、エリアセンサーの副走査方向を相対移動の方向に平行にする駆動部とが備えられていても良い。すなわち、相対移動の方向が動的に変化し得る状況において、当該相対移動の方向の変化に合わせてエリアセンサーの副走査方向を変化させる構成であっても良い。この構成によれば、相対移動の方向が変化し得る構成においても、露光タイミングずれに起因する画像の歪みを低減することが可能なロボットを提供することができる。
なお、相対移動方向取得部は、相対移動の方向を取得することができればよく、エリアセンサーによって撮像された複数の画像に基づいて相対移動の方向が検出されても良いし、ロボットや被写体の移動方向が予め特定され、当該特定された方向に基づいて相対移動の方向が取得されても良く、種々の構成が採用可能である。