(58)【調査した分野】(Int.Cl.,DB名)
前記補正座標は、1つの作業原点と、当該作業原点の周囲の2つの基準点のそれぞれに対して前記計測位置取得部が取得した計測位置に基づく変換で設定されることを特徴とする請求項6記載のロボットシステム。
【発明を実施するための形態】
【0011】
以下、第1の実施形態について図面を参照しつつ説明する。
【0012】
<ロボットシステムの概略構成>
図1は、本実施形態のロボットシステムの概略的なシステムブロック構成の一例を表している。
図1においてロボットシステム1は、ロボットコントローラ2と、ロボット駆動制御装置3と、ロボットセル4とを有している。なお、本実施形態の例では、バイオメディカル分野の実験作業を行うロボットセル4を制御する場合を示しているが、他の工業部品の組み立て作業等を行うロボットセルを制御する場合に適用してもよい。
【0013】
ロボットコントローラ2は、所定の実験作業シーケンスに従って、各作業手順を実現するための後述の作業ロボット5の動作を指示する補正位置指令をロボット駆動制御装置3に出力する。このロボットコントローラ2は、作業計画部21、ジョブ記憶部22、軌道計画部23、補正部24、計測位置取得部25、作業原点記憶部26とを有している。
【0014】
作業計画部21は、上記実験作業シーケンスを構成する多数の作業手順を時系列順に実行するよう、次に作業ロボット5に行わせるジョブ(具体的な動作内容などを規定する数値制御の動作指令プログラム)をジョブ記憶部22(動作プログラム記憶部)から取得し、そのジョブに基づいて生成した作業指令を軌道計画部23に出力する。この作業指令の内容として具体的には、作業ロボット5を基準に設定された作業空間座標XYZ中において次にエンドエフェクタ6の基準位置が移動すべき先の終点位置や、当該終点位置での当該エンドエフェクタ6の終点姿勢を表す指令である。また作業計画部21は、エンドエフェクタ6に対する動作指令も出力しているが、図中では省略している。
【0015】
軌道計画部23は、上記作業計画部21から入力された作業指令に基づいて、作業ロボット5が後述する作業対象機器等に干渉接触しないようにエンドエフェクタ6を終点位置まで移動させ、終点姿勢に姿勢制御するための適切な経由点の位置指令と経由姿勢の姿勢指令を補正部24に出力する。
【0016】
補正部24は、作業原点記憶部26が記憶している複数の作業原点の座標位置(後述の設計位置)と、それら複数の作業原点のそれぞれに対応して計測位置取得部25が取得した計測位置に基づいて、上記軌道計画部23から入力された位置指令と姿勢指令をそれぞれ補正して補正位置指令と補正姿勢指令を出力する。なお、作業原点記憶部26が、各請求項記載のユーザーフレーム記憶部に相当する。
【0017】
なお、上述した作業計画部21、ジョブ記憶部22、軌道計画部23、補正部24、計測位置取得部25、作業原点記憶部26等における処理等は、これらの処理の分担の例に限定されるものではなく、例えば、更に少ない数の処理部(例えば1つの処理部)で処理されてもよく、また、更に細分化された処理部により処理されてもよい。また、ロボットコントローラ3は、後述するCPU901(
図8参照)が実行するプログラムによりソフトウェア的に実装されてもよいし、その一部又は全部がASICやFPGA、その他の電気回路等の実際の装置によりハードウェア的に実装されてもよい。
【0018】
ロボット駆動制御部3は、ロボットコントローラ2から入力された補正位置指令、補正姿勢指令に基づいて、作業ロボット5を駆動制御する駆動電力を出力する。このロボット駆動制御部3は、逆キネマティクス演算部31と、サーボアンプ32とを有している。
【0019】
逆キネマティクス演算部31は、その時点のエンドエフェクタ6の位置、姿勢から上記ロボットコントローラ2の補正部24より入力された補正位置指令の位置への移動と補正姿勢指令の姿勢制御を実現するために必要となる作業ロボット5の各駆動軸モータ(図示省略)の目標回転角度を演算し、対応する駆動指令を出力する。
【0020】
サーボアンプ32は、上記逆キネマティクス演算部31から入力された駆動指令に基づいて、作業ロボット5の各駆動軸モータ(図示省略)やエンドエフェクタ6を駆動制御する駆動電力の給電制御を行う。
【0021】
ロボットセル4は、実際に実験作業を行う機械装置であり、作業ロボット5と作業テーブル7とを有している。
【0022】
作業ロボット5は、図示する本実施形態の例では6つの関節軸を直列配置で備えたマニプレータアーム(6軸の多関節型ロボット)である。そのアーム先端部5aには、この例の把持動作を行うグリッパ型のエンドエフェクタ6が装着されており、当該作業ロボット5を基準に設定された作業空間座標XYZ中におけるエンドエフェクタ6の位置制御及び姿勢制御が可能となっている。
【0023】
作業テーブル7は、上記作業ロボットの周囲近傍に配置された作業台であり、その上面には上記作業ロボット5の作業対象となる作業対象機器8が所定の配置で複数設置されている。これら複数の作業対象機器8は、例えば試験管やピペット等の実験器具を保持収納する収納器であったり、それら実験器具に対して加熱、加振などの操作を行う装置等であり、いずれも作業ロボット5のエンドエフェクタ6が任意の姿勢で位置させることが可能な作業可能範囲内に配置されている。なお、この作業テーブル7が、各請求項記載のロボット作業環境に相当する。
【0024】
<本実施形態の特徴>
近年では、上述したようなバイオメディカル分野の実験機器などの作業機器一式等を所定の配置で設置したロボット作業環境と、その作業機器を利用した作業動作を行う作業ロボット5とを一体に構成させたロボットセル4が開発されている。そして特に上記分野のような実験作業に用いられるロボットセル4においては、例えば特定の追試実験作業などを高い再現性で繰り返し行うためにも、ロボット作業環境に対する作業ロボット5の位置決め動作などにおいて非常に高いレベルの制御精度が要求される。
【0025】
しかし、このようなロボットセル4の全体を細部まで完全に同一の設計で複数台製造しても、それらロボットセル4の個体間には各構成部品の製造誤差、作業ロボット5自体や各作業機器の設置誤差も含めたロボットセル4全体の組立誤差、及び周囲温度などの使用環境の違いにより生じる位置誤差などといった微細な機械的誤差(器差)が不可避的に生じてしてしまう。このため同一の設計にあるロボットセル4どうしの間で同じ作業動作を規定する同一の動作制御プログラム(数値制御プログラム;ジョブ)をそのまま実行させても、上記実験作業などに要求される高い制御精度レベルで作業動作を一致させることが困難となっていた。したがって、これまでにはロボットセル4の個体ごとに熟練した技術者の技量に依存したティーチング作業による修正が必要であり、ロボットセル4の利便性を低下させる要因となっていた。
【0026】
これに対し本実施形態のロボットシステム1においては、ロボット作業環境内に複数設けられた作業原点を記憶する作業原点記憶部26と、後述するカメラの検出結果に基いて複数の作業原点のそれぞれについて計測位置を取得する計測位置取得部25と、計測位置に基づいて作業原点記憶部26に記憶している作業原点の位置情報を補正する補正部24と、を有している。このようにロボット作業環境内において複数の作業原点を設定し、それら複数の作業原点毎に計測位置に基づいた位置補正することにより、少なくともそれぞれ位置補正された各作業原点どうしの間に渡って行われる相対的な作業動作については上記実験作業に要求されるような高いレベルでの制御精度を確保できる。以下、この補正部24における補正手法の詳細について順に説明する。
【0027】
<各作業原点の位置補正について>
図2、
図3は、上記ロボットセル4が備える作業テーブル7と作業ロボット5を上方から平面視した図を表している。なお、作業ロボット5については、図示の煩雑を避けるために円形形状で簡略的に図示している。まず
図2において、作業テーブル7の基台7a上には、それぞれ個別に製造された複数(図示する例では6つ)の作業対象機器8a〜8f(以下、まとめて総称する場合には作業対象機器8と略記する)が所定の配置で設置されている。そして、上述したように、作業ロボット5自体の機械的な位置と姿勢を基準に作業空間座標XYZが仮想的に設定されており、作業ロボット5はこの作業空間座標XYZに準拠した位置指令と姿勢指令に基づいて動作する。そして、基台7a及び各作業対象機器8は、それぞれ作業空間座標XYZ中における所定の位置、姿勢で配置されるよう設計、製造されている。
【0028】
ここで、例えば作業ロボット5がある一つの収納器に収納されている試験管を取り出して他の加熱器にセットするといった作業対象機器8間の移送作業を行う場合、その取り出し位置とセット位置の間の相対的な位置関係が重要となる。しかし、ロボットセル4の全体が細部まで設計に従って製造されているとしても、上述したような各種の機械的誤差(器差)や偶発的誤差の積み重ねに起因して異なる作業対象機器8の間の相対的な位置関係にも微細な誤差が不可避的に生じてしまう。
【0029】
そこで本実施形態では、あらかじめ各作業対象機器8毎に作業空間座標XYZ中での設計位置に従った作業原点を設定し、これら各作業原点の設計位置を作業原点記憶部26に記憶しておく(
図2中の黒点参照)。一方、計測位置取得部25が、後述するカメラ撮像を介した画像認識などにより作業空間座標XYZ中で実測した各作業原点の計測位置を取得する。そして作業原点記憶部26が記憶する各作業原点の設計位置(
図3中の白点参照)と、それぞれ対応する計測位置(
図3中の黒点参照)とを照合することにより、作業原点毎での位置補正を行う。これにより、少なくともそれぞれ位置補正された各作業原点どうしの間に渡って行われる相対的な作業動作については上記実験作業に要求されるような高いレベルでの制御精度を確保できる。
【0030】
また、例えば1つの収納器内において試験管の収納位置を移し替えるといった1つの作業対象機器8内において行われる作業については、少なくとも当該作業対象機器8内における各部間の寸法誤差は無視できるほど小さいと仮定し、対応する作業原点を基準として新たに個別に設定したローカル座標C
L内で作業を行うようにする。具体的には、上記ジョブ記憶部22に記憶するジョブ(すなわち上記作業計画部21が実行する数値制御の動作指令プログラム)が、各作業原点におけるローカル座標C
L上での設計位置(すなわち各作業原点に対する相対位置情報)を含んで記述される。これにより、同一の作業原点をローカル原点とした相対位置情報で作業ロボット5のジョブを規定することができ、他の作業原点間の誤差による影響を排除して同一の作業対象機器8内における高い制御精度を確保できる。なお、単体で所定以上の大きさにある作業対象機器8dの場合には、当該作業対象機器8dに対して所定以上の距離で離間する複数の作業原点を設定し、それぞれにローカル座標C
Lを設定してもよい。この理由については後に詳述する。
【0031】
以上のようにして、本実施形態では、1点の基準点に基づいて作業空間座標XYZ全体を補正するのではなく、各作業原点毎に対応したローカル座標C
Lを作業空間座標XYZ中に個別に設定する。これにより、少なくともそれぞれ位置補正された各ローカル座標C
Lどうしの間に渡って行われる相対的な作業動作、つまり作業対象機器8どうしの間に渡って行われる相対的な作業動作については、上記実験作業に要求されるような高いレベルでの制御精度を確保できる。
【0032】
<作業原点の実測について>
図4は、カメラでの撮像により作業原点を実測する際の外観状態の一例を斜視で表している。上述したように本実施形態の例では、作業ロボット5のエンドエフェクタ6に装着したカメラ41を移送し、当該カメラ41で撮像した作業原点に相当する部分の画像を上記計測位置取得部25で画像認識することにより当該作業原点の計測位置を実測する。
【0033】
図示する例では、作業対象機器8が、実験器具の一種であるチューブ(図示省略)を上方から嵌入可能なチューブラック81であり、その嵌入穴82の開口部中心位置に当該作業対象機器8(チューブラック81)の作業原点を設定している。カメラ41は、その撮像部分42が上記嵌入穴82に嵌入可能(つまりチューブと略同径)な円柱形状に構成されており、その上部に矩形形状のカメラ本体部43が固定されている。グリッパ型のエンドエフェクタ6がカメラ本体43を所定の配置、姿勢で挟持し、その固定状態でのカメラ41の撮像方向がエンドエフェクタ6(もしくはアーム先端部5a)の基準位置(図示省略)を所定の方向で通過する配置関係で装着される。
【0034】
そして作業ロボット5は、カメラ41の撮像方向を下方に向けたまま、作業原点記憶部26から取得した当該作業対象機器81の作業原点(嵌入穴82の中心の設計位置)に当該撮像方向を水平方向(図示する例のX−Y方向)で一致させるようカメラ41を移送し、その状態で
図5に示す例のような画像を撮像する。この
図5において、撮像画像の全体は円柱形状にある上記撮像部分42の内径を最大径とした円形の画像であり、撮像画像内にあらかじめ固定的に設定し描画した2つの直交する直径標準線Lxc、Lycの交点(円形撮像画像の中心点)が作業原点P0dの設計位置dに一致している。
【0035】
そしてこの撮像画像を入力された計測位置取得部25は、当該撮像画像内に写っている嵌入穴82の円形画像部分に対して画像認識することにより、当該嵌入穴82に対してもあらためて2つの直交する直径標準線Lxh、Lyhを描画する。この嵌入穴82の円形画像部分における2つの直径標準線Lxh、Lyhの交点がすなわち作業原点の実測点であり、その実測位置が作業原点P0mの計測位置に相当する。図示する例では、円形撮像画像における2つの直径標準線Lxc、Lycと、嵌入穴82における2つの直交標準線Lxh、Lyhがそれぞれ作業空間座標XYZのX方向とY方向に平行な組み合わせで設定されている。そして、X方向とY方向のそれぞれにおける直径標準線Lxc、Lyc、Lxh、Lyh間の偏差ΔX、ΔYが、作業原点の設計位置P0dに対する計測位置P0mの相対的な位置誤差に相当し、計測位置取得部25はこれら偏差ΔX、ΔYに基づいて当該作業原点の計測位置P0mを求めることができる。なお、カメラ41が、各請求項記載のセンサに相当する。
【0036】
<各ローカル座標自体の座標歪みに対応した補正について>
ここで、本実施形態の例の作業ロボット5のように特に複数の回転軸を直列配置で連結した多関節型のロボットを用いる場合には、各アームの回転運動の連携動作に起因して作業原点の周囲のローカル座標C
Lに微細な座標歪みが生じることが不可避である。例えば、上記軌道計画部23におけるローカル座標C
L中での演算上ではX軸方向と並行にアーム先端部5aを直進させるよう動作させた場合でも、実空間座標中ではX軸方向に対して傾斜するよう移動してしまう。これに対して本実施形態では、補正部24が各作業原点毎に設定した各ローカル座標C
Lのそれぞれに対し、さらに上記の座標歪み特性に対応するよう補正した補正座標C
Rを設定する。
【0037】
図6は、そのようなローカル座標C
L自体の座標歪みを補正する手法について説明する図を示しており、図中の左側には作業対象機器8の一例としてのチューブラック81における嵌入穴82の実配置を示し、図中の右側には対応するローカル座標C
Lとその座標歪みを反映した補正座標C
Rを仮想的に示している。図中の左側に示す例においては、チューブラック82の最も左下に位置する嵌入穴82の中心位置を作業原点P0に設定しており、さらにこの作業原点P0に対応する嵌入穴82からX軸方向とY軸方向にそれぞれ隣接する2つの嵌入穴82の中心位置を基準点P1,P2として設定している。これら2つの基準点P1,P2のいずれも、対応する作業原点P0と組み合わせてそれぞれ対応するローカル座標C
L上の設計位置があらかじめ作業原点記憶部26に記憶されており、また作業原点P0と同様に上述した実測手法によって計測位置が取得可能となっている。
【0038】
そして上記の作業原点P0と対応する2つの基準点P1,P2の3点のそれぞれの位置を実測した際には、図中の右側に示す例のように、3点の各計測位置P0m,P1m,P2mがそれぞれ上述した各種の機械的誤差に起因して設計位置P0d,P1d,P2dから位置ズレする。さらに、3点の各計測位置P0m,P1m,P2mどうしの配置関係についても、上述した多関節型ロボット特有の座標歪み特性に起因して、各設計位置P0d,P1d,P2dどうしの配置関係(図示する例では作業原点P0を交点とした直交配置関係)から変化する。
【0039】
ここで、作業ロボット5が多関節型ロボットであることに起因する上述したローカル座標C
Lの座標歪みの態様は、剪断線型変換に相当するものであることが分かっている。このため、作業原点P0の位置補正(平行移動)も併せて反映するよう、剪断線型変換と平行移動を組み合わせたいわゆるアフィン変換でローカル座標C
Lを補正し、その補正後の座標を補正座標C
Rとして設定すればよい。
【0040】
具体的には、図中右側の下方に示す変換式のように、作業空間座標XYZ上におけるサンプル点Psの設計位置ベクトル(x、y)
Tに対して、剪断線型変換を行う正方行列(a、b、c、d)との内積を取り、さらに平行移動を行う並進ベクトル(e、f)
Tを加算することで補正座標C
R上の点Ps′の補正位置ベクトル(x′、y′)
Tを求めるといった線型写像変換を行えばよい。言い換えると、x′=ax+by+e、y′=cx+dy+fの2式を演算すればよい。ただし、上記のa、b、c、d、e、fはいわゆるアフィン係数であり、x、y、x′、y′はいずれも作業空間座標XYZ上の位置を示す数値である。
【0041】
そして、上記算出された補正位置ベクトル(x′、y′)
Tが表す座標位置が、本実施形態において最終的に補正部24が出力する作業空間座標XYZ上での補正位置指令となる。なお、ジョブに記述されているローカル座標C
L上の点Psの設計位置(相対位置情報)を、座標歪み補正された補正座標C
Rに適用する場合には上記並進ベクトル(e、f)の加算を省略したアフィン変換を行えばよい。また図示の煩雑を避けるために、この
図6中の右側にはローカル座標C
Lの図示を省略しているが、あえて描画するとしたら作業原点の設計位置P0dを原点として作業空間座標XYZのX軸方向とY軸方向にそれぞれ並行なX軸とY軸に基づく直交座標系となる。以上により、上述した多関節型ロボット特有の座標歪み特性による影響を排除して、当該ジョブの実行による実空間座標での作業ロボット5の作業動作の制御精度を高く確保できる。
【0042】
<ローカル座標、補正座標の有効範囲について>
また、本実施形態の例の作業ロボット5のように特に多関節型のロボットを用いる場合には、上述した各種の機械的誤差や座標歪み特性に起因して、そのアーム先端部5aの動作軌跡にも微細な軌跡歪みが生じることが不可避である。例えば上記軌道計画部23における補正座標C
R中での演算上では直進させるよう動作させた場合でも、基準となる作業原点から離間するほど大きい誤差で湾曲する軌跡で移動してしまう。これに対して本実施形態では、
図7に示すように、基準となる作業原点の周囲近傍で高い制御精度を十分確保できる範囲A内(つまり、作業原点の較正有効範囲内)に限定してジョブに含まれる相対位置情報(ローカル座標C
L上での設計位置)を設定することで、当該ジョブの実行による作業ロボット5の作業動作の制御精度を高く確保できる。
【0043】
なお図中では、説明の便宜上、上記の範囲Aを略楕円形状で示しているが、想定される機械的誤差や座標歪み特性に応じて適宜の大きさや形状に設定することが望ましい。また、単体で上記の範囲Aを超える大きさの作業対象機器8に対しては、当該作業対象機器8の作業対象範囲の全体を上記範囲Aで覆うことができるよう、所定の間隔と配置で複数の作業原点を設定することが望ましい(上記
図2、
図3中の作業対象機器8d参照)。なお、この範囲Aが、各請求項記載の作業原点の周囲の所定範囲に相当する。
【0044】
<本実施形態による効果>
以上説明したように、本実施形態のロボットシステム1は、作業テーブル7に複数設けられた作業原点の設計位置を記憶する作業原点記憶部26と、カメラの撮像画像に基いて複数の作業原点のそれぞれについて計測位置を取得する計測位置取得部25と、計測位置に基づいて作業原点記憶部26に記憶している作業原点の位置情報を補正する補正部24と、を有している。このように作業テーブル7内において複数の作業原点を設定し、それら複数の作業原点毎に計測位置に基づいた位置補正することにより、少なくともそれぞれ位置補正された各作業原点どうしの間に渡って行われる相対的な作業動作については高いレベルでの制御精度を確保できる。この結果、ロボットシステム1の利便性を向上できる。
【0045】
なお、作業原点記憶部26は、各作業原点についてその設計位置とともに設計姿勢に相当する情報を併せて記憶してもよい。この設計姿勢に相当する情報とは、例えば上述したカメラ41での撮像により作業原点を実測する例におけるカメラ41の撮像方向、もしくは嵌入穴82の軸方向を表す方向ベクトル等に相当する情報である。この場合の作業原点記憶部26は、各請求項記載の計測用姿勢記憶部に相当する。
【0046】
また、作業原点の設計位置及び設計姿勢について、上記実施形態では3軸直交座標である作業空間座標XYZでの3次元位置や方向ベクトルで規定していたが、これに限られない。他にも、当該ロボットシステム1で用いる作業ロボット5の設計構造に依存するロボット座標で作業原点の設計位置及び設計姿勢を規定してもよい。ここで例えば、上記実施形態のように6軸の多関節型ロボットを用いた場合には、エンドエフェクタ6(又はアーム先端部5a)の所定の位置と姿勢がそれら6軸の各エンコーダ値(回転位置)の組み合わせや各アームの配置、姿勢(Posture)の組み合わせで一意に規定できる。このような作業ロボット5の設計構造に依存した動作パラメータを上記ロボット座標として作業原点の設計位置や設計姿勢、又は計測位置や計測姿勢を規定してもよい。
【0047】
また、本実施形態では特に、作業原点に対する相対位置情報を含んだ作業ロボット5のジョブを記憶するジョブ記憶部22を有している。これにより、同一の作業原点をローカル原点とした相対位置情報(ローカル座標C
L上の位置情報)で作業ロボット5のジョブを規定することができ、他の作業原点間の誤差による影響を排除した高い制御精度を確保できる。
【0048】
また、本実施形態では特に、ジョブに含まれる相対位置情報は、作業原点の周囲の所定範囲A内に設定されている。このように、基準となる作業原点の周囲近傍で高い制御精度を十分確保できる範囲A内(つまり作業原点の較正有効範囲内)に限定してジョブに含まれる相対位置情報を設定することで、当該ジョブの実行による作業ロボット5の作業動作の制御精度を高く確保できる。これにより、ロボットセル4の各個体でティーチング作業を行わずとも、同一のジョブをそのまま共有化してそれぞれ高い制御精度で一致した作業動作を実現できる。
【0049】
また、本実施形態では特に、補正部24は、複数の作業原点それぞれを基準とした複数の補正座標C
Rを設定し、ジョブに含まれる相対位置情報は補正座標C
Rに適用する。このように、補正部24が複数の作業原点それぞれを基準とした複数の補正座標C
Rを設定し、ジョブに含まれる相対位置情報を補正座標C
Rに適用することで、当該ジョブの実行による実空間座標での作業ロボット5の作業動作の制御精度を高く確保できる。これにより、ロボットセル4の各個体でティーチング作業を行わずとも、同一のジョブをそのまま共有化してそれぞれ高い制御精度で一致した作業動作を実現できる。
【0050】
また、本実施形態では特に、作業ロボット5が多関節型ロボットであり、補正座標C
Rは、剪断線型変換と平行移動を組み合わせたアフィン変換で設定される。作業ロボット5が多関節型ロボットである場合のローカル座標C
Lの座標歪みは、剪断線型変換に相当するものであることが分かってため、作業原点の位置補正(平行移動)と併せて剪断線型変換と平行移動を組み合わせたいわゆるアフィン変換で補正座標C
Rを設定することが特に好適となる。
【0051】
また、本実施形態では特に、補正座標C
Rは、1つの作業原点と、当該作業原点の周囲の2つの基準点のそれぞれに対して計測位置取得部25が取得した計測位置に基づくアフィン変換で設定される。これにより、実空間座標中に設定された1つの作業原点と2つの基準点に対応して、演算上のローカル座標C
Lに対して補正した補正座標C
Rを具体的に設定できる。なお本実施形態の例のように、2つの基準点が実空間座標中で作業原点に対し相互に直交する配置(作業原点から実空間座標のX軸方向、Y軸方向にそれぞれ平行移動した位置)に設けられていることで、補正座標C
Rの演算がより簡易かつ正確に行うことができる。
【0052】
また、本実施形態では特に、作業原点を実測するセンサは、作業ロボット5により移送可能に設置されたカメラであり、計測位置取得部25はこのカメラの撮像画像に基づく画像認識により計測位置を取得する。これにより、作業テーブル7などのロボット作業環境に直接接触することなく作業原点及び他の基準点の計測位置を簡易かつ十分な精度で取得できる。
【0053】
また、本実施形態では特に、作業テーブル7内に設けられた、作業ロボット5の作業対象となる複数の作業対象機器8を有し、作業原点は作業対象機器8毎に対して1つ又は所定の間隔で複数設けられている。これにより、作業テーブル7内に設けられた複数の作業対象機器8をそれぞれ作業対象単位として個別に実行される作業ロボット5の作業動作について高い制御精度を確保できる。
【0054】
また、本実施形態では特に、作業対象機器8は、チューブを嵌入可能なチューブラックを備えており、そのチューブラックの作業原点はチューブの嵌入穴の中心位置に設定される。このように、特に高いレベルの制御精度が要求されるチューブラックへのチューブの嵌入作業動作を模した動作態様で作業原点の計測位置を直接取得することができ、また作業原点を別途設けずとも作業対象機器8にもとから設けられている嵌入穴を作業原点の規定箇所として利用できるため、本実施形態の補正手法を適用することが特に好適となる。
【0055】
また、本実施形態の補正手法は特に、作業対象機器8に備えられた実験器具としてのピペットを用いて作業ロボット5が分注作業を行う場合に特に好適である(図示省略)。このように、バイオメディカル分野等の実験作業において特に高いレベルの制御精度が要求されるピペットの分注作業動作に本実施形態の補正手法を適用することは特に好適である。
【0056】
<ロボットコントローラのハードウェア構成例>
次に、
図8を参照しつつ、上記で説明したCPU901が実行するプログラムによりソフトウェア的に実装された作業計画部21、ジョブ記憶部22、軌道計画部23、補正部24、計測位置取得部25、作業原点記憶部26等による処理を実現するロボットコントローラ2のハードウェア構成例について説明する。
【0057】
図8に示すように、モータ制御装置3は、例えば、CPU901と、ROM903と、RAM905と、ASIC又はFPGA等の特定の用途向けに構築された専用集積回路907と、入力装置913と、出力装置915と、記録装置917と、ドライブ919と、接続ポート921と、通信装置923とを有する。これらの構成は、バス909や入出力インターフェース911を介し相互に信号を伝達可能に接続されている。
【0058】
プログラムは、例えば、ROM903やRAM905、記録装置917等に記録しておくことができる。
【0059】
また、プログラムは、例えば、フレキシブルディスクなどの磁気ディスク、各種のCD・MOディスク・DVD等の光ディスク、半導体メモリ等のリムーバブルな記録媒体925に、一時的又は永続的に記録しておくこともできる。このような記録媒体925は、いわゆるパッケージソフトウエアとして提供することもできる。この場合、これらの記録媒体925に記録されたプログラムは、ドライブ919により読み出されて、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
【0060】
また、プログラムは、例えば、ダウンロードサイト・他のコンピュータ・他の記録装置等(図示せず)に記録しておくこともできる。この場合、プログラムは、LANやインターネット等のネットワークNWを介し転送され、通信装置923がこのプログラムを受信する。そして、通信装置923が受信したプログラムは、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
【0061】
また、プログラムは、例えば、適宜の外部接続機器927に記録しておくこともできる。この場合、プログラムは、適宜の接続ポート921を介し転送され、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
【0062】
そして、CPU901が、上記記録装置917に記録されたプログラムに従い各種の処理を実行することにより、上記の作業計画部21、ジョブ記憶部22、軌道計画部23、補正部24、計測位置取得部25、作業原点記憶部26等による処理が実現される。この際、CPU901は、例えば、上記記録装置917からプログラムを直接読み出して実行してもよいし、RAM905に一旦ロードした上で実行してもよい。更にCPU901は、例えば、プログラムを通信装置923やドライブ919、接続ポート921を介し受信する場合、受信したプログラムを記録装置917に記録せずに直接実行してもよい。
【0063】
また、CPU901は、必要に応じて、例えばマウス・キーボード・マイク(図示せず)等の入力装置913から入力する信号や情報に基づいて各種の処理を行ってもよい。
【0064】
そして、CPU901は、上記の処理を実行した結果を、例えば表示装置や音声出力装置等の出力装置915から出力してもよく、さらにCPU901は、必要に応じてこの処理結果を通信装置923や接続ポート921を介し送信してもよく、上記記録装置917や記録媒体925に記録させてもよい。
【0065】
なお、以上の説明において、「垂直」「平行」「平面」等の記載がある場合には、当該記載は厳密な意味ではない。すなわち、それら「垂直」「平行」「平面」とは、設計上、製造上の公差、誤差が許容され、「実質的に垂直」「実質的に平行」「実質的に平面」という意味である。
【0066】
また、以上の説明において、外観上の寸法や大きさ、形状、位置等が「同一」「同じ」「等しい」「異なる」等の記載がある場合は、当該記載は厳密な意味ではない。すなわち、それら「同一」「等しい」「異なる」とは、設計上、製造上の公差、誤差が許容され、「実質的に同一」「実質的に同じ」「実質的に等しい」「実質的に異なる」という意味である。
【0067】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。