(57)【要約】  分注システム（１）は、分注対象の液体（Ｃ１）を吸引するための分注器（３０）を移動させるロボット（１０）と、少なくとも、分注器（３０）の先端部（３０ａ）と、液体（Ｃ１）の液面（ＳＦ１）と、液面（ＳＦ１）よりも下方に位置する非分注対象物（Ｃ２）とを含む画像を撮像するためのカメラ（４３）と、上記画像に基づいて、液面（ＳＦ１）の位置情報と、液体（Ｃ１）と非分注対象物（Ｃ２）との間の境界部（ＢＤ１）の位置情報と、分注器（３０）の先端部（３０ａ）の位置情報とを取得する画像処理部（１２０）と、液体（Ｃ１）を分注器（３０）内に吸引する際に、先端部（３０ａ）の位置情報と、液面（ＳＦ１）の位置情報と、境界部（ＢＤ１）の位置情報とに基づいて、分注器（３０）を下降させるようにロボット（１０）を制御する降下制御部（１３３）と、を備える。
2016181572.tif 000002
【特許請求の範囲】
【請求項１】
分注対象の液体を吸引するための分注器を移動させるロボットと、  少なくとも、前記分注器の先端部と、前記液体の液面と、前記液面よりも下方に位置する非分注対象物とを含む画像を撮像するためのカメラと、  前記画像に基づいて、前記液面の位置情報と、前記液体と前記非分注対象物との間の境界部の位置情報と、前記分注器の先端部の位置情報とを取得する画像処理部と、  前記液体を前記分注器内に吸引する際に、前記先端部の位置情報と、前記液面の位置情報と、前記境界部の位置情報とに基づいて、前記分注器を下降させるように前記ロボットを制御する降下制御部と、を備える分注システム。
【請求項２】
前記境界部の位置情報に基づいて最終目標位置を設定する目標位置設定部を更に備え、  前記降下制御部は、前記液面の下降に追従して前記分注器の先端部を下降させ、前記最終目標位置まで前記分注器の先端部を下降させるようにロボットを制御する、請求項１記載の分注システム。
【請求項３】
前記目標位置設定部は、前記ロボットが前記分注器を下降させているときに、前記境界部の位置情報に基づいて前記最終目標位置を更新する、請求項２記載の分注システム。
【請求項４】
前記画像に基づいて、前記境界部の変化を検出する境界監視部を更に備え、  前記目標位置設定部は、前記境界監視部により前記境界部の変化が検出された場合に、前記境界部の位置情報に基づいて前記最終目標位置を更新する、請求項３記載の分注システム。
【請求項５】
前記降下制御部は、  前記液面の下降に追従して前記分注器の先端部を下降させるように前記ロボットを制御する第一モード制御部と、  前記分注器の先端部を前記最終目標位置まで下降させるように前記ロボットを制御する第二モード制御部と、  前記分注器の先端部が前記最終目標位置に近付くのに応じて前記第一モード制御部による制御を前記第二モード制御部による制御に切り替える切替部と、を有する請求項２〜４のいずれか一項記載の分注システム。
【請求項６】
前記第一モード制御部は、前記第二モード制御部に比べて応答性を高める制御を行い、前記第二モード制御部は、前記第一モード制御部に比べてオーバーシュートを抑制する制御を行う、請求項５記載の分注システム。
【請求項７】
前記切替部は、予め設定された基準距離に比べ、前記分注器の先端部から前記最終目標位置までの距離が小さくなるのに応じて、前記第一モード制御部による制御を前記第二モード制御部による制御に切り替える、請求項５又は６記載の分注システム。
【請求項８】
前記分注器の先端部の移動速度が大きくなるのに応じて前記基準距離を大きくする基準距離設定部を更に備える、請求項７記載の分注システム。
【請求項９】
前記降下制御部は、前記液体及び前記非分注対象物が、前記カメラの視野内において傾いた容器に収容された状態にて、前記容器の傾きに対応して前記分注器の先端部を斜め方向に下降させるように前記ロボットを制御する、請求項２〜８のいずれか一項記載の分注システム。
【請求項１０】
前記液面に対する前記境界部の傾斜を緩やかにする方向に前記容器が傾いた状態を維持しながら、当該容器を前記カメラの視野外から搬送し、前記カメラの視野内に配置するように前記ロボットを制御する容器配置制御部を更に備える、請求項９記載の分注システム。
【請求項１１】
前記カメラの視野内において、前記液面に対する前記境界部の傾斜を緩やかにする方向に前記容器を傾けるように前記ロボットを制御する傾動制御部を更に備える、請求項９記載の分注システム。
【請求項１２】
前記画像に基づいて、前記液面に対する前記境界部の傾斜を検出する傾斜検出部を更に備え、  前記傾動制御部は、前記傾斜検出部により前記境界部の傾斜が検出された場合に、前記分注器の先端部が前記最終目標位置に近付くのに応じて、前記容器を傾けるように前記ロボットを制御する、請求項１１記載の分注システム。
【請求項１３】
前記傾動制御部は、前記液面が前記境界部に到達する前に、前記容器を傾けるようにロボットを制御する、請求項１２記載の分注システム。
【請求項１４】
第一及び第二のアームを有する双腕型の前記ロボットを備え、  前記降下制御部は、前記第一のアームにより前記分注器を下降させるように前記ロボットを制御し、  前記傾動制御部は、前記第二のアームにより前記容器を傾けるように前記ロボットを制御する、請求項１２又は１３記載の分注システム。
【請求項１５】
前記傾斜検出部は、前記画像に基づいて、前記液面に対する前記境界部の傾斜角度を検出し、  前記傾動制御部は、前記傾斜角度に対応する角度にて前記容器を傾けるように前記ロボットを制御する、請求項１２〜１４のいずれか一項記載の分注システム。
【請求項１６】
前記目標位置設定部は、前記傾斜検出部により前記境界部の傾斜が検出された場合には、前記容器の中心位置を基準にして、前記境界部の傾斜を下る方向にずれた位置を前記最終目標位置として設定する、請求項１２〜１５のいずれか一項記載の分注システム。
【請求項１７】
前記カメラ及び前記容器を共に保持するラックを更に備え、  前記降下制御部は、前記容器の傾きが前記ラックにより維持された状態で前記分注器の先端部を前記斜め方向に下降させるように前記ロボットを制御する、請求項９〜１６のいずれか一項記載の分注システム。
【請求項１８】
前記カメラ及び前記容器を共に保持するラックを更に備え、  前記傾動制御部は、前記ラックを傾けることで前記容器を傾けるように前記ロボットを制御する、請求項１１〜１５のいずれか一項記載の分注システム。
【請求項１９】
前記カメラとの間に前記容器を挟む配置にて、前記カメラ及び前記容器と共に前記ラックに保持され、前記容器に光を照射するバックライトを更に備える、請求項１７又は１８記載の分注システム。
【請求項２０】
前記バックライトは赤色の可視光を照射する、請求項１９記載の分注システム。
【請求項２１】
前記カメラによる撮像が行われていない時間帯の少なくとも一部において前記バックライトを消灯させるバックライト制御部を更に備える、請求項１９又は２０記載の分注システム。
【請求項２２】
前記画像処理部は、予め傾きが規定された線状パターンを探索対象として、当該線状パターンを前記画像内から抽出し、抽出結果に基づいて前記液面の位置情報を取得する、請求項１７〜２１のいずれか一項記載の分注システム。
【請求項２３】
前記画像処理部は、前記線状パターンの傾きを前記容器の傾きに応じて規定する、請求項２２記載の分注システム。
【請求項２４】
前記画像処理部は、前記線状パターンの傾きを前記容器の太さに応じて規定する、請求項２２又は２３記載の分注システム。
【請求項２５】
前記画像に基づいて、前記液面に対する前記境界部の傾斜を検出する傾斜検出部を更に備え、  前記目標位置設定部は、前記傾斜検出部により前記境界部の傾斜が検出された場合には、前記液体及び前記非分注対象物を収容した容器の中心位置を基準にして、前記境界部の傾斜を下る方向にずれた位置を前記最終目標位置として設定する、請求項２〜８のいずれか一項記載の分注システム。
【請求項２６】
前記画像処理部は、前記先端部の位置情報を取得した後の前記先端部の位置変化を推定し、前記位置変化に基づいて前記先端部の位置情報を更新する、請求項１〜２５のいずれか一項記載の分注システム。
【請求項２７】
前記画像処理部は、前記液面の位置情報及び前記境界部の位置情報を取得した後の前記画像に基づいて前記液面の位置情報及び前記境界部の位置情報を更新する、請求項２６記載の分注システム。
【請求項２８】
前記画像処理部は、前記先端部が前記液面よりも上方に位置する際に、前記画像に基づいて前記先端部の位置情報を取得し、当該情報を取得した後の前記位置変化を推定する、請求項２７記載の分注システム。
【請求項２９】
前記画像処理部は、前記先端部の位置情報を取得した後の前記画像に基づいて前記先端部の位置情報を更新することと、前記位置変化に基づいて前記先端部の位置情報を更新することとを、前記液体の種類に応じて選択して実行する、請求項２６〜２８のいずれか一項記載の分注システム。
【請求項３０】
前記先端部、前記液面及び前記境界部の少なくともいずれかについて、前記位置情報が得られない場合に、前記降下制御部に代わって、予め設定されたパターンに基づいて前記ロボットを制御する副制御部を更に備える、請求項２６〜２９のいずれか一項記載の分注システム。
【請求項３１】
前記画像処理部は、前記先端部を含まない前記画像と、前記先端部を含む前記画像との差分に基づいて、前記先端部の位置情報を取得する、請求項１〜３０のいずれか一項記載の分注システム。
【請求項３２】
前記画像処理部は、前記先端部を含まない前記画像と、前記先端部を含む前記画像との差分に基づいて、前記先端部の画像パターンを取得し、前記画像パターンに基づいて前記先端部の位置情報を取得する、請求項３１記載の分注システム。
【請求項３３】
分注用の容器内に収容された前記液体及び前記非分注対象物の量を示す情報に基づいて、前記液面を前記画像内で探索するための第一の解析領域を設定する解析領域設定部を更に備え、  前記画像処理部は、前記第一の解析領域内から前記液面の位置情報を取得する、請求項１〜３２のいずれか一項記載の分注システム。
【請求項３４】
前記解析領域設定部は、前記非分注対象物の量を示す情報に基づいて、前記境界部を前記画像内で探索するための第二の解析領域を更に設定し、  前記画像処理部は、前記第二の解析領域内から前記境界部の位置情報を取得する、請求項３３記載の分注システム。
【請求項３５】
前記ロボットによる分注作業用の基準データを登録するためのユーザインタフェースと、  前記基準データが未登録である場合に、前記分注器の先端部が前記カメラの視野内に入った後に前記ロボットを停止させ、当該基準データの登録後に前記ロボットの動作を再開させる割込部と、  前記割込部が前記ロボットを停止させているときに、前記基準データの設定用の画面を前記ユーザインタフェースに表示し、前記ユーザインタフェースから前記基準データを取得して登録する基準データ登録部と、  を更に備える請求項１〜３０のいずれか一項記載の分注システム。
【請求項３６】
複数種類の分注作業を含む前記ロボットの作業工程を設定する工程設定部を更に備え、  前記割込部は、前記基準データが未登録である場合に前記ロボットを停止させることを前記分注作業ごとに実行し、  前記基準データ登録部は、前記割込部が前記ロボットを停止させる度に、次に実行予定の前記分注作業に対応する前記基準データを取得して登録する請求項３５記載の分注システム。
【請求項３７】
前記基準データ登録部は、前記基準データとして、前記分注器の先端部の画像パターンを登録し、  前記画像処理部は、前記分注器の先端部の画像パターンに基づいて前記分注器の先端部の位置情報を取得する、請求項３５又は３６記載の分注システム。
【請求項３８】
前記基準データ登録部は、液体外における前記分注器の先端部の画像パターンと、液体中における前記分注器の先端部の画像パターンとを登録する、請求項３７記載の分注システム。
【請求項３９】
前記基準データ登録部は、前記基準データとして、液体外における前記分注器の先端部を前記画像内で探索するための第一の解析領域と、前記液面を前記画像内で探索するための第二の解析領域と、前記境界部を前記画像内で探索するための第三の解析領域とを更に登録し、  前記画像処理部は、前記画像における前記第一又は第二の解析領域内から前記分注器の先端部の位置情報を取得し、前記第二の解析領域内から前記液面の位置情報を取得し、前記第三の解析領域内から前記境界部の位置情報を取得する、請求項３７又は３８記載の分注システム。
【請求項４０】
分注対象の液体を吸引するための分注器を移動させるロボットと、  少なくとも、前記分注器の先端部と、前記液体の液面と、前記液面よりも下方に位置する非分注対象物とを含む画像を撮像するためのカメラと、  前記画像に基づいて、前記液面の位置情報と、前記液体と前記非分注対象物との間の境界部の位置情報と、前記分注器の先端部の位置情報とを取得すること、前記液体を前記分注器内に吸引する際に、前記先端部の位置情報と、前記液面の位置情報と、前記境界部の位置情報とに基づいて、前記分注器を下降させるように前記ロボットを制御すること、を実行するように構成された回路と、を備える分注システム。
【請求項４１】
分注対象の液体を吸引するための分注器の先端部と、前記液体の液面と、前記液面よりも下方に位置する非分注対象物とを少なくとも含む画像から、前記液面の位置情報と、前記液体と前記非分注対象物との間の境界部の位置情報と、前記分注器の先端部の位置情報とを取得する画像処理部と、  前記液体を前記分注器内に吸引する際に、前記先端部の位置情報と、前記液面の位置情報と、前記境界部の位置情報とに基づいて、前記分注器を下降させるようにロボットを制御する降下制御部と、を備えるコントローラ。
【請求項４２】
分注対象の液体を吸引するための分注器の先端部と、前記液体の液面と、前記液面よりも下方に位置する非分注対象物とを少なくとも含む画像から、前記液面の位置情報と、前記液体と前記非分注対象物との間の境界部の位置情報と、前記分注器の先端部の位置情報とを取得すること、  前記液体を前記分注器内に吸引する際に、前記先端部の位置情報と、前記液面の位置情報と、前記境界部の位置情報とに基づいて、前記分注器を下降させるようにロボットを制御すること、を含む制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本開示は、分注システム、コントローラ及び制御方法に関する。
【背景技術】
【０００２】  特許文献１には、チップと、チップ内に検体を吸引し、又はチップ内の検体を排出する液送動力装置と、チップ搬送機構と、検体の液面位置を検出する検出手段と、検体の吸引時に、検体の液面位置に基づいて、チップの先端と検体の液面とが接触状態を維持するように、液送動力装置及びチップ搬送機構を制御する制御装置とを備える給排ロボットが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３０４３０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】  本開示は、より確実な分注作業を実行可能な分注システム、分注方法、制御装置及び制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】  本開示に係る分注システムは、分注対象の液体を吸引するための分注器を移動させるロボットと、少なくとも、分注器の先端部と、液体の液面と、液面よりも下方に位置する非分注対象物とを含む画像を撮像するためのカメラと、画像に基づいて、液面の位置情報と、液体と非分注対象物との間の境界部の位置情報と、分注器の先端部の位置情報とを取得する画像処理部と、液体を分注器内に吸引する際に、先端部の位置情報と、液面の位置情報と、境界部の位置情報とに基づいて、分注器を下降させるようにロボットを制御する降下制御部と、を備える。【０００６】  本開示に係る分注システムは、分注対象の液体を吸引するための分注器を移動させるロボットと、少なくとも、分注器の先端部と、液体の液面と、液面よりも下方に位置する非分注対象物とを含む画像を撮像するためのカメラと、画像に基づいて、液面の位置情報と、液体と非分注対象物との間の境界部の位置情報と、分注器の先端部の位置情報とを取得すること、液体を分注器内に吸引する際に、先端部の位置情報と、液面の位置情報と、境界部の位置情報とに基づいて、分注器を下降させるようにロボットを制御すること、を実行するように構成された回路と、を備える。【０００７】  本開示に係るコントローラは、分注対象の液体を吸引するための分注器の先端部と、液体の液面と、液面よりも下方に位置する非分注対象物とを少なくとも含む画像から、液面の位置情報と、液体と非分注対象物との間の境界部の位置情報と、分注器の先端部の位置情報とを取得する画像処理部と、液体を分注器内に吸引する際に、先端部の位置情報と、液面の位置情報と、境界部の位置情報とに基づいて、分注器を下降させるようにロボットを制御する降下制御部と、を備える。【０００８】  本開示に係る制御方法は、分注対象の液体を吸引するための分注器の先端部と、液体の液面と、液面よりも下方に位置する非分注対象物とを少なくとも含む画像から、液面の位置情報と、液体と非分注対象物との間の境界部の位置情報と、分注器の先端部の位置情報とを取得すること、液体を分注器内に吸引する際に、先端部の位置情報と、液面の位置情報と、境界部の位置情報とに基づいて、分注器を下降させるようにロボットを制御すること、を含む。
【発明の効果】
【０００９】  本開示によれば、より確実な分注作業を実行可能である。
【図面の簡単な説明】
【００１０】
【図１】第一実施形態に係る分注システムの構成を示す模式図である。
【図２】マイクロチューブの側面図である。
【図３】ラックの斜視図である。
【図４】ラックの側面図である。
【図５】プロトコル構築部の機能ブロック図である。
【図６】ロボット制御部の機能ブロック図である。
【図７】コントローラのハードウェア構成図である。
【図８】プロトコル構築手順を示すフローチャートである。
【図９】プロトコルの設定例を示す図である。
【図１０】基準データ取得手順を示すフローチャートである。
【図１１】解析領域の設定画面を例示する図である。
【図１２】画像パターンの登録画面を例示する図である。
【図１３】分注制御手順の概要を示すフローチャートである。
【図１４】吸引時の制御手順を示すフローチャートである。
【図１５】吸引時の制御手順を示すフローチャートである。
【図１６】吸引時のマイクロチューブを模式的に示す側面図である。
【図１７】吸引時のマイクロチューブを模式的に示す側面図である。
【図１８】傾動制御手順を示すフローチャートである。
【図１９】吸引時のマイクロチューブを模式的に示す側面図である。
【図２０】チューブラックを傾動させているロボットを示す斜視図である。
【図２１】吸引時のマイクロチューブを模式的に示す側面図である。
【図２２】チューブラックを傾動させているロボットを示す斜視図である。
【図２３】抽出対象の線状パターンと液面との関係を示す模式図である。
【図２４】ラックの変形例を示す斜視図である。
【図２５】図２４中のラックの他方向からの斜視図である。
【図２６】図２４中のラックの断面図である。
【図２７】ステージの回転中心の配置を示す図である。
【図２８】図２４中のラックをロボットが操作している状態を例示する斜視図である。
【図２９】第二実施形態に係る分注システムの構成を示す模式図である。
【図３０】ロボット制御部及び画像処理部の機能ブロック図である。
【図３１】分注制御手順の概要を示すフローチャートである。
【図３２】吸引時の制御手順を示すフローチャートである。
【図３３】吸引時の制御手順を示すフローチャートである。
【図３４】位置情報の更新手順を示すフローチャートである。
【発明を実施するための形態】
【００１１】１．第一実施形態１．１  分注システム  第一実施形態に係る分注システム１は、容器９０内に収容された液体を選択的に取り出す分注作業を行うためのものである。容器９０は、分注システム１による作業の対象物を収容する。容器９０は、可視光又は特定の波長の光を透過可能な材質で形成される。容器９０は、例えばマイクロチューブであり、筒状の側壁９１と底部９２とを有する（図２（ａ）及び図２（ｂ）参照）。側壁９１の下側部分９１ａは、底部９２側に向かうに従って窄まるテーパ形状を有する。容器９０は、このようなマイクロチューブに限られず、対象物を収容可能であり、可視光又は特定の波長の光を透過可能であればどのような形状であってもよい。
【００１２】  容器９０に収容される対象物は、遠心分離等により、分注対象の液体Ｃ１と、非分注対象物Ｃ２とに分離され、液体Ｃ１は液面ＳＦ１を形成し、非分注対象物Ｃ２は液面ＳＦ１よりも下方に位置する。非分注対象物Ｃ２の例としては、例えば固形の沈殿物又は液体Ｃ１から分離した液体等が挙げられる。非分注対象物Ｃ２が液体である場合、液体Ｃ１と非分注対象物Ｃ２との境界部ＢＤ１は液面ＳＦ１に対して平行となる（図２（ａ）参照）。非分注対象物Ｃ２が固形の沈殿物である場合、境界部ＢＤ１は液面ＳＦ１に対して傾斜する場合がある（図２（ｂ）参照）。
【００１３】  境界部ＢＤ１は、容器９０の外部から視認可能となっている。例えば、容器９０を透過可能な光の透過性が、液体Ｃ１と非分注対象物Ｃ２とで異なっていれば、境界部ＢＤ１が視認可能となる。容器９０を透過可能な光の屈折率が、液体Ｃ１と非分注対象物Ｃ２とで異なっていても境界部ＢＤ１は視認可能となる。
【００１４】  分注システム１は、非分注対象物Ｃ２を容器９０内に残した状態で、分注対象の液体Ｃ１を容器９０内から取り出し、他の容器９０への移し替え等を行う。なお、非分注対象物Ｃ２は、液体Ｃ１を分注する工程において「非分注対象」であるに過ぎない。分注システム１は、上記液体Ｃ１を分注した後の工程において、非分注対象物Ｃ２自体を更に分注する場合もある。以下、分注システム１の各構成要素について説明する。
【００１５】（１）ロボット１０及びカメラ４３  図１に示すように、分注システム１は、ロボット１０とカメラ４３とを備える。ロボット１０は、分注器３０を移動させる作業等に用いられる。分注器３０は、分注対象の液体Ｃ１を吸引する。分注器３０としては、特定の信号又は特定の操作により自動で液体の吸引・吐出を行う電動のピペット又はシリンジが挙げられる。分注器３０は電動式でなくてもよく、例えば手動式のシリンジ又はピペットであってもよい。この場合、後述するように、双腕型のロボット１０の両腕によって分注器３０を操作してもよい。このように、分注器３０は、液体Ｃ１を吸引可能であればどのようなものであってもよいが、以下では分注器３０が電動ピペットである場合を例示する。
【００１６】  分注器３０は、本体部３１とチップ３２とを有する。本体部３１は、例えば電動ポンプを内蔵し、指令入力に応じて動作する。チップ３２は、本体部３１に対して着脱自在に取り付けられている。チップ３２は、例えば先尖りの筒形状を有し、分注器３０の先端部３０ａをなす。分注器３０は、本体部３１によりチップ３２内を減圧することで、先端部３０ａから液体を吸引し、チップ３２内を加圧することで先端部３０ａから液体を吐出する。
【００１７】  ロボット１０は、分注器３０を移動させる作業を実行可能であればどのようなものであってもよい。ロボット１０は、単腕型であってもよいし、双腕型であってもよい。図１は双腕型のロボット１０を例示する。このロボット１０は、胴部１１と、肩部１２と、第一のアーム１３Ａと、第二のアーム１３Ｂとを有する。胴部１１は床面に対して起立する。肩部１２は、胴部１１の上部に取り付けられており、鉛直な軸線回りに回動可能となっている。アーム１３Ａ，１３Ｂは、例えばシリアルリンク型の多関節アームであり、肩部１２の両端部にそれぞれ取り付けられている。アーム１３Ａ，１３Ｂの端部には、把持機構１４が設けられている。把持機構１４は、例えば複数の指部１５を有するロボットハンドであり、指部１５を開閉することで様々な作業対象物を把持する。
【００１８】  カメラ４３は、少なくとも、分注器３０の先端部３０ａと、液体Ｃ１の液面ＳＦ１と、非分注対象物Ｃ２とを含む画像を撮像する。カメラ４３は、例えばＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）イメージセンサ又はＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）イメージセンサ等の撮像素子を有し、指令入力に応じて画像を撮像し、当該画像のデータを出力する。
【００１９】（２）テーブル  分注システム１は、テーブル２０を更に備えてもよい。テーブル２０は、ロボット１０に併設されており、ロボット１０による作業対象物を支持する。
【００２０】（３）ラック  分注システム１は、上記カメラ４３を構成要素とするラック４０を更に備えてもよい。例えば図１及び図３に示すように、ラック４０は、ステージ４１と、容器保持部４４と、カメラ４３とを有する。ステージ４１は、例えば矩形の板状体（支持板）であり、傾け可能な状態でテーブル２０上に配置される。ステージ４１は、実質的に変形しない（構成材の撓み等による微少変形を除く）ものであればどのようなものであってもよい。例えばステージ４１は、ブロックであってもよいし、枠組体であってもよい。
【００２１】  容器保持部４４は、ステージ４１に固定され、容器９０を保持する。例えば容器保持部４４は、板状のステージ４１の上面側に設けられており、当該上面に対して側壁９１が垂直になるように容器９０を保持する。
【００２２】  カメラ４３は、容器９０を撮像可能な位置にてステージ４１に固定されている。例えばカメラ４３は、その中心軸ＣＬ２（光学系の光軸）が容器９０を通るように配置されており、ステージ４１の上面から突出した支柱４２（カメラ保持部４１ａ）に固定されている。カメラ保持部４１ａは、容器９０内の液体Ｃ１の液面ＳＦ１の少なくとも一部と、非分注対象物Ｃ２の少なくとも一部と、容器９０内に挿入された先端部３０ａとを含む画像を撮像できる姿勢にてカメラ４３を保持する。
【００２３】  ラック４０は、ステージ保持部５０を更に有してもよい。ステージ保持部５０は、容器保持部４４とカメラ４３とが並ぶ方向に沿う軸線Ａｘ１（第一軸線）まわりに回転可能となるようにステージ４１を保持する。例えばステージ保持部５０は、支持板５１と、ヒンジ５２とを有する。
【００２４】  支持板５１は、例えば矩形の板状体である。ヒンジ５２は、軸線Ａｘ１に沿う一辺において、ステージ４１と支持板５１とを互いに回転可能となるように連結する。これにより、ステージ４１が軸線Ａｘ１まわりに回転可能となっている。支持板５１は、例えばステージ４１が支持板５１の上に重なり、ヒンジ５２がロボット１０の逆側に位置するようにテーブル２０上に配置される。支持板５１は、ボルト締結などによってテーブル２０に固定されていてもよい。支持板５１がテーブル２０に固定されていても、ステージ４１は軸線Ａｘ１まわりに回転可能である。
【００２５】  ラック４０は、取っ手４６を更に有してもよい。取っ手４６は、例えばステージ４１上においてヒンジ５２の逆側に設けられている。ヒンジ５２がロボット１０の逆側に位置する場合、取っ手４６はロボット１０側に位置する。取っ手４６は、ステージ４１の上面から突出しており、その上部４６ａはヒンジ５２の逆側に張り出している。取っ手４６の上部４６ａを上下動させることにより、軸線Ａｘ１まわりにステージ４１を回転させ、ラック４０を傾けることが可能である。なお、「ラック４０を傾ける」とは、ラック４０の一部又は全体を傾けることにより、ラック４０の保持対象物を傾けることを意味する。
【００２６】  ラック４０は、角度保持機構６０を更に有してもよい。角度保持機構６０は、ステージ４１がロボット１０により傾けられた後に、その傾き角度を保持する。例えば角度保持機構６０は、ストッパ６１を有する。ストッパ６１は、支持板５１上においてヒンジ５２の逆側に設けられている。ストッパ６１は支持板５１の上面から突出しており、その上部６１ａはヒンジ５２の逆側に張り出している。ストッパ６１は、ヒンジ５２側に面する溝部６１ｂを有する。溝部６１ｂには、ステージ４１の縁部を嵌め込むことが可能である。
【００２７】  ストッパ６１は、ヒンジ５２に対して溝部６１ｂを近接・離間させるように回転可能となっている。例えば図４（ａ）に示すように、ストッパ６１の基部は、ヒンジ５２に平行なヒンジ６２を介して支持板５１に接続されている。図４（ｂ）に示すように、ステージ４１を回転させた状態でストッパ６１をヒンジ５２側に倒し、ステージ４１の縁部を溝部６１ｂ内に嵌め込むと、ステージ４１が拘束される。これにより、ステージ４１の傾き角度が保持される。
【００２８】（４）ライト  分注システム１は、ライト４５を更に有してもよい。ライト４５は、容器保持部４４により保持された容器９０に光を照射する。ライト４５は、少なくともカメラ４３による撮像範囲に光を照射する。ライト４５が照射する光は、容器９０を透過可能であり、カメラ４３により検出可能であればよい。例えばライト４５は、赤色の可視光を照射するものであってもよい。ライト４５の光源としては、例えばＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）等が挙げられる。
【００２９】  ライト４５は、ステージ４１に固定されてラック４０の一部をなしていてもよい。すなわちラック４０は、ライト４５を更に有してもよい。この場合、ライト４５は、カメラ４３との間に容器９０を挟む配置にてステージ４１に固定されていてもよい。すなわち容器保持部４４は、カメラ４３とライト４５との間に位置してもよい。例えばライト４５は、ステージ４１のうち、カメラ保持部４１ａとの間に容器保持部４４を挟む部分（ライト保持部４１ｂ）により保持されている。ライト保持部４１ｂは、容器９０側に光を出射する姿勢にてライト４５を保持する。
【００３０】（５）コントローラ  分注システム１は、コントローラ１００を更に備える。コントローラ１００は、少なくとも、カメラ４３により撮像された画像に基づいて、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報と、分注器３０の先端部３０ａの位置情報とを取得すること、液体Ｃ１を分注器３０内に吸引する際に、先端部３０ａの位置情報と、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報とに基づいて、分注器３０を下降させるようにロボット１０を制御すること、を実行するように構成されている。
【００３１】  コントローラ１００は、ユーザインタフェースとしてコンソール２００を有してもよい。コンソール２００は、モニタ２０１と、キーボード等の入力デバイス２０２とを有する。コンソール２００は、モニタ及び入力デバイスが一体化したタッチパネルであってもよい。
【００３２】  コントローラ１００は、上述した処理を実行するように構成されていればどのようなものであってもよいが、以下では、図１及び図５〜図７を参照し、コントローラ１００の構成を詳細に例示する。コントローラ１００は、機能モジュールとして、プロトコル構築部１１０と、画像処理部１２０と、バックライト制御部１６０と、ロボット制御部１３０と、分注器制御部１４０と、工程記憶部１５１と、基準データ記憶部１５２とを有する。
【００３３】  プロトコル構築部１１０は、複数種類の分注作業を含むロボット１０の作業工程を設定して工程記憶部１５１に登録し、分注作業用の基準データを基準データ記憶部１５２に登録する。基準データは、ロボット１０の制御に必要なデータであり、画像処理用のデータを含む。画像処理用のデータとしては、例えば画像認識用の画像パターンが挙げられる。
【００３４】  画像処理部１２０は、カメラ４３により撮像された画像及び基準データ記憶部１５２に登録された基準データに基づいて、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報と、先端部３０ａの位置情報とを取得する。
【００３５】  バックライト制御部１６０は、ライト４５のオン・オフを切り替える。例えば、バックライト制御部１６０は、カメラ４３による撮像が行われない時間帯の少なくとも一部においてバックライトを消灯させる。これによりオペレータの眼の負担を軽減できる。
【００３６】  ロボット制御部１３０は、画像処理部１２０により取得された位置情報と、工程記憶部１５１に登録された作業工程とに基づいてロボット１０を制御する。
【００３７】  分注器制御部１４０は、工程記憶部１５１に登録された作業工程に基づき、ロボット１０の制御に同期して分注器３０を制御する。例えば分注器３０が電動式である場合、分注器制御部１４０は、分注器３０による吸引をオン・オフさせる。分注器制御部１４０は、分注器３０自体を制御するのに代えて、分注器３０のオン・オフスイッチを操作するようにロボット１０を制御してもよい。また、分注器３０が手動式である場合、分注器制御部１４０は、分注器３０を操作するようにロボット１０を制御してもよい。例えば分注器３０が手動式のシリンジである場合、分注器制御部１４０は、アーム１３Ａ，１３Ｂのいずれか一方によってシリンジの外筒を把持し、アーム１３Ａ，１３Ｂの他方によってシリンジのプランジャを押し引きするようにロボット１０を制御してもよい。
【００３８】  図５に示すように、プロトコル構築部１１０は、工程設定部１１１と、工程確認部１１４と、割込部１１２と、基準データ登録部１１３とを有する。
【００３９】  工程設定部１１１は、複数種類の分注作業を含むロボット１０の作業工程を設定する。具体的に、工程設定部１１１は、複数種類の分注作業を含むロボット１０の作業工程をコンソール２００から取得し、工程記憶部１５１に登録する。このようにコンソール２００は、作業工程を登録するためのユーザインタフェースとして機能する。
【００４０】  工程確認部１１４は、ロボット制御部１３０が実行しようとする作業内容を確認する。
【００４１】  割込部１１２は、基準データが未登録である分注作業をロボット１０が実行しようとするときに、ロボット制御部１３０を介してロボット１０を停止させ、当該基準データの登録後にロボット１０の動作を再開させる。
【００４２】  基準データ登録部１１３は、割込部１１２がロボット１０を停止させているときに、基準データの設定用の画面をコンソール２００に表示し、コンソール２００から基準データを取得して登録する。このようにコンソール２００は、基準データを登録するためのユーザインタフェースとしても機能する。
【００４３】  図６に示すように、ロボット制御部１３０は、容器配置制御部１３１と、分注器配置制御部１３２と、降下制御部１３３と、基準距離設定部１３４と、境界監視部１３５と、目標位置設定部１３６と、傾斜検出部１３７と、傾動制御部１３８とを有する。
【００４４】  容器配置制御部１３１は、容器９０をカメラ４３の視野内に配置するようにロボット１０を制御する。一例として、容器配置制御部１３１は、容器９０を容器保持部４４に配置するようにアーム１３Ｂを制御する。分注器配置制御部１３２は、分注器３０を吸引又は吐出の開始位置に配置するようにアーム１３Ａを制御する。
【００４５】  降下制御部１３３は、液体Ｃ１を分注器３０内に吸引する際に、先端部３０ａの位置情報と、液体Ｃ１の位置情報と、境界部ＢＤ１の位置情報とに基づいて、分注器３０を下降させるようにロボット１０を制御する。
【００４６】  降下制御部１３３は、第一モード制御部１３３ａと、第二モード制御部１３３ｂと、切替部１３３ｃとを有する。第一モード制御部１３３ａは、液体Ｃ１の下降に追従して先端部３０ａを下降させるようにロボット１０を制御する。第二モード制御部１３３ｂは、先端部３０ａを最終目標位置まで下降させるようにロボット１０を制御する。最終目標位置は、境界部ＢＤ１の位置情報に基づいて予め設定される。切替部１３３ｃは、先端部３０ａが最終目標位置に近付くのに応じて第一モード制御部１３３ａによる制御を第二モード制御部１３３ｂによる制御に切り替える。一例として、切替部１３３ｃは、予め設定された基準距離に比べ、先端部３０ａから最終目標位置までの距離が小さくなるのに応じて、第一モード制御部１３３ａによる制御を第二モード制御部１３３ｂによる制御に切り替える。
【００４７】  基準距離設定部１３４は、上記基準距離を設定する。境界監視部１３５は、カメラ４３により撮像された画像に基づいて、境界部ＢＤ１の変化を検出する。目標位置設定部１３６は、境界部ＢＤ１の位置情報に基づいて最終目標位置を設定する。
【００４８】  傾斜検出部１３７は、カメラ４３により撮像された画像に基づいて、液面ＳＦ１に対する境界部ＢＤ１の傾斜を検出する。なお、液面ＳＦ１に対する境界部ＢＤ１の傾斜は、境界部ＢＤ１が容器９０の中心軸線に対して傾斜した状態で、容器９０が直立してその中心軸線が鉛直となっている場合に生じ得る。傾動制御部１３８は、液面ＳＦ１に対する境界部ＢＤ１の傾斜が緩やかになる方向に容器９０を傾けるようにロボット１０を制御する。傾動制御部１３８は、傾斜検出部１３７により境界部ＢＤ１の傾斜が検出された場合に、先端部３０ａが最終目標位置に近付くのに応じて、容器９０と分注器３０とを、境界部ＢＤ１の傾斜が緩やかになる方向に傾けるようにロボット１０を制御してもよい。
【００４９】  なお、コントローラ１００のハードウェアは必ずしも上述した機能ブロックに分かれている必要はない。コントローラ１００のハードウェア構成としては、図７に示すように、例えばプロセッサ１０１と、メモリ１０２と、ストレージ１０３と、入出力ポート１０４と、ドライバ１０５とを有する回路が挙げられる。ドライバ１０５は、ロボット１０のアクチュエータを制御するための回路である。入出力ポート１０４は、カメラ４３及びコンソール２００との間でデータの入出力を行い、吸引又は吐出のオン・オフ指令を分注器３０に出力し、ロボット１０のアクチュエータに対する駆動指令をドライバ１０５に出力する。プロセッサ１０１は、メモリ１０２及びストレージ１０３の少なくとも一方と協働してプログラムを実行することで、上述したコントローラ１００の各機能を構成する。コンソール２００及びコントローラ１００は、ハードウェア上において一体であってもよく、互いに分かれていてもよい。また、コントローラ１００が複数のハードウェアに分かれていてもよい。分かれたハードウェア同士は、有線及び無線のいずれで接続されていてもよく、接続方式に制限はない。
【００５０】  このため、コントローラ１００の回路は、カメラ４３により撮像された画像に基づいて、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報と、先端部３０ａの位置情報とを取得すること、液体Ｃ１を分注器３０内に吸引する際に、先端部３０ａの位置情報と、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報とに基づいて、分注器３０を下降させるようにロボット１０を制御すること、を実行するように構成されている。
【００５１】  コントローラ１００のハードウェア構成は、必ずしもプログラムの実行により各機能モジュールを構成するものに限られない。例えばコントローラ１００は、専用の論理回路により又はこれを集積したＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）により各機能を構成するものであってもよい。
【００５２】１．２  プロトコル構築手順（１）全体構成  続いて、プロトコル構築方法の一例として、コントローラ１００によるプロトコルの構築手順について説明する。
【００５３】  図８に示すように、コントローラ１００は、まずステップＳ１０１を実行する。ステップＳ１０１では、工程設定部１１１が、複数種類の分注作業を含むロボット１０の作業工程を設定する。工程設定部１１１は、複数種類の分注作業を含むロボット１０の作業工程をコンソール２００から取得し、工程記憶部１５１に登録する。
【００５４】  図９は、作業工程の設定例を例示する図である。この作業工程は、ステップＳ０１〜Ｓ２３を有する。ステップＳ０１は、細胞等のサンプルを収容した第一の容器９０に第一の試薬を注入し、例えばボルテックスミキサー等によって容器９０の内容物を撹拌する工程である。ステップＳ０２は、遠心分離等により、第一の容器９０の内容物を分注対象の液体Ｃ１と非分注対象物Ｃ２とに分離する工程である。ステップＳ０３は、第一の容器９０内の分注対象の液体Ｃ１を取り出して第二の容器９０に移し替える工程である。
【００５５】  ステップＳ１１は、液体Ｃ１を収容した第二の容器９０に第二の試薬を注入し、例えばボルテックスミキサー等によって容器９０の内容物を撹拌する工程である。ステップＳ１２は、遠心分離等により、第二の容器９０の内容物を分注対象の液体Ｃ１と非分注対象物Ｃ２とに分離する工程である。ステップＳ１３は、第二の容器９０内の分注対象の液体Ｃ１を排出する工程である。
【００５６】  ステップＳ２１は、残留した非分注対象物Ｃ２を収容した第二の容器９０に第三の試薬を注入し、例えばボルテックスミキサー等によって容器９０の内容物を撹拌する工程である。ステップＳ２２は、遠心分離などにより、第二の容器９０の内容物を分注対象の液体Ｃ１と非分注対象物Ｃ２とに分離する工程である。ステップＳ２３は、第二の容器９０内の分注対象の液体Ｃ１を排出し、容器９０内に残留した非分注対象物Ｃ２を回収する工程である。なお、図９の作業工程においては、ステップＳ０３，Ｓ１３及びＳ２３が分注作業に相当する。
【００５７】  図８に戻り、コントローラ１００は、次にステップＳ１０２を実行する。ステップＳ１０２では、ロボット制御部１３０が、ステップＳ１０１において設定された工程の実行を開始するようにロボット１０を制御する。ロボット制御部１３０は、例えばユーザによる指令入力に応じてステップＳ１０２を実行する。
【００５８】  次に、コントローラ１００は、ステップＳ１０３を実行する。ステップＳ１０３では、実行対象の工程が分注作業であるか否かを工程確認部１１４が確認する。実行対象の工程が分注作業ではない場合、コントローラ１００はステップＳ１１４を実行する。ステップＳ１１４では、ロボット制御部１３０が、当該工程を実行するようにロボット１０を制御する。次に、コントローラ１００は、処理を後述のステップＳ１１５に進める。
【００５９】  実行対象の工程が分注作業である場合、コントローラ１００はステップＳ１０４，Ｓ１０５を実行する。ステップＳ１０４では、ロボット制御部１３０が、容器９０を容器保持部４４に配置するようにアーム１３Ｂを制御する。容器９０の上部がキャップで塞がれている場合、ロボット制御部１３０は、キャップの除去も行うようにアーム１３Ｂを制御する。ステップＳ１０５では、ロボット制御部１３０が、容器９０側に分注器３０の搬送を開始するようにアーム１３Ａを制御する。
【００６０】  次に、コントローラ１００はステップＳ１０６を実行する。ステップＳ１０６では、実行対象の分注作業用の基準データが基準データ記憶部１５２に登録されているか否かを割込部１１２が確認する。基準データが登録されていると判定した場合、コントローラ１００は、後述のステップＳ１１２に処理を進める。
【００６１】  基準データが登録されていないと判定した場合、コントローラ１００はステップＳ１０７，Ｓ１０８を実行する。ステップＳ１０７では、割込部１１２がカメラ４３から画像を取得する。ステップＳ１０８では、ステップＳ１０７において取得した画像に基づいて、先端部３０ａが基準データ登録用の位置に到達したか否かを割込部１１２が判定する。基準データ登録用の位置とは、液面ＳＦ１よりも上方において、カメラ４３の視野内に入る位置を意味する。割込部１１２は、先端部３０ａが基準データ登録用の位置に到達するまでステップＳ１０７，Ｓ１０８を繰り返す。
【００６２】  ステップＳ１０８において、先端部３０ａが基準データ登録用の位置に到達したと判定すると、コントローラ１００はステップＳ１０９を実行する。ステップＳ１０９では、割込部１１２が、分注器３０の搬送を停止させる指令をロボット制御部１３０に出力する。ロボット制御部１３０は、割込部１１２からの指令に応じて、分注器３０の搬送を停止するようにロボット１０を制御する。このように、割込部１１２は、基準データが未登録である場合に、先端部３０ａがカメラ４３の視野内に入った後にロボット１０を停止させる。
【００６３】  次に、コントローラ１００はステップＳ１１０，Ｓ１１１を実行する。ステップＳ１１０では、基準データ登録部１１３が基準データの登録を実行する。ステップＳ１１１では、割込部１１２が、分注器３０の搬送を再開させる指令をロボット制御部１３０に出力する。ロボット制御部１３０は、割込部１１２からの指令に応じて、分注器３０の搬送を再開するようにロボット１０を制御する。このように、基準データ登録部１１３は、割込部１１２がロボット１０を停止させているときに基準データの登録を実行し、割込部１１２は、基準データの登録後にロボット１０の動作を再開させる。
【００６４】  次に、コントローラ１００はステップＳ１１２，Ｓ１１３を実行する。ステップＳ１１２では、ロボット制御部１３０が、分注器３０を吸引の開始位置に配置するようにアーム１３Ａを制御する。吸引の開始位置は、例えば液面ＳＦ１から所定深さの位置に予め設定される。ステップＳ１１３では、ロボット制御部１３０及び分注器制御部１４０が、分注作業を実行するようにロボット１０及び分注器３０をそれぞれ制御する。
【００６５】  次に、コントローラ１００はステップＳ１１５を実行する。ステップＳ１１５では、全工程の実行が完了したか否かをロボット制御部１３０が判定する。全工程の実行が完了していないと判定した場合、コントローラ１００は、ステップＳ１１６を実行する。ステップＳ１１６では、基準データ登録部１１３が実行対象を次の工程に移行させる。その後、コントローラ１００は処理をステップＳ１０３に戻す。これにより、基準データが未登録である場合にロボット１０を停止させることが、割込部１１２によって分注作業ごとに実行される。また、割込部１１２がロボット１０を停止させる度に、次に実行予定の分注作業に対応する基準データの登録が基準データ登録部１１３によって実行される。
【００６６】  ステップＳ１１５において、全工程の実行が完了したと判定した場合、コントローラ１００は処理を終了する。以上でプロトコル構築手順が完了する。
【００６７】（２）基準データ登録手順  続いて、ステップＳ１１０における基準データの登録手順について詳細に説明する。
【００６８】  図１０に示すように、コントローラ１００は、まずステップＳ２０１を実行する。ステップＳ２０１では、バックライト制御部１６０がライト４５を点灯させ、基準データ登録部１１３が、基準データの設定用の画面をコンソール２００のモニタ２０１に表示する。
【００６９】  次に、コントローラ１００は、ステップＳ２０２〜Ｓ２０４を実行する。ステップＳ２０２では、基準データ登録部１１３が、液体Ｃ１外における先端部３０ａを画像内で探索するための解析領域（本実施形態では、これを「第一の解析領域」という。）をコンソール２００から取得し、これを基準データとして基準データ記憶部１５２に登録する。ステップＳ２０３では、基準データ登録部１１３が、液面ＳＦ１を画像内で探索するための解析領域（本実施形態では、これを「第二の解析領域」という。）をコンソール２００から取得し、これを基準データとして基準データ記憶部１５２に登録する。ステップＳ２０４では、基準データ登録部１１３が、境界部ＢＤ１を画像内で探索するための解析領域（本実施形態では、これを「第三の解析領域」という。）をコンソール２００から取得し、これを基準データとして基準データ記憶部１５２に登録する。なお、ステップＳ２０２〜Ｓ２０４の実行順序は適宜変更可能である。例えば、基準データ登録部１１３は、第二の解析領域の取得、第三の解析領域の取得、第一の解析領域の取得を順に実行してもよい。
【００７０】  図１１は、解析領域の設定画面を例示する図である。この画面は、カメラ４３により撮像された画像と、ユーザにより入力デバイス２０２に入力された解析領域とを重ねて表示するものである。図１１中の解析領域Ａ１は第一の解析領域の設定用に入力された領域を示している。この解析領域Ａ１は、液体Ｃ１外における先端部３０ａを含むように設定されている。解析領域Ａ２は第二の解析領域の設定用に入力された領域を示している。この解析領域Ａ２は、液面ＳＦ１を含むように設定されている。解析領域Ａ３は第三の解析領域の設定用に入力された領域を示している。この解析領域Ａ３は、境界部ＢＤ１を含むように設定されている。基準データ登録部１１３は、解析領域Ａ１を第一の解析領域として基準データ記憶部１５２に登録し、解析領域Ａ２を第二の解析領域として基準データ記憶部１５２に登録し、解析領域Ａ３を第三の解析領域として基準データ記憶部１５２に登録する。
【００７１】  図１０に戻り、コントローラ１００は、次にステップＳ２０５を実行する。ステップＳ２０５では、基準データ登録部１１３が、先端部３０ａの画像パターンを取得し、これを基準データとして基準データ記憶部１５２に登録する。
【００７２】  図１２は、画像パターンの登録画面を例示する図である。この画面は、先端部３０ａの近傍の画像と、ユーザにより入力デバイス２０２に入力された枠線Ｐ１とを重ねて表示するものである。この画面は、図１１における解析領域Ａ１内を拡大表示したものであってもよい。枠線Ｐ１は、画像パターンとして使用する領域を指定するものである。基準データ登録部１１３は、枠線Ｐ１により囲まれる領域の画像を先端部３０ａの画像パターンとして基準データ記憶部１５２に登録する。
【００７３】  図１０に戻り、コントローラ１００は、次にステップＳ２０６を実行する。ステップＳ２０６では、基準データ登録部１１３が、先端部３０ａを液体Ｃ１内に挿入させる指令をロボット制御部１３０に出力する。ロボット制御部１３０は、基準データ登録部１１３からの指令に応じて、分注器３０を下降させてその先端部３０ａを液体Ｃ１内に挿入させるようにロボット１０を制御する。
【００７４】  次に、コントローラ１００はステップＳ２０７を実行する。ステップＳ２０７では、基準データ登録部１１３が、ステップＳ２０５と同様に先端部３０ａの画像パターンを取得し、これを基準データとして基準データ記憶部１５２に登録する。このように、基準データ登録部１１３は、液体Ｃ１外における先端部３０ａの画像パターンと、液体Ｃ１中における先端部３０ａの画像パターンとを基準データとして登録する。その後、バックライト制御部１６０はライト４５を消灯させる。
【００７５】  以上で基準データの登録手順が完了する。なお、基準データ登録部１１３が、第一の解析領域、第二の解析領域、第三の解析領域、及び液体Ｃ１内外における先端部３０ａの画像パターンを基準データとして登録する場合を例示したが、これに限られない。基準データ登録部１１３は、以上に例示した基準データの一部のみを登録してもよい。また、基準データは、ロボット１０の制御に必要なデータであればどのようなものであってもよいので、基準データ登録部１１３は以上に例示したものとは別の基準データを登録してもよい。
【００７６】１．３  分注制御の実行手順（１）全体構成  続いて、制御方法の一例として、コントローラ１００により実行される分注制御手順について説明する。
【００７７】  図１３は、分注作業の一例として、容器９０内の液体Ｃ１を他の容器９０に移し替える際の制御手順を示している。図１３に示すように、コントローラ１００は、まずステップＳ３０１を実行する。ステップＳ３０１では、容器配置制御部１３１が、容器９０を容器保持部４４に配置するようにアーム１３Ｂを制御する。容器９０の上部がキャップで塞がれている場合、容器配置制御部１３１は、キャップの除去も行うようにアーム１３Ｂを制御する。
【００７８】  次に、コントローラ１００は、ステップＳ３０２〜Ｓ３０４を実行する。ステップＳ３０２では、ロボット制御部１３０が、分注器３０の先端部３０ａを画像取得用の位置に配置するようにアーム１３Ａを制御する。画像取得用の位置とは、液面ＳＦ１よりも上方において、カメラ４３の視野内に入る位置を意味する。その後、バックライト制御部１６０がライト４５を点灯させ、画像処理部１２０がカメラ４３から画像を取得する。この画像は、少なくとも、先端部３０ａと、液面ＳＦ１の一部と、非分注対象物Ｃ２の一部とを含む。
【００７９】  ステップＳ３０３では、画像処理部１２０が、ステップＳ３０２において取得した画像に基づいて、液面ＳＦ１の位置情報と、先端部３０ａの位置情報とを取得する。画像処理部１２０は、第二の解析領域の情報を基準データ記憶部１５２から取得し、液面ＳＦ１の位置情報を第二の解析領域内から取得する。一例として、画像処理部１２０は、第二の解析領域内を通る線状部分を検出し、その位置を液面ＳＦ１の位置情報として取得する。画像処理部１２０は、第一の解析領域の情報及び液体Ｃ１外における先端部３０ａの画像パターンを基準データ記憶部１５２から取得し、当該画像パターンに基づいて、先端部３０ａの位置情報を第一の解析領域内から取得する。一例として、画像処理部１２０は、第一の解析領域内において、先端部３０ａの画像パターンに一致する部分の位置を先端部３０ａの位置情報として取得する。画像処理部１２０は、更に境界部ＢＤ１の位置情報を取得してもよい。この場合、画像処理部１２０は、第三の解析領域の情報を基準データ記憶部１５２から取得し、境界部ＢＤ１の位置情報を第三の解析領域内から取得する。一例として、画像処理部１２０は、第三の解析領域内を通る線状部分を検出し、その位置を境界部ＢＤ１の位置情報として取得する。
【００８０】  ステップＳ３０４では、分注器配置制御部１３２が、先端部３０ａを吸引の開始位置ＯＰ１（図１６（ａ）参照）に配置するようにアーム１３Ａを制御する。具体的に、分注器配置制御部１３２は、ステップＳ３０３において取得された先端部３０ａの位置情報及び液面ＳＦ１の位置情報に基づいて、先端部３０ａを開始位置ＯＰ１に配置するための移動量を算出し、当該移動量にて先端部３０ａを移動させるようにアーム１３Ａを制御する。開始位置ＯＰ１は、例えば、液面ＳＦ１から所定深さ（以下、「基準深さ」という。）ＤＰ１の位置に予め設定される。基準深さＤＰ１は、例えば以下の条件を満たすように予め設定される。    条件１−１）液面ＳＦ１から境界部ＢＤ１までの深さに比較して微少であること。    条件１−２）位置制御の誤差が生じても先端部３０ａを液体Ｃ１内に維持できること。
【００８１】  次に、コントローラ１００はステップＳ３０５を実行する。ステップＳ３０５では、分注器制御部１４０及び降下制御部１３３が、液体Ｃ１の吸引を実行するように分注器３０及びロボット１０をそれぞれ制御する。分注器制御部１４０は、液体Ｃ１を容器９０内から吸引するように分注器３０を制御する。降下制御部１３３は、液体を分注器３０内に吸引する際に、先端部３０ａの位置情報と、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報とに基づいて、分注器３０を下降させるようにロボット１０を制御する。分注器３０の下降が完了すると、バックライト制御部１６０がライト４５を消灯させる。
【００８２】  次に、コントローラ１００はステップＳ３０６を実行する。ステップＳ３０６では、分注器配置制御部１３２が、先端部３０ａを容器９０内から引き抜くようにアーム１３Ａを制御する。
【００８３】  次に、コントローラ１００はステップＳ３０７を実行する。ステップＳ３０７では、容器配置制御部１３１が、容器保持部４４の容器９０を他の容器９０に交換するようにアーム１３Ｂを制御する。
【００８４】  次に、コントローラ１００はステップＳ３０８を実行する。ステップＳ３０８では、分注器配置制御部１３２が、先端部３０ａを吐出の開始位置に配置するようにアーム１３Ａを制御する。吐出の開始位置は、例えば、容器９０内の位置に予め設定される。
【００８５】  次に、コントローラ１００はステップＳ３０９を実行する。ステップＳ３０９では、分注器制御部１４０が、液体Ｃ１を容器９０内に吐出するように分注器３０を制御する。
【００８６】  次に、コントローラ１００はステップＳ３１０を実行する。ステップＳ３１０では、分注器配置制御部１３２が、先端部３０ａを容器９０内から引き抜くようにアーム１３Ａを制御する。以上で分注作業が完了する。
【００８７】（２）吸引制御手順  続いて、ステップＳ３０５における吸引手順について詳細に説明する。
【００８８】  図１４に示すように、コントローラ１００は、まずステップＳ４０１を実行する。ステップＳ４０１では、分注器制御部１４０が、容器９０内の液体Ｃ１の吸引を開始するように分注器３０を制御する。
【００８９】  次に、コントローラ１００はステップＳ４０２を実行する。ステップＳ４０２では、画像処理部１２０がカメラ４３から画像を取得する。この画像は、少なくとも、先端部３０ａと、液面ＳＦ１の一部と、非分注対象物Ｃ２の一部とを含む。
【００９０】  次に、コントローラ１００はステップＳ４０３，Ｓ４０４を実行する。ステップＳ４０３では、画像処理部１２０が、ステップＳ４０２において取得した画像に基づいて、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報と、先端部３０ａの位置情報とを取得する。画像処理部１２０は、第二の解析領域の情報を基準データ記憶部１５２から取得し、液面ＳＦ１の位置情報を第二の解析領域内から取得する。一例として、画像処理部１２０は、第二の解析領域内を通る線状部分を検出し、その位置を液面ＳＦ１の位置情報として取得する。画像処理部１２０は、第三の解析領域の情報を基準データ記憶部１５２から取得し、境界部ＢＤ１の位置情報を第三の解析領域内から取得する。一例として、画像処理部１２０は、第三の解析領域内を通る線状部分を検出し、その位置を境界部ＢＤ１の位置情報として取得する。画像処理部１２０は、液体Ｃ１内における先端部３０ａの画像パターンを基準データ記憶部１５２から取得し、先端部３０ａの画像パターンに基づいて、先端部３０ａの位置情報を第二の解析領域内から取得する。一例として、画像処理部１２０は、第二の解析領域内において、先端部３０ａの画像パターンに一致する部分の位置を先端部３０ａの位置情報として取得する。
【００９１】  ステップＳ４０４では、ステップＳ４０２において取得された画像に基づいて、傾斜検出部１３７が境界部ＢＤ１の傾斜を検出する。傾斜検出部１３７は、画像処理部１２０により取得された境界部ＢＤ１の位置情報に基づいて境界部ＢＤ１の傾斜を検出してもよい。
【００９２】  次に、コントローラ１００はステップＳ４０５を実行する。ステップＳ４０５では、目標位置設定部１３６が、ステップＳ４０３において取得された境界部ＢＤ１の位置情報に基づいて最終目標位置ＧＬ１（図１６（ｂ）参照）を設定する。一例として、目標位置設定部１３６は、最終目標位置ＧＬ１を境界部ＢＤ１の位置に比べて上に設定する。また、目標位置設定部１３６は、最終目標位置ＧＬ１と境界部ＢＤ１との鉛直方向における距離が所定の垂直オフセット値ＶＯ１となるように最終目標位置ＧＬ１を設定する。垂直オフセット値ＶＯ１は、例えば以下の条件を満たすように予め設定される。    条件２−１）液面ＳＦ１から境界部ＢＤ１までの深さに比較して微少であること。    条件２−２）位置制御の誤差が生じても先端部３０ａが境界部ＢＤ１に到達しないこと。
【００９３】  目標位置設定部１３６は、ステップＳ４０４において傾斜検出部１３７により境界部ＢＤ１の傾斜が検出された場合には、容器９０の中心位置（例えば、側壁９１の中心軸線ＣＬ１）を基準にして、境界部ＢＤ１の傾斜を下る方向にずれた位置を最終目標位置ＧＬ１として設定する（図１７（ｂ）参照）。一例として、目標位置設定部１３６は、最終目標位置ＧＬ１と容器９０の中心軸線ＣＬ１との水平方向における距離が所定の水平オフセット値ＨＯ１となるように最終目標位置ＧＬ１を設定する。水平オフセット値ＨＯ１は、例えば以下の条件を満たすように予め設定される。    条件３−１）分注器３０が容器９０の側壁９１に干渉しないこと。この場合においても、目標位置設定部１３６は、最終目標位置ＧＬ１と境界部ＢＤ１との鉛直方向における距離が所定の垂直オフセット値ＶＯ２となるように最終目標位置ＧＬ１を設定する。垂直オフセット値ＶＯ２も垂直オフセット値ＶＯ１と同様の条件を満たすように予め設定される。
【００９４】  次に、コントローラ１００はステップＳ４０６〜Ｓ４１１を実行する。ステップＳ４０６では、画像処理部１２０が、ステップＳ４０２と同様にカメラ４３から画像を取得する。ステップＳ４０７では、画像処理部１２０が、ステップＳ４０３と同様に液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報と、先端部３０ａの位置情報とを取得する。ステップＳ４０８では、傾斜検出部１３７が、ステップＳ４０４と同様に境界部ＢＤ１の傾斜を検出する。
【００９５】  ステップＳ４０９では、アーム１３Ａにより分注器３０を下降させることで、液面ＳＦ１の下降に追従して先端部３０ａを下降させるように、第一モード制御部１３３ａがロボット１０を制御する（以下、この制御を「第一モードの下降制御」という。）。第一モード制御部１３３ａは、液面ＳＦ１の位置情報と、先端部３０ａの位置情報とに基づいて第一モードの下降制御を実行する。具体的に、第一モード制御部１３３ａは、液面ＳＦ１から先端部３０ａまでの深さが基準深さＤＰ１に近い値に保たれるように第一モードの下降制御を実行する（図１６（ｂ）参照）。
【００９６】  ステップＳ４１０では、基準距離設定部１３４が基準距離ＲＦ１を設定する（図１６（ｂ）参照）。基準距離設定部１３４は、先端部３０ａの移動速度が大きくなるのに応じて基準距離ＲＦ１を大きくするように構成されていてもよい。一例として、基準距離設定部１３４は、基準距離ＲＦ１を先端部３０ａの下降速度に比例する値に設定するように構成されていてもよい。先端部３０ａの下降速度は、例えば今回取得された先端部３０ａの位置情報と、前回取得された先端部３０ａの位置情報との差分に基づいて算出可能である。また、複数回に亘って算出された上記差分の平均値に基づいて下降速度を算出することも可能である。
【００９７】  ステップＳ４１１では、境界監視部１３５が、ステップＳ４０７において取得された境界部ＢＤ１の位置情報に基づいて、境界部ＢＤ１の変化の有無を判定する。ステップＳ４１１において境界部に変化が検出されない場合、コントローラ１００は処理をステップＳ４１３に進める。
【００９８】  ステップＳ４１１において境界部ＢＤ１に変化が検出された場合、コントローラ１００はステップＳ４１２を実行する。ステップＳ４１２では、目標位置設定部１３６が、ステップＳ４０７において取得された境界部ＢＤ１の位置情報に基づいて、ステップＳ４０５と同様にして最終目標位置ＧＬ１を設定する。すなわち目標位置設定部１３６は、ロボット１０が分注器３０を下降させているときに、境界部ＢＤ１の位置情報に基づいて最終目標位置ＧＬ１を更新する。また、目標位置設定部１３６は、境界監視部１３５により境界部ＢＤ１の変化が検出され場合に最終目標位置ＧＬ１を更新する。
【００９９】  次に、コントローラ１００はステップＳ４１３を実行する。ステップＳ４１３では、切替部１３３ｃが、ステップＳ４１０において予め設定された基準距離ＲＦ１に比べ、先端部３０ａから最終目標位置ＧＬ１までの距離（以下、「第一の残距離」という。）ＬＤ１が小さいか否かを判定する。第一の残距離ＬＤ１が基準距離ＲＦ１以上であると判定した場合（図１６（ｂ）参照）、コントローラ１００は処理をステップＳ４０６に戻す。これにより、第一モード制御部１３３ａによる制御が継続される。
【０１００】  第一の残距離ＬＤ１が基準距離ＲＦ１未満であると判定した場合（図１６（ｃ）参照）、コントローラ１００は処理をステップＳ４１４に進める。図１５に示すように、ステップＳ４１４では、切替部１３３ｃが、第一モード制御部１３３ａによる制御を第二モード制御部１３３ｂによる制御に切り替える。ステップＳ４１３，Ｓ４１４にて例示されるように、切替部１３３ｃは、先端部３０ａが最終目標位置ＧＬ１に近付くのに応じて第一モード制御部１３３ａによる制御を第二モード制御部１３３ｂによる制御に切り替える。
【０１０１】  次に、コントローラ１００はステップＳ４１５〜Ｓ４１８を実行する。ステップＳ４１５では、画像処理部１２０が、ステップＳ４０２と同様にカメラ４３から画像を取得する。ステップＳ４１６では、画像処理部１２０が、ステップＳ４０３と同様に液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報と、先端部３０ａの位置情報とを取得する。ステップＳ４１７では、傾斜検出部１３７が、ステップＳ４０４と同様に境界部ＢＤ１の傾斜を更に検出する。
【０１０２】  ステップＳ４１８では、アーム１３Ａにより分注器３０を下降させることで、先端部３０ａを最終目標位置ＧＬ１に近付けるように、第二モード制御部１３３ｂがロボット１０を制御する（以下、この制御を「第二モードの下降制御」という。）。
【０１０３】  なお、第二モード制御部１３３ｂは、第一モード制御部１３３ａに比べてオーバーシュートを抑制する制御を行ってもよい。一方第一モード制御部１３３ａは、第二モード制御部１３３ｂに比べて応答性を高める制御を行ってもよい。このような構成の一例として、第一モード制御部１３３ａによる制御においては、画像処理における遅れを補償するフィードフォワード制御を行い、第二モード制御部１３３ｂによる制御においては当該フィードフォワード制御を行わないものが挙げられる。このような構成の他の例として、第一モード制御部１３３ａによる制御においては、第二モード制御部１３３ｂによる制御に比べて偏差に対するゲインを高く設定するものも挙げられる。
【０１０４】  次に、コントローラ１００は、ステップＳ４１１と同様のステップＳ４１９を実行する。ステップＳ４１９では、境界監視部１３５が、ステップＳ４１６において取得された境界部ＢＤ１の位置情報に基づいて境界部ＢＤ１の変化の有無を判定する。ステップＳ４１９において境界部ＢＤ１に変化が検出されない場合、コントローラ１００は処理をステップＳ４２１に進める。
【０１０５】  ステップＳ４１９において、境界部ＢＤ１に変化が検出された場合、コントローラ１００は、ステップＳ４１２と同様のステップＳ４２０を実行する。ステップＳ４２０では、目標位置設定部１３６が、ステップＳ４１６において取得された境界部ＢＤ１の位置情報に基づいて最終目標位置ＧＬ１を更新する。
【０１０６】  次に、コントローラ１００はステップＳ４２１を実行する。ステップＳ４２１では、第二モード制御部１３３ｂが、第一の残距離ＬＤ１がゼロ以下であるか否かを検出する。第一の残距離ＬＤ１がゼロより大きいと判定した場合（図１６（ｃ）参照）、コントローラ１００は処理をステップＳ４１５に戻す。これにより、第二モード制御部１３３ｂによる制御が継続される。
【０１０７】  第一の残距離ＬＤ１がゼロ以下であると判定した場合（図１６（ｄ）参照）、コントローラ１００はステップＳ４２２を実行する。ステップＳ４２２では、第二モード制御部１３３ｂが、分注器３０の下降を停止させるようにロボット１０を制御する。これにより、降下制御部１３３による分注器３０の降下制御が完了する。ステップＳ４０６〜Ｓ４２２において例示されるように、降下制御部１３３は、液面ＳＦ１の下降に追従して先端部３０ａを下降させ、最終目標位置ＧＬ１まで先端部３０ａを下降させるようにロボット１０を制御する。
【０１０８】  次に、コントローラ１００はステップＳ４２３を実行する。ステップＳ４２３では、分注器制御部１４０が、液体Ｃ１の吸引を停止するように分注器３０を制御する（図１６（ｅ）参照）。その後、バックライト制御部１６０がライト４５を消灯させる。以上で吸引手順が完了する。
【０１０９】（３）吸引制御手順の変形例  コントローラ１００は、液面ＳＦ１に対して境界部ＢＤ１が傾斜し得る場合（例えば容器９０の中心軸線ＣＬ１に対して境界部ＢＤ１が傾斜している場合）に、液面ＳＦ１に対する境界部ＢＤ１の傾斜を緩やかにする方向に容器９０が傾いた状態で、ステップＳ３０５の吸引手順を実行してもよい。この場合、ステップＳ３０５では、降下制御部１３３が、容器９０の傾きに対応して分注器３０の先端部３０ａを斜め方向に下降させるようにロボット１０を制御する（図１９（ａ）〜（ｄ）参照）。容器９０の傾きに対応して先端部３０ａを斜め方向に下降させるとは、容器９０の側壁９１に接しないように先端部３０ａを下降させることを意味する。例えば降下制御部１３３は、容器９０の傾いた中心軸線ＣＬ１に沿って先端部３０ａを下降させるようにロボット１０を制御してもよい。
【０１１０】  コントローラ１００は、容器９０の中心軸線ＣＬ１を基準にして、境界部ＢＤ１の傾斜を下る方向にずれた位置を最終目標位置ＧＬ１として設定すること、及び液面ＳＦ１に対する境界部ＢＤ１の傾斜を緩やかにする方向に容器９０が傾いた状態とすることのいずれか一方のみを行うように構成されていてもよいし、これらの両方を組み合わせて行うように構成されていてもよい。
【０１１１】  液面ＳＦ１に対する境界部ＢＤ１の傾斜を緩やかにする方向に容器９０が傾いた状態とするタイミング及び手法に特に制限はない。例えば、容器９０を容器保持部４４に配置するように容器配置制御部１３１がロボット１０を制御した後に、ラック４０を傾けることで容器９０を傾けるように傾動制御部１３８がロボット１０を制御してもよい。
【０１１２】  ラック４０を傾けるように傾動制御部１３８がロボット１０を制御した後に、容器９０を容器保持部４４に配置するように容器配置制御部１３１がロボット１０を制御してもよい。
【０１１３】  容器９０は、カメラ４３の視野外から視野内に搬送される前に、液面ＳＦ１に対する境界部ＢＤ１の傾斜を緩やかにする方向に傾けて配置されている場合もある。例えば容器９０が傾いた状態で遠心分離機内に配置される場合、遠心分離の実行後の容器９０内では、容器９０が直立する場合に比べ、液面ＳＦ１に対する境界部ＢＤ１の傾斜が緩やかとなる。このような場合、容器配置制御部１３１は、容器９０の傾きを維持しながら、当該容器９０をカメラ４３の視野外から搬送し、容器保持部４４に配置するようにロボット１０を制御してもよい。
【０１１４】  液面ＳＦ１に対する境界部ＢＤ１の境界を緩やかにする方向に容器９０が傾いた状態とすることをステップＳ３０５に先立って実行する場合、コントローラ１００は、ストッパ６１を利用してラック４０の傾きを一定に保つようにロボット１０を制御してもよい。例えばコントローラ１００は、アーム１３Ｂにより取っ手４６の上部４６ａを上昇させてステージ４１を傾けた状態で、アーム１３Ａによりストッパ６１をヒンジ５２側に倒し、ステージ４１の縁部を溝部６１ｂ内に嵌め込むようにロボット１０を制御してもよい（図２０参照）。
【０１１５】  ステージ４１の縁部が溝部６１ｂ内に嵌り込むと、ラック４０の傾きがストッパ６１により保たれるので、取っ手４６及びストッパ６１をアーム１３Ａ，１３Ｂから解放することが可能となる。このため、分注器３０を画像取得用の位置に配置する作業をアーム１３Ａに実行させることが可能となる。また、容器９０の上部がキャップにより塞がれている場合には、当該キャップを除去する作業をアーム１３Ｂに実行させることも可能となる。更に、分注器３０が手動式である場合には、アーム１３Ａ，１３Ｂの協調により分注器３０を操作することも可能となる。このように、ストッパ６１を利用することで、アーム１３Ａ，１３Ｂをより幅広い作業に活用し得る。
【０１１６】  コントローラ１００は、液面ＳＦ１に対する境界部ＢＤ１の境界を緩やかにする方向に容器９０が傾いた状態とすることをステップＳ３０５の途中で実行してもよい。例えば傾動制御部１３８は、ロボット１０が先端部３０ａを下降させている途中において、ラック４０を傾けることで容器９０を傾けるようにロボット１０を制御してもよい（以下、これを「傾動制御」という）。一例として、傾動制御部１３８は、先端部３０ａが最終目標位置ＧＬ１に近付くのに応じて容器９０を傾けるようにロボット１０を制御してもよい。
【０１１７】  図１８は、傾動制御手順を例示するフローチャートである。図１８に示すように、コントローラ１００は、まずステップＳ５０１を実行する。ステップＳ５０１では、傾動制御部１３８が、ステップＳ４０３，Ｓ４０６，Ｓ４１４のいずれかにおいて取得された位置情報に基づいて、液面ＳＦ１から境界部ＢＤ１までの距離（以下、「第二の残距離」という。）ＬＤ２が基準距離ＲＦ３に比べて小さくなるのを待機する（図２１（ａ）及び（ｂ）参照）。基準距離ＲＦ３は、液面ＳＦ１が境界部ＢＤ１に到達する前に容器９０及び分注器３０の傾動が開始されるように、予め設定される。
【０１１８】  第二の残距離ＬＤ２が基準距離ＲＦ３に比べて小さくなると（図２１（ｃ）参照）、コントローラ１００はステップＳ５０２〜Ｓ５０６を実行する。ステップＳ５０２では、傾斜検出部１３７が、ステップＳ４０２，Ｓ４０５、Ｓ４１３のいずれかにおいて取得された画像に基づいて、液面ＳＦ１に対する境界部ＢＤ１の傾斜角度θを検出する（図２１（ｃ）参照）。傾斜角度θは、例えば境界部ＢＤ１の形状を線径補完することで算出可能である。
【０１１９】  ステップＳ５０３では、傾動制御部１３８が、傾斜角度θに対応する目標傾動角度ＲＦ５を設定する。一例として、傾動制御部１３８は、目標傾動角度ＲＦ５を傾斜角度θに等しい値に設定する。
【０１２０】  ステップＳ５０４では、傾動制御部１３８が、容器９０及び分注器３０の傾動を開始するようにロボット１０を制御する（図２１（ｄ）及び（ｅ）参照）。一例として、傾動制御部１３８は、アーム１３Ｂにより取っ手４６の上部４６ａを上昇させてラック４０を傾けることで、容器９０を傾けるようにロボット１０を制御する（図２２参照）。これにより、カメラ４３と、容器９０と、ライト４５とが並ぶ方向に沿う軸線まわりにラック４０が傾動する。また、傾動制御部１３８は、容器９０の傾動に合わせて、アーム１３Ａにより分注器３０を傾けるようにロボット１０を制御する。
【０１２１】  ステップＳ５０５では、容器９０及び分注器３０の傾動角度が目標傾動角度ＲＦ５以上となるのを傾動制御部１３８が待機する。ステップＳ５０６では、容器９０及び分注器３０の傾動を停止させるように傾動制御部１３８がロボット１０を制御する。
【０１２２】  以上で傾動制御手順が完了する。なお、傾斜角度θは遠心分離器の特性等により略一様に定まり、定数として扱うことが可能な場合もある。このような場合、傾斜角度θを検出するステップＳ５０２を省略してもよい。
【０１２３】  ラック４０を傾けることで容器９０を傾ける構成においては、カメラ４３も容器９０と共に傾く。このため、画像内において容器９０は傾かず、液面ＳＦ１のみが傾斜する。このように液面ＳＦ１が傾く状態を想定し、画像処理部１２０は、予め傾きが規定された線状パターンを探索対象として、当該線状パターンを画像内から抽出し、抽出結果に基づいて液面の位置情報を取得してもよい。画像処理部１２０は、探索対象とする線状パターンの傾きを容器９０の傾きに応じて規定してもよい。
【０１２４】  図２３は、ラック４０を備える構成においてカメラ４３により撮像される画像を示している。画像処理部１２０は、図２３（ａ）に示すように、容器９０及びカメラ４３が傾く方向Ｄ１と逆向きに同程度の角度で傾いた線状パターンＬＰ１を探索対象として、線状パターンＬＰ１を画像内から抽出し、抽出結果に基づいて液面ＳＦ１の位置情報を取得してもよい。画像処理部１２０は、線状パターンＬＰ１の傾斜角を一つの値に設定してもよいし、上限値及び下限値を設定し、線状パターンＬＰ１の傾斜角に幅を持たせてもよい。
【０１２５】  画像処理部１２０は、探索対象とする線状パターンの傾きを容器９０の太さ（側壁９１の内径）に応じて規定してもよい。例えば画像処理部１２０は、容器９０が細くなる（側壁９１の内径が小さくなる）のに応じて、探索対象とする線状パターンの傾きを小さく規定してもよい。
【０１２６】  液面ＳＦ１の周縁部は、液体Ｃ１の表面張力により、側壁９１の内面に近付くにつれてせり上がった状態となる（以下、せり上がった部分を「せり上がり部」という。）。図２３（ｂ）に示すように、容器９０が細くなると、液面ＳＦ１におけるせり上がり部の比率が高くなる。このような場合に、探索対象の線状パターンの傾きを大きく設定してしまうと、せり上がり部のみを抽出してしまう可能性がある。せり上がり部のみが抽出されると、液面全体がせり上がり部と同様に傾いているものとして液面ＳＦ１の位置情報が取得されるので、液面ＳＦ１の位置情報の精度が低下する（図中の線状パターンＬＰ１参照）。このような場合には、線状パターンＬＰ１に比べ傾きが小さい（例えば水平な）線状パターンＬＰ２を探索対象とすることで、せり上がりの小さい側壁９１の中心近傍における液面ＳＦ１を抽出することが可能となる。これにより、液面ＳＦ１の位置情報の精度低下を抑制できる。１．４  第一実施形態の効果
【０１２７】  以上に説明したように、分注システム１は、分注対象の液体Ｃ１を吸引するための分注器３０を移動させるロボット１０と、少なくとも、分注器３０の先端部３０ａと、液体Ｃ１の液面ＳＦ１と、液面ＳＦ１よりも下方に位置する非分注対象物Ｃ２とを含む画像を撮像するためのカメラ４３と、上記画像に基づいて、液面ＳＦ１の位置情報と、液体Ｃ１と非分注対象物Ｃ２との間の境界部ＢＤ１の位置情報と、分注器３０の先端部３０ａの位置情報とを取得する画像処理部１２０と、液体Ｃ１を分注器３０内に吸引する際に、先端部３０ａの位置情報と、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報とに基づいて、分注器３０を下降させるようにロボット１０を制御する降下制御部１３３と、を備える。
【０１２８】  この分注システム１によれば、液面ＳＦ１と先端部３０ａとの位置関係に基づいて先端部３０ａを下降させることで、先端部３０ａを液面ＳＦ１から浅い位置に保つことが可能となる。これにより、先端部３０ａの外周に付着してしまう液体が削減される。境界部ＢＤ１と先端部３０ａとの位置関係に基づいて先端部３０ａを下降させることで、先端部３０ａを境界部ＢＤ１に近付けることが可能となる。これにより、液体Ｃ１が十分に吸引される。また、液面ＳＦ１及び境界部ＢＤ１に合わせて先端部３０ａを移動させることにより、先端部３０ａを液体内に維持し、空吸い（気体の吸引）の発生を抑制できる。従って、より確実な分注作業を実行可能である。
【０１２９】  先端部３０ａの位置情報と、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報とは、画像情報に基づいて分注作業ごとに取得される。液面ＳＦ１の位置情報及び境界部ＢＤ１の位置情報はばらつきやすいので、これらの情報を分注作業ごとに取得することによって更に確実な分注作業を実行できる。
【０１３０】  なお、本実施形態においては、チップ３２が本体部３１に対して着脱自在となっているため、本体部３１に対する先端部３０ａの位置もばらつき易い。このため、先端部３０ａの位置情報と、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報とを分注作業ごとに取得することの効果がより顕著なものとなっている。
【０１３１】  分注システム１は、境界部ＢＤ１の位置情報に基づいて最終目標位置ＧＬ１を設定する目標位置設定部１３６を更に備えてもよく、降下制御部１３３は、液面ＳＦ１の下降に追従して分注器３０の先端部３０ａを下降させ、最終目標位置ＧＬ１まで分注器３０の先端部３０ａを下降させるようにロボット１０を制御してもよい。液面ＳＦ１の下降に追従して先端部３０ａを下降させることで、先端部３０ａをより確実に液面ＳＦ１から浅い位置に保つことが可能となる。更に、境界部ＢＤ１から最終目標位置ＧＬ１を求めることで、先端部３０ａをより確実に境界部ＢＤ１に近付けることが可能となる。従って、より確実な分注作業を実行可能である。但し、分注システム１は、先端部３０ａの位置情報と、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報とに基づいて、分注器３０を下降させるものであればよいので、目標位置設定部１３６を更に備えること、液面ＳＦ１の下降に追従して先端部３０ａを下降させること、最終目標位置ＧＬ１まで先端部３０ａを下降させることは必須ではない。
【０１３２】  目標位置設定部１３６は、ロボット１０が分注器３０を下降させているときに、境界部ＢＤ１の位置情報に基づいて最終目標位置ＧＬ１を更新してもよい。この場合、境界部ＢＤ１の位置に変動が生じたときであっても、境界部ＢＤ１の動きに応じて最終目標位置ＧＬ１を更新できるので、先端部３０ａをより確実に境界部ＢＤ１に近付けることが可能となる。従って、より確実な分注作業を実行可能である。但し、目標位置設定部１３６により最終目標位置ＧＬ１を更新することは必須ではない。
【０１３３】  分注システム１は、上記画像に基づいて、境界部ＢＤ１の変化を検出する境界監視部１３５を更に備えてもよく、目標位置設定部１３６は、境界監視部１３５により境界部ＢＤ１の変化が検出された場合に、境界部ＢＤ１の位置情報に基づいて最終目標位置ＧＬ１を更新してもよい。この場合、境界部ＢＤ１に変化が検出されたときに限定して最終目標位置ＧＬ１の更新を行うことで、演算負荷を軽減できる。但し、境界部ＢＤ１に変化が検出されたときに限定して最終目標位置ＧＬ１を更新することは必須ではない。目標位置設定部１３６は、境界部ＢＤ１の位置情報を取得する度に最終目標位置ＧＬ１を更新するように構成されていてもよい。
【０１３４】  降下制御部１３３は、液面ＳＦ１の下降に追従して分注器３０の先端部３０ａを下降させるようにロボット１０を制御する第一モード制御部１３３ａと、分注器３０の先端部３０ａを最終目標位置ＧＬ１まで下降させるようにロボット１０を制御する第二モード制御部１３３ｂと、分注器３０の先端部３０ａが最終目標位置ＧＬ１に近付くのに応じて第一モード制御部１３３ａによる制御を第二モード制御部１３３ｂによる制御に切り替える切替部１３３ｃと、を有してもよい。この場合、第一モード制御部１３３ａによる下降制御では、液面ＳＦ１への追従を優先することで、先端部３０ａをより確実に液面ＳＦ１から浅い位置に保つことが可能となる。第二モード制御部１３３ｂによる下降制御では、最終目標位置ＧＬ１までの下降を優先することで、先端部３０ａをより確実に境界部ＢＤ１に近付けることが可能となる。従って、より確実な分注作業を実行可能である。但し、降下制御部１３３による制御を、第一モード制御部１３３ａによる制御と第二モード制御部１３３ｂによる制御の二段階に分けることは必須ではない。
【０１３５】  第一モード制御部１３３ａは、第二モード制御部１３３ｂに比べて応答性を高める制御を行い、第二モード制御部１３３ｂは、第一モード制御部１３３ａに比べてオーバーシュートを抑制する制御を行ってもよい。この場合、第一モード制御部１３３ａによる下降制御では、液面ＳＦ１の下降に対する先端部３０ａの遅れが削減されるので、先端部３０ａの位置を液面ＳＦ１からより浅い位置に保つことが可能となる。第二モード制御部１３３ｂによる下降制御では、最終目標位置ＧＬ１に対する行き過ぎ量が削減されるので、先端部３０ａをより確実に境界部ＢＤ１に近付けることが可能となる。従って、より確実な分注作業を実行可能である。但し、第一モード制御部１３３ａによる制御と、第二モード制御部１３３ｂによる制御とで応答性等を変更することは必須ではない。
【０１３６】  切替部１３３ｃは、予め設定された基準距離ＲＦ１に比べ残距離ＬＤ１が小さくなるのに応じて、第一モード制御部１３３ａによる制御を第二モード制御部１３３ｂによる制御に切り替えてもよい。この場合、判定基準の単純化により、第一モード制御部１３３ａから第二モード制御部１３３ｂへの切り替えをより確実に実行できる。但し、切り替えの判定基準はこれに限られない。
【０１３７】  分注システム１は、分注器３０の先端部３０ａの移動速度が大きくなるのに応じて基準距離ＲＦ１を大きくする基準距離設定部１３４を更に備えてもよい。この場合、先端部３０ａの移動速度が大きくなるのに応じて第二モード制御部１３３ｂによる制御への切り替えタイミングを早めることで、最終目標位置ＧＬ１における先端部３０ａの停止をより確実に実現できる。従って、より確実な分注作業を実現できる。なお、本実施形態においては、側壁９１の下側部分９１ａが先窄まりのテーパ形状を呈しているので、液面ＳＦ１が底部９２に近付くにつれて液面ＳＦ１の下降速度が大きくなる。このため、移動速度が大きくなるのに応じて基準距離ＲＦ１を大きくする構成の効果がより顕著なものとなっている。但し、先端部３０ａの移動速度が大きくなるのに応じて基準距離ＲＦ１を大きくすることは必須ではない。
【０１３８】  降下制御部１３３は、液体Ｃ１及び非分注対象物Ｃ２が、カメラ４３の視野内において傾いた容器９０に収容された状態にて、容器９０の傾きに対応して分注器３０の先端部３０ａを斜め方向に下降させるようにロボット１０を制御してもよい。この場合、容器９０が直立している場合に比べて、液面ＳＦ１に対する境界部ＢＤ１の傾斜を緩やかにするように容器９０を傾けた状態にて液体Ｃ１の吸引を実行できる。液面ＳＦ１に対する境界部ＢＤ１の傾斜を緩やかにすると、傾斜した境界部ＢＤ１の上側部分と液面ＳＦ１とが接触し難くなるので、境界部ＢＤ１の変動が抑制される。これにより、最終目標位置ＧＬ１の位置が安定するので、先端部３０ａをより確実に境界部ＢＤ１に近付けることが可能となる。従って、より確実な分注作業を実行可能である。但し、吸引作業の実行に際して容器９０が傾いた状態とすることは必須ではない。
【０１３９】  分注システム１は、液面ＳＦ１に対する境界部ＢＤ１の傾斜を緩やかにする方向に容器９０が傾いた状態を維持しながら、当該容器９０をカメラ４３の視野外から搬送し、カメラ４３の視野内に配置するようにロボット１０を制御する容器配置制御部１３１を更に備えてもよい。この場合、境界部ＢＤ１の変動をより確実に抑制できる。
【０１４０】  カメラ４３の視野内において、液面ＳＦ１に対する境界部ＢＤ１の傾斜を緩やかにする方向に容器９０を傾けるようにロボット１０を制御する傾動制御部１３８を更に備えてもよい。この場合、境界部ＢＤ１の状態に応じて容器９０を傾けることができる。
【０１４１】  分注システム１は、上記画像に基づいて、液面ＳＦ１に対する境界部ＢＤ１の傾斜を検出する傾斜検出部１３７を更に備え、傾動制御部１３８は、傾斜検出部１３７により境界部ＢＤ１の傾斜が検出された場合に、分注器３０の先端部３０ａが最終目標位置ＧＬ１に近付くのに応じて、容器９０と分注器３０とを、境界部ＢＤ１の傾斜が緩やかになる方向に傾けるようにロボット１０を制御してもよい。この場合、吸引により容器９０内の液体Ｃ１が減った後に容器９０が傾けられるので、容器９０の傾動による液体Ｃ１の漏出をより確実に防止できる。
【０１４２】  傾動制御部１３８は、液面ＳＦ１が境界部ＢＤ１に到達する前に、容器９０及び分注器３０を傾けるようにロボット１０を制御してもよい。この場合、境界部ＢＤ１の変動がより確実に抑制される。これにより、最終目標位置ＧＬ１の位置が更に安定するので、先端部３０ａをより確実に境界部ＢＤ１に近付けることが可能となる。
【０１４３】  分注システム１は、第一及び第二のアーム１３Ａ，１３Ｂを有する双腕型のロボット１０を備えてもよい。降下制御部１３３は、第一のアーム１３Ａにより分注器３０を下降させるようにロボット１０を制御し、傾動制御部１３８は、第一のアーム１３Ａにより分注器３０を傾け、第二のアーム１３Ｂにより容器９０を傾けるようにロボット１０を制御してもよい。この場合、双腕型のロボット１０を有効活用し、容器９０及び分注器３０の傾動を伴う吸引手順を効率化できる。但し、ロボット１０が双腕型であることは必須ではない。例えば分注システム１は、容器９０を傾動させる装置をロボット１０とは別に備えていてもよい。
【０１４４】  傾斜検出部１３７は、上記画像に基づいて、液面ＳＦ１に対する境界部ＢＤ１の傾斜角度θを検出してもよい。傾動制御部１３８は、傾斜角度θに対応する目標傾動角度ＲＦ５にて容器９０及び分注器３０を傾けるようにロボット１０を制御してもよい。この場合、境界部ＢＤ１の変動がより確実に抑制される。これにより、最終目標位置ＧＬ１の位置が更に安定するので、先端部３０ａをより確実に境界部ＢＤ１に近付けられる。従って、より確実な分注作業を実行可能である。但し、目標傾動角度ＲＦ５を傾斜角度θに対応させることは必須ではない。
【０１４５】  目標位置設定部１３６は、傾斜検出部１３７により境界部ＢＤ１の傾斜が検出された場合には、容器９０の中心位置を基準にして、境界部ＢＤ１の傾斜を下る方向にずれた位置を最終目標位置ＧＬ１として設定してもよい。この場合、容器９０内のより深い位置まで先端部３０ａを進入させ、より多くの液体Ｃ１を吸引できる（図１７（ｂ）〜図１７（ｅ）参照）。従って、より確実な分注作業を実行可能である。但し、中心位置を基準にして、境界部ＢＤ１の傾斜を下る方向にずれた位置を最終目標位置ＧＬ１とすることは必須ではない。
【０１４６】  分注システム１は、カメラ４３及び容器９０を共に保持するラック４０を更に備えてもよい。降下制御部１３３は、容器９０の傾きがラック４０により維持された状態で分注器３０の先端部３０ａを斜め方向に下降させるようにロボット１０を制御してもよい。この場合、容器９０及びカメラ４３の位置関係が安定するので、容器９０が傾いた状態においても、容器９０がより確実にカメラ４３の視野内に保たれる。また、カメラ４３及び容器９０の間の距離が安定するので、画像のピンボケが抑制される。従って、画像に基づく各種位置情報の取得をより確実に実行できるので、より確実な分注作業を実行可能である。但し、ラック４０を備えることは必須ではない。
【０１４７】  分注システム１は、カメラ４３及び容器９０を共に保持するラック４０を更に備えてもよい。傾動制御部１３８は、ラック４０を傾けることで容器９０を傾けるようにロボット１０を制御してもよい。この場合、カメラ４３が容器９０と共に傾動するので、容器９０がより確実にカメラ４３の視野内に保たれる。また、カメラ４３及び容器９０の間の距離が安定するので、画像のピンボケが抑制される。従って、画像に基づく各種位置情報の取得をより確実に実行できるので、より確実な分注作業を実行可能である。但し、ラック４０を備えることは必須ではない。
【０１４８】  分注システム１は、容器９０に光を照射するライト４５を更に備えてもよい。ライト４５は、カメラ４３との間に容器９０を挟む配置にて、カメラ４３及び容器９０と共にラック４０に保持されていてもよい。この場合、ライト４５も容器９０と共に傾動するので、画像に基づく各種位置情報の取得をより確実に実行できる。従って、より確実な分注作業を実行可能である。但し、ライト４５を備えることは必須ではない。
【０１４９】  ライト４５は赤色の可視光を照射してもよい。この場合、画像処理における液面ＳＦ１及び境界部ＢＤ１の検出感度を高めることができる。
【０１５０】  カメラ４３による撮像が行われていない時間帯の少なくとも一部においてライト４５を消灯させるバックライト制御部１６０を更に備えてもよい。この場合、ライト４５の点灯時間を少なくし、オペレータの眼の負担を軽減できる。
【０１５１】  画像処理部１２０は、予め傾きが規定された線状パターンを探索対象として、当該線状パターンを画像内から抽出し、抽出結果に基づいて液面ＳＦ１の位置情報を取得してもよい。液面ＳＦ１の周囲には水滴などのノイズ情報が多い。予め探索対象の線状パターンを規定しておくことで、ノイズ情報を除去して液面ＳＦ１の位置情報を高精度に取得できる。
【０１５２】  画像処理部１２０は、探索対象の線状パターンの傾きを容器９０の傾きに応じて規定してもよい。液面ＳＦ１の傾きは、容器９０の傾きに相関する。このため、探索対象の線状パターンの傾きを容器９０の傾きに応じて規定することで、液面ＳＦ１の位置情報をより高精度に取得できる。
【０１５３】  画像処理部１２０は、探索対象の線状パターンの傾きを容器９０の太さに応じて規定してもよい。液面ＳＦ１の位置情報を取得するのに適切な線状パターンの傾きは、容器９０の太さによって変わる傾向がある。例えば、容器９０が細くなると、液面ＳＦ１における上記せり上がり部（液面ＳＦ１の周縁部において、液体Ｃ１の表面張力によりせり上がった部分）の比率が高くなる。このような場合に、線状パターンの傾きを大きく設定してしまうと、せり上がり部のみを抽出してしまい、液面ＳＦ１の位置情報の精度が低下する可能性がある。このため、容器の太さに応じて線状パターンの傾きを規定することで、液面の位置情報をより高精度に取得できる。
【０１５４】  分注システム１は、ロボット１０による分注作業用の基準データを登録するためのコンソール２００と、基準データが未登録である場合に、分注器３０の先端部３０ａがカメラ４３の視野内に入った後にロボット１０を停止させ、当該基準データの登録後にロボット１０の動作を再開させる割込部１１２と、割込部１１２がロボット１０を停止させているときに、基準データの設定用の画面をコンソール２００に表示し、コンソール２００から基準データを取得して登録する基準データ登録部１１３と、を更に備えてもよい。この場合、ロボット１０の動作中においても、次に実行する分注作業用の基準データが未登録である場合には、割込部１１２によってロボット１０の動作が一時中断され、基準データ登録部１１３により基準データが登録された後にロボット１０の動作が再開される。このため、予め基準データの登録作業を行っていなかったとしても、ロボット１０の動作中に適宜登録できる。従って、ロボット１０の動作プログラムを容易に構築できる。但し、このような登録機能を備えることは必須ではない。
【０１５５】  分注システム１は、複数種類の分注作業を含むロボット１０の作業工程を設定する工程設定部１１１を更に備えてもよい。割込部１１２は、基準データが未登録である場合にロボット１０を停止させることを分注作業ごとに実行し、基準データ登録部１１３は、割込部１１２がロボット１０を停止させる度に、次に実行予定の分注作業に対応する基準データを取得して登録してもよい。この場合、複数種類の分注作業を含む動作プログラムを構築する場合であっても、分注作業ごとの基準データをロボット１０の動作中に適宜設定できる。
【０１５６】  基準データ登録部１１３は、基準データとして、分注器３０の先端部３０ａの画像パターンを登録し、画像処理部１２０は、分注器３０の先端部３０ａの画像パターンに基づいて分注器３０の先端部３０ａの位置情報を取得してもよい。この場合、パターンマッチングにより、先端部３０ａの位置情報を容易且つ迅速に取得できる。
【０１５７】  基準データ登録部１１３は、液体Ｃ１外における分注器３０の先端部３０ａの画像パターンと、液体Ｃ１中における分注器３０の先端部３０ａの画像パターンとを登録してもよい。この場合、液体Ｃ１外における画像パターンと、液体Ｃ１内における画像パターンとを使い分けることで、先端部３０ａの位置情報の精度を向上させることができる。
【０１５８】  基準データ登録部１１３は、基準データとして、液体Ｃ１外における分注器３０の先端部３０ａを上記画像内で探索するための第一の解析領域と、液面ＳＦ１を上記画像内で探索するための第二の解析領域と、境界部ＢＤ１を上記画像内で探索するための第三の解析領域とを更に登録してもよい。画像処理部１２０は、第一又は第二の解析領域内から分注器３０の先端部３０ａの位置情報を取得し、第二の解析領域内から液面ＳＦ１の位置情報を取得し、第三の解析領域内から境界部ＢＤ１の位置情報を取得してもよい。この場合、位置情報の探索領域を制限することで、処理の更なる高速化及び位置情報の更なる高精度化を図ることができる。
【０１５９】  ラック４０は、ステージ４１に固定され、容器９０を保持する容器保持部４４と、容器９０を撮像可能な位置にてステージ４１に固定されたカメラ４３とを備える。
【０１６０】  このようなラック４０によれば、ステージ４１を傾けることで、容器９０とカメラ４３とを共に傾けることができる。このため、容器９０を傾ける作業を伴う分注作業においても、視野内における容器９０の配置を一定に保つことができる。また、容器９０及びカメラ４３の間の距離が安定するので、画像のピンボケが抑制される。これらの作用により、分注に必要な情報を画像処理により取得する際に、取得結果の信頼性が高められる。従って、ラック４０を用いて得られた画像を処理して得られた情報を、分注作業用の装置（例えばロボット１０及び分注器３０）の制御に利用することで、より確実な分注作業を実行可能な分注システムを構築できる。
【０１６１】  ラック４０は、容器保持部４４とカメラ４３とが並ぶ方向に沿う第一軸線まわりに回転可能となるようにステージ４１を保持するステージ保持部５０を更に備えてもよい。この場合、第一軸線まわりに傾く容器９０を含む画像が第一軸線に沿う視線で撮像される。このため、容器９０が傾いた状態においても、液面ＳＦ１の画像が概ね一本の線状に保たれるので、液面ＳＦ１の画像認識が容易である。従って、画像処理による情報取得結果の信頼性が更に高められるので、より確実な分注作業を実行可能な分注システムを構築できる。
【０１６２】  ラック４０は、容器９０に光を照射可能な位置にてステージ４１に固定されたライト４５を更に備えてもよい。この場合、ステージ４１を傾けることで、容器９０及びカメラ４３と共にライト４５も傾けることができる。このため、容器９０を傾ける作業を伴う分注作業においても、容器９０の照明状態を一定に保つことができる。また、容器９０及びカメラ４３に対するライト４５の配置が安定するので、画像内の明度分布が安定する。これらの作用により、画像処理による情報取得結果の信頼性が更に高められる。従って、より確実な分注作業を実行可能な分注システムを構築できる。
【０１６３】  容器保持部４４は、カメラ４３とライト４５との間に位置していてもよい。この場合、容器９０外面における反射光の影響が抑制されるので、画像処理による情報取得結果の信頼性が更に高められる。従って、より確実な分注作業を実行可能な分注システムを構築できる。
【０１６４】  なお、ラック４０が有用となる分注システムは、必ずしも上述した分注システム１に限られない。少なくとも、ラック４０と、ロボットと、コントローラとを備え、コントローラが、容器９０を搬送し、容器保持部４４に保持させるようにロボット１０を制御することと、カメラ４３により撮像された画像に基づいて液面ＳＦ１の位置情報を取得することと、ラック４０を傾けるようにロボット１０を制御することと、液体Ｃ１を分注器３０内に吸引する際に、液面ＳＦ１の位置情報に基づいて分注器３０を下降させるようにロボット１０を制御することと、を実行するように構成された分注システムであれば、ラック４０を有効に活用できる。
【０１６５】  ラック４０がステージ保持部５０を有する場合には、コントローラにより、第一軸線まわりにラック４０を傾けるようにロボット１０を制御することで、ラック４０を更に有効に活用できる。
【０１６６】２．  ラックの変形例  ラックは、ステージに固定され、分注対象の液体を収容する容器を保持する容器保持部と、容器を撮像可能な位置にてステージに固定されたカメラと、を備えていればどのようなものであってもよいので、その具体的な構成は上述したラック４０として例示したものに限られない。以下、図２４〜図２７を参照し、ラックの変形例を説明する。
【０１６７】  図２４〜図２７に示すラック４０Ａは、ラック４０の容器保持部４４、ステージ保持部５０及び角度保持機構６０を、容器保持部４４Ａ、ステージ保持部５０Ａ及び角度保持機構６０Ａにそれぞれ置き換えたものである。
【０１６８】２．１  容器保持部  容器保持部４４Ａは、第一ホルダ７０Ａ、第二ホルダ７０Ｂ及び弾性部材７８Ａ，７８Ｂを有する。以下、第一ホルダ７０Ａ、第二ホルダ７０Ｂ及び弾性部材７８Ａ，７８Ｂの説明における「上下」は、ステージ４１の上面を水平にした場合の上下を意味する。
【０１６９】（１）  第一ホルダ及び第二ホルダ  第一ホルダ７０Ａ及び第二ホルダ７０Ｂは、カメラ４３の中心軸ＣＬ２を挟むように位置し、互いに近接して容器９０を挟むように構成されている。例えばステージ４１の上面には、二本のガイド７１Ａ，７１Ｂが設けられており、第一ホルダ７０Ａはガイド７１Ａに取り付けられ、第二ホルダ７０Ｂはガイド７１Ｂに取り付けられている。ガイド７１Ａ，７１Ｂは、中心軸ＣＬ２に沿う方向に並んでおり、それぞれ中心軸ＣＬ２に直交する方向に延びている。鉛直上方から見て、ガイド７１Ａは中心軸ＣＬ２の一方側に位置し、ガイド７１Ｂは中心軸ＣＬ２の他方側に位置する。
【０１７０】  第一ホルダ７０Ａは、スライドブロック７２Ａと、スライド板７３Ａと、柱状部７４Ａと、接触部７５Ａとを有する。スライドブロック７２Ａは、ガイド７１Ａ上に設けられており、ガイド７１Ａに沿って移動可能である。スライドブロック７２Ａは、例えば複数のボールを介してガイド７１Ａに取り付けられている。スライド板７３Ａは、スライドブロック７２Ａ上に設けられており、中心軸ＣＬ２に沿う方向においてガイド７１Ｂ側に張り出している。
【０１７１】  柱状部７４Ａは、スライド板７３Ａの上面から突出している。例えば柱状部７４Ａは、中心軸ＣＬ２に比べ高い位置まで突出している。柱状部７４Ａは、スライド板７３Ａのうちガイド７１Ｂ側に張り出した部分の上に位置している。
【０１７２】  接触部７５Ａは、柱状部７４Ａの上部に設けられている。接触部７５Ａは、柱状部７４Ａの上部において、中心軸ＣＬ２側に突出している。接触部７５Ａの外面うち、中心軸ＣＬ２側の面には、鉛直方向に沿う溝７５ａが形成されている。
【０１７３】  第二ホルダ７０Ｂは、スライドブロック７２Ｂと、スライド板７３Ｂと、柱状部７４Ｂと、溝７５ｂとを有する。スライドブロック７２Ｂは、ガイド７１Ｂ上に設けられており、ガイド７１Ｂに沿って移動可能である。スライドブロック７２Ｂは、例えば複数のボールを介してガイド７１Ｂに取り付けられている。スライド板７３Ｂは、スライドブロック７２Ｂ上に設けられており、中心軸ＣＬ２に沿う方向においてガイド７１Ａ側に張り出している。
【０１７４】  柱状部７４Ｂは、スライド板７３Ｂの上面から突出している。例えば柱状部７４Ｂは、中心軸ＣＬ２に比べ高い位置まで突出している。柱状部７４Ｂは、スライド板７３Ｂのうちガイド７１Ａ側に張り出した部分の上に位置しており、中心軸ＣＬ２を挟んで柱状部７４Ａに対向する。
【０１７５】  接触部７５Ｂは、柱状部７４Ｂの上部に設けられている。接触部７５Ｂは、柱状部７４Ｂの上部において、中心軸ＣＬ２側に突出している。接触部７５Ｂの外面うち、中心軸ＣＬ２側の面には、鉛直方向に沿う溝７５ｂが形成されている。
【０１７６】  以上の構成により、第一ホルダ７０Ａは、中心軸ＣＬ２に対して一方側から近接又は離間可能であり、第二ホルダ７０Ｂは、中心軸ＣＬ２に対して第一ホルダ７０Ａの逆側から近接又は離間可能である。第一ホルダ７０Ａ及び第二ホルダ７０Ｂがそれぞれ中心軸ＣＬ２に対して近接又は離間するのに伴い、接触部７５Ａ，７５Ｂが互いに近接又は離間する。これにより、接触部７５Ａ，７５Ｂ同士の間に容器９０を挟むことが可能である。接触部７５Ａ，７５Ｂにより挟まれた容器９０の側壁９１は、溝７５ａ，７５ｂに沿う。これにより、側壁９１がステージ４１の上面に対して垂直になる。
【０１７７】  なお、接触部７５Ａ，７５Ｂは、柱状部７４Ａ，７４Ｂとそれぞれ一体的に形成されていてもよいし、別体として形成されて柱状部７４Ａ，７４Ｂにそれぞれ固定されていてもよい。容器９０の損傷をより確実に防止する観点で、接触部７５Ａ，７５Ｂは、柱状部７４Ａ，７４Ｂに比べて柔らかい材料により構成されていてもよい。例えば、柱状部７４Ａ，７４Ｂが金属材料で構成される場合に、接触部７５Ａ，７５Ｂは樹脂材料により構成されていてもよい。
【０１７８】  このような容器保持部４４Ａによれば、カメラ４３の視野内に容器９０を簡単な手順で正確に保持できる。例えば、弾性部材７８Ａ，７８Ｂの反発力で接触部７５Ａ，７５Ｂが互いに近接した状態にて、溝７５ａ，７５ｂの間に上方から容器９０の底部９２を挿入し、そのまま容器９０を下方に押し込んで側壁９１を接触部７５Ａ，７５Ｂの間に配置するのみで、容器保持部４４Ａに容器９０を保持させることができる。
【０１７９】（２）弾性部材  弾性部材７８Ａ、７８Ｂは、第一ホルダ７０Ａ及び第二ホルダ７０Ｂを互いに近接させるように反発力を生じる。第一ホルダ７０Ａのスライド板７３Ａのうち、ガイド７１Ｂ側に張り出した部分には、ステージ４１側に突出する凸部７６Ａが形成されている。ステージ４１の上面には、中心軸ＣＬ２に直交する方向において第二ホルダ７０Ｂの逆側から凸部７６Ａに対向する凸部７７Ａが形成されている。弾性部材７８Ａは、例えばコイルバネであり、圧縮された状態で凸部７６Ａ，７７Ａの間に配置されている。これにより、弾性部材７８Ａの反発力は、第一ホルダ７０Ａに対して第二ホルダ７０Ｂ側に作用する。
【０１８０】  第二ホルダ７０Ｂのスライド板７３Ｂのうち、ガイド７１Ａ側に張り出した部分には、ステージ４１側に突出する凸部７６Ｂが形成されている。ステージ４１の上面には、中心軸ＣＬ２に直交する方向において第一ホルダ７０Ａの逆側から凸部７６Ｂに対向する凸部７７Ｂが形成されている。弾性部材７８Ｂは、例えばコイルバネであり、圧縮された状態で凸部７６Ｂ，７７Ｂの間に配置されている。これにより、弾性部材７８Ｂの反発力は、第二ホルダ７０Ｂに対して第一ホルダ７０Ａ側に作用する。
【０１８１】（３）リンク機構  ラック４０Ａは、リンク機構８０を更に有してもよい。リンク機構８０は、互いに近接又は離間する際の第一ホルダ７０Ａ及び第二ホルダ７０Ｂの移動量が等しくなるように、第一ホルダ７０Ａ及び第二ホルダ７０Ｂを連動させる。例えばリンク機構８０は、ピン８１Ａ，８１Ｂ及びリンク８３を有する。
【０１８２】  ピン８１Ａ，８１Ｂを設けるために、上述したスライド板７３Ａ，７３Ｂは、それぞれ中心軸ＣＬ２側にも張り出している。ピン８１Ａは、スライド板７３Ａのうち中心軸ＣＬ２側に張り出した部分の上面から突出している。ピン８１Ａは、柱状部７４Ａに比べてガイド７１Ａ側に位置している。ピン８１Ｂは、スライド板７３Ｂのうち中心軸ＣＬ２側に張り出した部分の上面から突出している。ピン８１Ｂは、柱状部７４Ｂに比べてガイド７１Ｂ側に位置している。
【０１８３】  リンク８３は、鉛直な軸線回りに回転自在となるようにステージ４１上に取り付けられている。リンク８３の回転中心は、ピン８１Ａ，８１Ｂから等距離の位置を通り、中心軸ＣＬ２に交わる。リンク８３は、ピン８１Ａ，８１Ｂの間に架け渡されている。具体的にリンク８３の両端部には、鉛直上方から見てＵ字状の凹部８３ａ，８３ｂがそれぞれ形成されており、ピン８１Ａが凹部８３ａ内に収容され、ピン８１Ｂが凹部８３ｂ内に収容されている。
【０１８４】  この機構によれば、第一ホルダ７０Ａ及び第二ホルダ７０Ｂの一方が中心軸ＣＬ２に対して近接又は離間するように移動すると、これに応じてリンク８３が回転し、リンク８３の回転に応じて第一ホルダ７０Ａ及び第二ホルダ７０Ｂの他方が逆向きに移動する。リンク８３の回転中心は、ピン８１Ａ，８１Ｂから等距離の位置を通っているので、第一ホルダ７０Ａ及び第二ホルダ７０Ｂの一方の移動量と、第一ホルダ７０Ａ及び第二ホルダ７０Ｂの他方の移動量とは等しくなる。
【０１８５】２．２  ステージ保持部  ステージ保持部５０Ａは、容器保持部４４とカメラ４３とが並ぶ方向に沿う軸線Ａｘ２（第一軸線）まわりに回転可能となるようにステージ４１を保持する。軸線Ａｘ２は、カメラ４３の中心軸ＣＬ２に平行であってもよく、中心軸ＣＬ２とステージ４１との間（図２７の領域Ｒ１参照）に位置してもよい。軸線Ａｘ２は、鉛直上方から見て中心軸ＣＬ２と重なる位置にあってもよい。
【０１８６】  例えばステージ保持部５０Ａは、支持板５１と、ブラケット５３Ａ，５３Ｂと、軸５４Ａ，５４Ｂと、ブラケット５５Ａ，５５Ｂとを有する。
【０１８７】  ブラケット５３Ａ，５３Ｂは、軸線Ａｘ２が延びる方向において、ステージ４１の両端部にそれぞれ設けられている。ブラケット５３Ａ，５３Ｂは、それぞれステージ４１の上面から突出している。軸５４Ａは、ブラケット５３Ａからブラケット５３Ｂの逆側に突出している。軸５４Ｂは、ブラケット５３Ｂからブラケット５３Ａの逆側に突出している。すなわち、軸５４Ａ，５４Ｂは互いに逆向きに突出している。軸５４Ａ，５４Ｂは、互いに同軸であり、これらの中心軸は軸線Ａｘ２に一致している。
【０１８８】  ブラケット５５Ａ，５５Ｂは、軸線Ａｘ２が延びる方向において、支持板５１の両端部にそれぞれ設けられている。ブラケット５５Ａ，５５Ｂは、それぞれ支持板５１の上面から突出している。ブラケット５５Ａ，５５Ｂは、軸５４Ａ，５４Ｂをそれぞれ回転自在に保持する。例えばブラケット５５Ａ，５５Ｂは、図２６に示すように、軸受孔５５ａ，５５ｂをそれぞれ有する。ブラケット５５Ａはブラケット５３Ａに対向し、その軸受孔５５ａに軸５４Ａを受け入れる。ブラケット５５Ｂはブラケット５３Ｂに対向し、その軸受孔５５ｂに軸５４Ｂを受け入れる。これにより、ステージ４１が軸線Ａｘ２まわりに回転自在となるように保持される。
【０１８９】２．３  角度保持機構  角度保持機構６０Ａは、外力によるトルクが作用した場合にステージ４１の回転を許容し、外力によるトルクが作用しない場合にステージ４１の回転を規制する。角度保持機構６０Ａは、例えば摩擦負荷６３Ａ，６３Ｂを有する。摩擦負荷６３Ａは、軸５４Ａの周囲においてブラケット５３Ａ，５５Ａの間に介在し、これらの間に摩擦トルクを発生させる。摩擦負荷６３Ｂは、軸５４Ｂの周囲においてブラケット５３Ｂ，５５Ｂの間に介在し、これらの間に摩擦トルクを発生させる。摩擦負荷６３Ａ，６３Ｂの静摩擦トルクは、その合計値が、軸線Ａｘ２まわりに回転可能な部分の自重によるトルクを上回るように設定されている。
【０１９０】  角度保持機構６０Ａは、外力によるトルクが作用した場合にステージ４１の回転を許容し、外力によるトルクが作用しない場合にステージ４１の回転を規制するものであればどのようなものであってもよく、その具体的な構成は摩擦負荷６３Ａ，６３Ｂに限られない。例えば角度保持機構６０Ａは、トルクダイオード（登録商標）により構成されてもよい。
【０１９１】２．４  ハンドル  ラック４０Ａは、第一ハンドル５６Ａ及び第二ハンドル５６Ｂを更に有してもよい。第一ハンドル５６Ａは、軸線Ａｘ２が延びる方向におけるステージ４１の一端側に設けられ、ステージ４１にトルクを伝達可能である。第二ハンドル５６Ｂは、軸線Ａｘ２が延びる方向におけるステージ４１の他端側に設けられ、ステージ４１にトルクを伝達可能である。
【０１９２】  例えば第一ハンドル５６Ａは、ブラケット５３Ａとの間にブラケット５５Ａを挟むように配置され、ブラケット５５Ａを貫通した軸５４Ａの端部に固定されている。第一ハンドル５６Ａには、ブラケット５５Ａの逆側に突出した凸部５７Ａが設けられている。凸部５７Ａの中心軸線は、軸５４Ａの中心軸線（軸線Ａｘ２）に対してずれている。
【０１９３】  第二ハンドル５６Ｂは、ブラケット５３Ｂとの間にブラケット５５Ｂを挟むように配置され、ブラケット５５Ｂを貫通した軸５４Ｂの端部に固定されている。第二ハンドル５６Ｂには、ブラケット５５Ｂの逆側に突出した凸部５７Ｂが設けられている。凸部５７Ｂの中心軸線は、軸５４Ｂの中心軸線（軸線Ａｘ２）に対してずれている。
【０１９４】  このような構成によれば、図２８に示すように、凸部５７Ａ，５７Ｂのいずれか一方を把持し、軸線Ａｘ２まわりに移動させるようにロボット１０を制御することにより、ステージ４１にトルクを伝達することが可能である。
【０１９５】２．５  ラックの変形例の効果  以上、ラック４０Ａにおいて例示したように、ラック４０Ａの第一軸線（軸線Ａｘ２）は、カメラ４３の中心軸ＣＬ２に平行であり、カメラ４３の中心軸ＣＬ２とステージ４１との間に位置してもよい。この場合、第一軸線がラック４０Ａの外縁に位置する場合に比べ、第一軸線まわりに回転する部分の回転半径が小さくなる。このため、ラックの占有面積を縮小できる。
【０１９６】  ラック４０Ａは、外力によるトルクが作用した場合にステージ４１の回転を許容し、外力によるトルクが作用しない場合にステージ４１の回転を規制する角度保持機構６０Ａを更に備えてもよい。この場合、ステージ４１の傾きを任意の角度で保持できる。このため、分注時の容器の傾き角度をより細やかに調節し、より確実な分注作業を実行することができる。
【０１９７】  第一軸線がカメラ４３の中心軸ＣＬ２とステージ４１との間に位置する構成において角度保持機構６０Ａを採用すると、更に次の効果が得られる。すなわち、第一軸線がカメラ４３の中心軸ＣＬ２とステージ４１との間に位置する場合、第一軸線がラック４０Ａの外縁に位置する場合に比べ、第一軸線まわりに回転する部分の自重によるモーメントが小さくなる。このため、外力によるトルクが作用しない場合においてステージ４１の回転を規制するのに必要な保持力が小さくなるので、角度保持機構６０Ａの小型化が可能となる。
【０１９８】  ラック４０Ａは、第一軸線が延びる方向におけるステージ４１の一端側に設けられ、ステージ４１にトルクを伝達可能な第一ハンドル５６Ａと、第一軸線が延びる方向におけるステージ４１の他端側に設けられ、ステージ４１にトルクを伝達可能な第二ハンドル５６Ｂと、を更に有してもよい。この場合、第一軸線が延びる方向の両側からステージ４１にトルクを付加できる。このため、分注作業用の装置（例えばロボット１０）によりステージ４１を傾ける際に、当該装置の動作量を削減し、分注作業の効率を高めることができる。
【０１９９】  容器保持部４４Ａは、カメラ４３の中心軸ＣＬ２を挟むように位置し、互いに近接して容器を挟むように構成された第一ホルダ７０Ａ及び第二ホルダ７０Ｂと、第一ホルダ７０Ａ及び第二ホルダ７０Ｂを互いに近接させるように反発力を生じる弾性部材７８Ａ，７８Ｂとを更に有してもよい。この場合、様々な太さの容器９０を共通の容器保持部４４Ａによって保持できる。また、弾性部材の反発力により容器９０を挟み込むことにより、カメラ４３の視野内における容器９０の位置を、容器９０の太さによらず安定させることができる。従って、画像処理による情報取得結果の信頼性を損なうことなく、分注システムの汎用性を高めることができる。
【０２００】  ラック４０Ａは、互いに近接又は離間する際の第一ホルダ７０Ａ及び第二ホルダ７０Ｂの移動量が等しくなるように、第一ホルダ７０Ａ及び第二ホルダ７０Ｂを連動させるリンク機構８０を更に有してもよい。この場合、カメラ４３の視野内における容器９０の位置を更に安定させることができる。従って、画像処理による情報取得結果の信頼性を更に高めることができる。
【０２０１】３．  第二実施形態  第二実施形態に係る分注システム１Ａは、分注システム１のコントローラ１００をコントローラ１００Ａに置き換えたものである。
【０２０２】３．１  コントローラ  図２９に示すように、コントローラ１００Ａは、コントローラ１００のプロトコル構築部１１０、画像処理部１２０及びロボット制御部１３０をプロトコル構築部１１０Ａ、画像処理部１２０Ａ及びロボット制御部１３０Ａにそれぞれ置き換えると共に、解析領域設定部１７０を付加したものである。コントローラ１００Ａは、コントローラ１００において例示したものと同様のハードウェアにより構成可能である。このため、ハードウェア構成の説明は省略し、機能モジュールのみについて説明する。
【０２０３】（１）プロトコル構築部  プロトコル構築部１１０Ａは、複数種類の分注作業を含むロボット１０の作業工程を設定して工程記憶部１５１に登録する。例えばプロトコル構築部１１０Ａは、プロトコル構築部１１０と同様に工程設定部１１１を有するが、割込部１１２、工程確認部１１４及び基準データ登録部１１３を有しない。このため、プロトコル構築部１１０Ａは、上述した基準データの登録を行わない。
【０２０４】（２）解析領域設定部  解析領域設定部１７０は、容器９０内に収容された液体Ｃ１及び非分注対象物Ｃ２の量を示す情報に基づいて、液体Ｃ１を画像内で探索するための解析領域（本実施形態では、これを「第一の解析領域」という。）を設定する。
【０２０５】  解析領域設定部１７０は、非分注対象物Ｃ２の量を示す情報に基づいて、境界部ＢＤ１を画像内で探索するための解析領域（本実施形態では、これを「第二の解析領域」という。）を更に設定してもよい。
【０２０６】（３）画像処理部  図３０に示すように、画像処理部１２０Ａは、カメラ４３により撮像された画像に基づいて、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報と、先端部３０ａの位置情報とを取得する。例えば画像処理部１２０Ａは、画像取得部１２１と、第一処理部１２２と、第二処理部１２３と、出力部１２４と、参照情報記憶部１２５とを有する。
【０２０７】  画像取得部１２１は、カメラ４３により撮像された画像を取得する。
【０２０８】  第一処理部１２２は、画像取得部１２１により取得された画像に基づいて、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報と、先端部３０ａの位置情報とを取得する。例えば第一処理部１２２は、解析領域設定部１７０により設定された第一の解析領域内から液面ＳＦ１の位置情報を取得し、解析領域設定部１７０により設定された第二の解析領域内から境界部ＢＤ１の位置情報を取得する。
【０２０９】  第一処理部１２２は、液面ＳＦ１の位置情報を取得した後の画像に基づいて、液面ＳＦ１の位置情報を更新してもよい。例えば第一処理部１２２は、所定の周期で画像取得部１２１から画像を取得し、新たに取得した画像に基づいて液面ＳＦ１の位置情報を更新する。
【０２１０】  第一処理部１２２は、境界部ＢＤ１の位置情報を取得した後の画像に基づいて、境界部ＢＤ１の位置情報を更新してもよい。例えば第一処理部１２２は、所定の周期で画像取得部１２１から画像を取得し、新たに取得した画像に基づいて境界部ＢＤ１の位置情報を更新する。
【０２１１】  第一処理部１２２は、先端部３０ａを含まない画像（以下、「第一画像」という。）と、先端部３０ａを含む画像（以下、「第二画像」という。）との差分に基づいて、先端部３０ａの位置情報を取得してもよい。
【０２１２】  第一処理部１２２は、先端部３０ａの位置情報を取得した後の画像に基づいて、先端部３０ａの位置情報を更新してもよい。例えば第一処理部１２２は、所定の周期で画像取得部１２１から画像を取得し、新たに取得した画像に基づいて先端部３０ａの位置情報を更新する。
【０２１３】  この場合、第一処理部１２２は、第一画像と第二画像との差分に基づいて、先端部３０ａの画像パターンを取得し、その後の先端部３０ａの位置情報を当該画像パターンに基づいて取得してもよい。
【０２１４】  第二処理部１２３は、先端部３０ａの位置情報が第一処理部１２２により取得された後の先端部３０ａの位置変化を推定し、この位置変化に基づいて先端部３０ａの位置情報を更新する。
【０２１５】  第一処理部１２２は、先端部３０ａが液面ＳＦ１よりも上方に位置する際に、画像取得部１２１により取得された画像に基づいて先端部３０ａの位置情報を取得し、第二処理部１２３は、当該位置情報が第一処理部１２２により取得された後の前記位置変化を推定してもよい。
【０２１６】  第二処理部１２３は、液面ＳＦ１の位置情報が第一処理部１２２により取得された後の液面ＳＦ１の位置変化を推定し、この位置変化に基づいて液面ＳＦ１の位置情報を更新してもよい。
【０２１７】  出力部１２４は、液面ＳＦ１、境界部ＢＤ１及び先端部３０ａの最新の位置情報を第一処理部１２２及び第二処理部１２３から取得し、出力する。
【０２１８】  参照情報記憶部１２５は、第一処理部１２２による処理で得られたデータのうち、後の処理において用いられるデータを記憶する。
【０２１９】  画像処理部１２０Ａは、処理モード設定部１２６を更に有してもよい。処理モード設定部１２６は、第一処理部１２２により先端部３０ａの位置情報を更新するか（以下、「第一処理モード」という。）、第二処理部１２３により先端部３０ａの位置情報を更新するか（以下、「第二処理モード」という。）を液体Ｃ１の種類に応じて設定する。すなわち画像処理部１２０Ａは、先端部３０ａの位置情報を取得した後の画像に基づいて先端部３０ａの位置情報を更新することと、上記位置変化に基づいて先端部３０ａの位置情報を更新することとを、液体Ｃ１の種類に応じて選択して実行してもよい。
【０２２０】  処理モード設定部１２６は、第一処理部１２２により液面ＳＦ１の位置情報を更新するか、第二処理部１２３により液面ＳＦ１の位置情報を更新するかを設定してもよい。すなわち画像処理部１２０Ａは、液面ＳＦ１の位置情報を取得した後の画像に基づいて、液面ＳＦ１の位置情報を更新することと、上記位置変化に基づいて液面ＳＦ１の位置情報を更新することとを、液体Ｃ１の種類に応じて選択して実行してもよい。
【０２２１】  更に処理モード設定部１２６は、第一処理部１２２により境界部ＢＤ１の位置情報を更新するか否かを液体Ｃ１の種類に応じて設定してもよい。すなわち画像処理部１２０Ａは、境界部ＢＤ１の位置情報を取得した後の画像に基づいて、境界部ＢＤ１の位置情報を更新することを実行するか否かを液体Ｃ１の種類に応じて選択してもよい。
【０２２２】（４）ロボット制御部  ロボット制御部１３０Ａは、ロボット制御部１３０に副制御部１３９を付加したものである。副制御部１３９は、先端部３０ａ、液面ＳＦ１及び境界部ＢＤ１の少なくともいずれかについて、画像処理部１２０から位置情報が得られない場合に、降下制御部１３３に代わって、予め設定されたパターンに基づいてロボット１０を制御する、
【０２２３】３．２  分注制御の実行手順（１）全体構成  続いて、制御方法の一例として、コントローラ１００Ａにより実行される分注制御手順について説明する。
【０２２４】  図３１は、分注作業の一例として、容器９０内の液体Ｃ１を他の容器９０に移し替える際の制御手順を示している。図３１に示すように、コントローラ１００Ａは、まずステップＳ６０１を実行する。ステップＳ６０１では、ステップＳ３０１と同様に、容器配置制御部１３１が、容器９０を容器保持部４４に配置するようにアーム１３Ｂを制御する。更にステップＳ６０１では、解析領域設定部１７０が第一及び第二の解析領域を取得し、処理モード設定部１２６が第一処理モード及び第二処理モードのいずれか一方を選択する。
【０２２５】  解析領域設定部１７０は、容器９０内に収容された液体Ｃ１及び非分注対象物Ｃ２の量を示す情報に基づいて第一の解析領域を設定する。例えば液体Ｃ１及び非分注対象物Ｃ２の量を示す情報は、容器９０の大きさ及び形状を示す情報と併せて、工程設定部１１１により予め工程記憶部１５１に登録される。解析領域設定部１７０は、容器９０の大きさ及び形状に関する情報と、液体Ｃ１及び非分注対象物Ｃ２の量を示す情報とを工程記憶部１５１から取得し、これに基づいて容器９０内における液面ＳＦ１の位置を算出し、当該位置を含むように第一の解析領域を設定する。
【０２２６】  解析領域設定部１７０は、非分注対象物Ｃ２の量を示す情報に基づいて第二の解析領域を設定する。例えば解析領域設定部１７０は、容器９０の大きさ及び形状に関する情報と、非分注対象物Ｃ２の量を示す情報とを工程記憶部１５１から取得し、これに基づいて容器９０内における境界部ＢＤ１の位置を算出し、当該位置を含むように第二の解析領域を設定する。
【０２２７】  処理モード設定部１２６は、液体Ｃ１の種類に応じて第一処理モード及び第二処理モードのいずれか一方を選択する。例えば処理モード設定部１２６は、液体Ｃ１が、液中の先端部３０ａを画像認識可能な液体であるか否かを判定し、液中の先端部３０ａを画像認識可能な液体である場合には第一処理モードを選択し、他の場合には第二処理モードを選択する。液中に位置する先端部３０ａを画像認識可能であるか否かは、例えば液体Ｃ１の色及び光透過率等に基づいて判定可能である。液中に位置する先端部３０ａを画像認識可能であるかを液体Ｃ１の種類ごとにリスト化したテーブルを予め作成し、これを参照してもよい。
【０２２８】  次に、コントローラ１００Ａは、ステップＳ６０２〜Ｓ６０５を実行する。ステップＳ６０２では、バックライト制御部１６０がライト４５を点灯させ、画像取得部１２１がカメラ４３から画像を取得する。これにより、先端部３０ａを含まない上記第一画像が取得される。
【０２２９】  ステップＳ６０３では、ロボット制御部１３０Ａが、ステップＳ３０２と同様に、分注器３０の先端部３０ａを画像取得用の位置に配置するようにアーム１３Ａを制御する。
【０２３０】  ステップＳ６０４では、画像取得部１２１がカメラ４３から画像を取得する。これにより、先端部３０ａを含む上記第二画像が取得される。
【０２３１】  ステップＳ６０５では、第一処理部１２２が、画像取得部１２１により取得された画像に基づいて、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報と、先端部３０ａの位置情報とを取得して参照情報記憶部１２５に格納する。
【０２３２】  第一処理部１２２は、解析領域設定部１７０により設定された第一の解析領域内から液面ＳＦ１の位置情報を取得し、解析領域設定部１７０により設定された第二の解析領域内から境界部ＢＤ１の位置情報を取得する。例えば、第一処理部１２２は、第一の解析領域内を通る線状部分を検出し、その位置を液面ＳＦ１の位置情報として取得する。第一処理部１２２は、第二の解析領域内を通る線状部分を検出し、その位置を境界部ＢＤ１の位置情報として取得する。
【０２３３】  第一処理部１２２は、第一画像と第二画像との差分に基づいて、先端部３０ａの位置情報を取得する。例えば、第一処理部１２２は、第一画像と第二画像との差分を画素ごとに算出し、差分が閾値よりも大きい領域を抽出し、当該領域の位置に基づいて先端部３０ａの位置情報を取得する。第一処理部１２２は、取得した先端部３０ａの位置情報を参照情報記憶部１２５に格納する。
【０２３４】  次に、コントローラ１００ＡはステップＳ６０６を実行する。ステップＳ６０６では、液面ＳＦ１、境界部ＢＤ１及び先端部３０ａの全ての位置情報を取得できたか否かを出力部１２４が確認する。
【０２３５】  ステップＳ６０６において、全ての位置情報を取得できたと判定した場合、コントローラ１００ＡはステップＳ６０７，ステップＳ６０８を実行する。ステップＳ６０７では、分注器配置制御部１３２が、ステップＳ３０４と同様に、先端部３０ａを吸引の開始位置ＯＰ１に配置するようにアーム１３Ａを制御する。
【０２３６】  ステップＳ６０１において、上記第一処理モードが選択されている場合、第一処理部１２２は、先端部３０ａが開始位置ＯＰ１に配置された状態にて画像取得部１２１から画像を取得してこれを第二画像とし、当該第二画像と上記第一画像との差分に基づいて先端部３０ａの画像パターンを取得し、参照情報記憶部１２５に登録する。
【０２３７】  例えば第一処理部１２２は、第一画像と第二画像との差分を画素ごとに算出し、差分が閾値よりも大きい領域を抽出し、当該領域に対応する画像パターンを第二画像から切り出す。第一処理部１２２は、切り出した画像パターンを参照情報記憶部１２５に登録する。
【０２３８】  ステップＳ６０８では、分注器制御部１４０及び降下制御部１３３が、液体Ｃ１の吸引を実行するように分注器３０及びロボット１０をそれぞれ制御する。分注器制御部１４０は、液体Ｃ１を容器９０内から吸引するように分注器３０を制御する。降下制御部１３３は、液体を分注器３０内に吸引する際に、先端部３０ａの位置情報と、液面ＳＦ１の位置情報と、境界部ＢＤ１の位置情報とに基づいて、分注器３０を下降させるようにロボット１０を制御する。分注器３０の下降が完了すると、バックライト制御部１６０がライト４５を消灯させる。
【０２３９】  ステップＳ６０６において、いずれかの位置情報を取得できていないと判定した場合、コントローラ１００ＡはステップＳ６０７，ステップＳ６０８に代えてステップＳ６０９を実行する。ステップＳ６０９では、分注器制御部１４０及び副制御部１３９が、液体Ｃ１の吸引を実行するように分注器３０及びロボット１０をそれぞれ制御する。分注器制御部１４０は、液体Ｃ１を容器９０内から吸引するように分注器３０を制御する。副制御部１３９は、分注器３０を下降させるように予め設定されたパターンに基づいてロボット１０を制御する。
【０２４０】  次に、コントローラ１００Ａは、ステップＳ３０６〜Ｓ３１０と同様のステップＳ６１０〜Ｓ６１４を実行する。以上で分注作業が完了する。
【０２４１】（２）吸引制御手順  続いて、ステップＳ６０８における吸引手順について詳細に説明する。
【０２４２】  図３２に示すように、コントローラ１００Ａは、まずステップＳ７０１を実行する。ステップＳ７０１では、画像取得部１２１がカメラ４３から画像を取得する。
【０２４３】  次に、コントローラ１００ＡはステップＳ７０２を実行する。ステップＳ７０２では、第一処理部１２２及び第二処理部１２３の少なくとも一方が、液面ＳＦ１、境界部ＢＤ１及び先端部３０ａの位置情報を更新する。
【０２４４】  図３４を参照し、位置情報の更新手順の一例を示す。まずコントローラ１００Ａは、ステップＳ８０１を実行する。ステップＳ８０１では、更新対象が先端部３０ａであるか否かを第一処理部１２２が確認する。
【０２４５】  ステップＳ８０１において、更新対象が先端部３０ａであると判定した場合、コントローラ１００ＡはステップＳ８０２を実行する。ステップＳ８０２では、第一処理部１２２が、ステップＳ６０１において第一処理モードが選択されたか否かを確認する。
【０２４６】  ステップＳ８０２において、第一処理モードが選択されていると判定した場合、コントローラ１００ＡはステップＳ８０３を実行する。ステップＳ８０３では、第一処理部１２２が、最新の画像に基づいて先端部３０ａの位置情報を更新する。例えば第一処理部１２２は、ステップＳ６０７において参照情報記憶部１２５に登録された画像パターンに一致する部分を最新の画像内から抽出し、抽出した部分の位置に基づいて先端部３０ａの位置情報を更新する。
【０２４７】  ステップＳ８０２において、第二処理モードが選択されていると判定した場合、コントローラ１００ＡはステップＳ８０３の代わりにステップＳ８０４，Ｓ８０５を実行する。ステップＳ８０４では、第二処理部１２３が、ステップＳ６０５の実行後の先端部３０ａの位置変化を推定する。
【０２４８】  例えば第二処理部１２３は、ロボット１０のアクチュエータのうち、先端部３０ａの位置に影響する全てのアクチュエータについて、ステップＳ６０５の実行後の駆動量を示す情報をロボット制御部１３０Ａから取得する。その後第二処理部１２３は、上記駆動量に基づいて準運動学演算を行い、先端部３０ａの位置変化を推定する。
【０２４９】  ステップＳ８０５では、第二処理部１２３が、ステップＳ８０４において推定された位置変化に基づいて、先端部３０ａの位置情報を更新する。例えば第二処理部１２３は、ステップＳ６０５において参照情報記憶部１２５に格納された先端部３０ａの位置情報にステップＳ８０３において推定された位置変化を合算して、先端部３０ａの位置情報を更新する。
【０２５０】  ステップＳ８０１において、更新対象が液面ＳＦ１又は境界部ＢＤ１であると判定した場合、コントローラ１００Ａは、ステップＳ８０２を実行することなく処理をステップＳ８０３に進める。
【０２５１】  更新対象が液面ＳＦ１である場合、ステップＳ８０３では、第一処理部１２２が、最新の画像における第一の解析領域内から液面ＳＦ１の位置情報を新たに取得し、液面ＳＦ１の位置情報を新たに取得した情報に更新する。
【０２５２】  更新対象が境界部ＢＤ１である場合、ステップＳ８０３では、第一処理部１２２が、最新の画像における第二の解析領域内から境界部ＢＤ１の位置情報を新たに取得し、境界部ＢＤ１の位置情報を新たに取得した情報に更新する。
【０２５３】  次に、コントローラ１００ＡはステップＳ８０６を実行する。ステップＳ８０６では、液面ＳＦ１、境界部ＢＤ１及び先端部３０ａの全てについて位置情報の更新が完了したか否かを出力部１２４が確認する。
【０２５４】  ステップＳ８０６において、全位置情報の更新が完了していないと判定した場合、コントローラ１００Ａは、更新対象を変更して（ステップＳ８０７）処理をステップＳ８０１に戻す。これにより、全位置情報の更新が完了するまで位置情報の更新処理が繰り返される。
【０２５５】  ステップＳ８０６において、全位置情報の更新が完了していると判定した場合、コントローラ１００Ａは上記ステップＳ７０２を完了する。
【０２５６】  なお、図３４では、第一処理モード及び第二処理モードのいずれが選択されているかに応じて先端部３０ａの位置情報の更新手順のみを切り替える例を示したが、これに限られない。例えば第二処理部１２３は、ステップＳ６０１において第二処理モードが選択されている場合に、ステップＳ６０５の実行後の液面ＳＦ１の位置変化を推定し、この位置変化に基づいて液面ＳＦ１の位置情報を更新してもよい。
【０２５７】  例えば第二処理部１２３は、分注器３０による吸引速度を示す情報と、容器９０の大きさ及び形状に関する情報とに基づいて、液面ＳＦ１の位置変化を推定する。その後第二処理部１２３は、ステップＳ６０５において参照情報記憶部１２５に格納された液面ＳＦ１の位置情報に位置変化の推定結果を合算して、液面ＳＦ１の位置情報を更新する。分注器３０による吸引速度を示す情報は、例えば分注器制御部１４０から取得可能である。容器９０の大きさ及び形状に関する情報は、上述したように工程記憶部１５１から取得可能である。
【０２５８】  第二処理部１２３は、ステップＳ６０１において第二処理モードが選択されている場合に、境界部ＢＤ１の位置情報を更新しなくてもよい。
【０２５９】  図３２に戻り、コントローラ１００Ａは、次にステップＳ７０３を実行する。ステップＳ７０３では、ステップＳ４０４と同様に、最新の画像に基づいて、傾斜検出部１３７が境界部ＢＤ１の傾斜を検出する。ステップＳ７０３では、境界部ＢＤ１の最新の位置情報に基づいて境界部ＢＤ１の傾斜を検出してもよい。
【０２６０】  次に、コントローラ１００はステップＳ７０４を実行する。ステップＳ７０４では、ステップＳ４０５と同様に、目標位置設定部１３６が、境界部ＢＤ１の最新の位置情報に基づいて最終目標位置ＧＬ１を設定する。
【０２６１】  次に、コントローラ１００ＡはステップＳ７０５を実行する。ステップＳ７０５では、分注器制御部１４０が、容器９０内の液体Ｃ１の吸引を開始するように分注器３０を制御する。
【０２６２】  次に、コントローラ１００ＡはステップＳ７０１〜Ｓ７０３と同様のステップＳ７０６〜Ｓ７０８を実行する。
【０２６３】  次に、コントローラ１００Ａは、ステップＳ７０９を実行する。ステップＳ７０９では、ステップＳ４０９と同様に、第一モード制御部１３３ａが上記第一モードの下降制御を実行する。
【０２６４】  次に、コントローラ１００Ａは、ステップＳ７１０を実行する。ステップＳ７１０では、ステップＳ４１０と同様に、基準距離設定部１３４が基準距離ＲＦ１を設定する。
【０２６５】  次に、コントローラ１００Ａは、ステップＳ７１１を実行する。ステップＳ７１１では、ステップＳ４１１と同様に、境界監視部１３５が、境界部ＢＤ１の最新の位置情報に基づいて、境界部ＢＤ１の変化の有無を判定する。ステップＳ７１１において境界部に変化が検出されない場合、コントローラ１００は処理をステップＳ７１３に進める。
【０２６６】  ステップＳ７１１において境界部ＢＤ１に変化が検出された場合、コントローラ１００は、ステップＳ７１２を実行する。ステップＳ７１２では、ステップＳ４１２と同様に、目標位置設定部１３６が、境界部ＢＤ１の最新の位置情報に基づいて最終目標位置ＧＬ１を更新する。
【０２６７】  次に、コントローラ１００ＡはステップＳ７１３を実行する。ステップＳ７１３では、ステップＳ４１３と同様に、切替部１３３ｃが、基準距離ＲＦ１に比べ第一の残距離ＬＤ１が小さいか否かを判定する。第一の残距離ＬＤ１が基準距離ＲＦ１以上であると判定した場合、コントローラ１００Ａは処理をステップＳ７０６に戻す。これにより、第一モード制御部１３３ａによる制御が継続される。
【０２６８】  第一の残距離ＬＤ１が基準距離ＲＦ１未満であると判定した場合、コントローラ１００Ａは処理をステップＳ７１４に進める。図３３に示すように、ステップＳ７１４では、ステップＳ４１４と同様に、切替部１３３ｃが、第一モード制御部１３３ａによる制御を第二モード制御部１３３ｂによる制御に切り替える。
【０２６９】  次に、コントローラ１００ＡはステップＳ７０１〜Ｓ７０３と同様のステップＳ７１５〜Ｓ７１７を実行する。
【０２７０】  次に、コントローラ１００ＡはステップＳ７１８を実行する。ステップＳ７１８では、ステップＳ４１８と同様に、第二モード制御部１３３ｂが上記第二モードの下降制御を実行する。
【０２７１】  次に、コントローラ１００Ａは、ステップＳ７１１と同様のステップＳ７１９を実行する。ステップＳ７１９において境界部ＢＤ１に変化が検出された場合、コントローラ１００Ａは、ステップＳ７１２と同様のステップＳ７２０を実行する。
【０２７２】  次に、コントローラ１００Ａは、ステップＳ７２１を実行する。ステップＳ７２１では、ステップＳ４２１と同様に、第一の残距離ＬＤ１がゼロ以下であるか否かを第二モード制御部１３３ｂが検出する。第一の残距離ＬＤ１がゼロより大きいと判定した場合、コントローラ１００Ａは処理をステップＳ７１５に戻す。これにより、第二モード制御部１３３ｂによる制御が継続される。
【０２７３】  第一の残距離ＬＤ１がゼロ以下であると判定した場合、コントローラ１００は、ステップＳ４２２，Ｓ４２３と同様のステップＳ７２２，Ｓ７２３を実行する。以上で吸引手順が完了する。
【０２７４】３．３  第二実施形態の効果  以上、第二実施形態において例示したように、画像処理部１２０Ａは、先端部３０ａの位置情報を取得した後の先端部３０ａの位置変化を推定し、この位置変化に基づいて先端部３０ａの位置情報を更新してもよい。先端部３０ａは、液体Ｃ１中に位置する際に液面ＳＦ１及び境界部ＢＤ１に比べ画像認識し難い傾向がある一方で、その位置変化をロボット１０の状態から推定し易い。このため、先端部３０ａの位置情報を位置変化の推定により更新することで、降下制御部の制御の信頼性を高めることができる。
【０２７５】  画像処理部１２０Ａは、液面ＳＦ１の位置情報及び境界部ＢＤ１の位置情報を取得した後の画像に基づいて液面ＳＦ１の位置情報及び境界部ＢＤ１の位置情報を更新してもよい。液面ＳＦ１及び境界部ＢＤ１は、その位置変化をロボットの状態からは推定し難い一方で、液体Ｃ１中に位置する先端部３０ａに比べ画像認識し易い傾向がある。このため、先端部３０ａについては位置情報を推定により更新し、液面ＳＦ１及び境界部ＢＤ１については画像に基づいて位置情報を更新することで、降下制御部の制御の信頼性を更に高めることができる。
【０２７６】  画像処理部１２０Ａは、先端部３０ａが液面ＳＦ１よりも上方に位置する際に、画像に基づいて先端部３０ａの位置情報を取得し、当該情報を取得した後の位置変化を推定してもよい。画像内における先端部３０ａとその周囲とのコントラストは、先端部３０ａが液体内にある場合に比べ液体外にある場合の方が高くなる傾向がある。このため、液面ＳＦ１よりも上方に位置する際に、画像に基づいて先端部３０ａの位置情報を取得し、その後は位置変化の推定により先端部３０ａの位置情報を更新することで、液体Ｃ１中に位置する先端部３０ａの位置情報も高い精度で取得できる。
【０２７７】  画像処理部１２０Ａは、先端部３０ａの位置情報を取得した後の画像に基づいて先端部３０ａの位置情報を更新すること（第一処理モード）と、位置変化に基づいて先端部３０ａの位置情報を更新すること（第二処理モード）とを、液体Ｃ１の種類に応じて選択して実行してもよい。液体Ｃ１の種類は液中の物体の視認性に大きな影響を及ぼす。液体Ｃ１中における物体の視認性が高い場合には、画像に基づき先端部３０ａ位置情報を更新することで、外乱に対する適応性を高めることができる。液体Ｃ１中における物体の視認性が低い場合には、画像に基づき先端部３０ａの位置情報を更新すると制御の信頼性が低下する。そこで、液体Ｃ１の種類に応じて、第一処理モード及び第二処理モードを切り替えることで、制御の信頼性を保ちつつ、外乱に対する適応性を高めることができる。
【０２７８】  先端部３０ａ、液面ＳＦ１及び境界部ＢＤ１の少なくともいずれかについて位置情報が得られない場合に、降下制御部１３３に代わって、予め設定されたパターンに基づいてロボット１０を制御する副制御部１３９を更に備えてもよい。この場合、位置情報が得られない場合においてもロボット１０の制御を継続し、後段の処理の停滞を防止できる。
【０２７９】  画像処理部１２０Ａは、先端部３０ａを含まない画像と、先端部３０ａを含む画像との差分に基づいて、先端部３０ａの位置情報を取得してもよい。この場合、先端部３０ａの位置情報を容易な演算で取得できる。また、パターンマッチング用の画像パターンを予め登録する必要がないので、当該画像パターンの登録作業をなくして操作手順を簡素化できる。更に、登録作業者による画像パターンのばらつきを削減し、画像処理部による位置情報の取得精度のばらつきを抑制できる。
【０２８０】  画像処理部１２０Ａは、先端部３０ａを含まない画像と、先端部３０ａを含む画像との差分に基づいて、先端部３０ａの画像パターンを取得し、この画像パターンに基づいて先端部３０ａの位置情報を取得してもよい。この場合、画像の差分に基づいて画像パターンを取得した後には、先端部３０ａが画像内を移動するときにも、パターンマッチングによって先端部３０ａの位置を追跡できる。
【０２８１】  コントローラ１００Ａは、容器９０内に収容された液体Ｃ１及び非分注対象物Ｃ２の量を示す情報に基づいて、液面ＳＦ１を画像内で探索するための第一の解析領域を設定する解析領域設定部１７０を更に備えてもよい。画像処理部１２０Ａは、第一の解析領域内から液面ＳＦ１の位置情報を取得してもよい。
【０２８２】  液面ＳＦ１の位置は、容器９０内に収容された液体Ｃ１及び非分注対象物Ｃ２の量を示す情報に基づいて概ね推定可能である。そこで、当該情報に基づくことで、第一の解析領域を的確に設定できる。第一の解析領域を的確に設定して、画像内における液面ＳＦ１の探索範囲を限定することにより、誤認識の発生を抑制して液面ＳＦ１の位置情報の取得精度を高めることができる。
【０２８３】  解析領域設定部１７０を備えると、第一の解析領域を作業者が予め登録する必要がないので、操作手順を簡素化することもできる。更に、登録作業者による第一の解析領域のばらつきを削減できる。これによっても、液面ＳＦ１の位置情報の取得精度が高められる。
【０２８４】  解析領域設定部１７０は、非分注対象物Ｃ２の量を示す情報に基づいて、境界部ＢＤ１を画像内で探索するための第二の解析領域を更に設定してもよい。画像処理部１２０Ａは、第二の解析領域内から境界部ＢＤ１の位置情報を取得してもよい。
【０２８５】  境界部ＢＤ１の位置は、非分注対象物Ｃ２の量を示す情報に基づいて概ね推定可能である。そこで、当該情報に基づくことで、第二の解析領域も的確に設定できる。第二の解析領域を的確に設定して、画像内における境界部ＢＤ１の探索範囲を限定することにより、誤認識の発生を抑制して境界部ＢＤ１の位置情報の取得精度も高めることができる。
【０２８６】  第二の解析領域を作業者が予め登録する必要がないので、操作手順を更に簡素化することもできる。更に、登録作業者による第二の解析領域のばらつきを削減できる。これによっても、境界部ＢＤ１の位置情報の取得精度が高められる。
【０２８７】  コントローラ１００Ａは、ラック４０のカメラ４３により撮像された画像に基づいて、ロボット１０を基準とした先端部３０ａの位置のキャリブレーションを更に実行するように構成されていてもよい。ロボット１０を基準とした先端部３０ａの位置のキャリブレーションとは、ロボット１０の姿勢に基づいて先端部３０ａの位置を求めるのに必要なパラメータを算出することを意味する。
【０２８８】  例えば図３０に示すように、コントローラ１００Ａはキャリブレーション部１８０を更に有してもよい。キャリブレーション部１８０は、先端部３０ａの容器９０外において先端部３０ａの姿勢を変更するように副制御部１３９を介してロボット１０を制御しながら、複数の画像をカメラ４３から取得する。キャリブレーション部１８０は、取得した各画像内における先端部３０ａの位置と、各画像の取得時におけるロボット１０の姿勢とに基づいて、上記パラメータを算出する。
【０２８９】  ロボット１０を基準とした先端部３０ａの位置は、ロボット１０による分注器３０の把持状態等によってばらつき得る。これに対し、キャリブレーション部１８０により算出された上記パラメータを用いることで、ロボット１０の姿勢に基づいて先端部３０ａの位置を高精度に算出できる。そこで、コントローラ１００Ａがキャリブレーション部１８０を有する場合、第二処理部１２３は、キャリブレーション部１８０により算出されたパラメータを用いて先端部３０ａの位置変化を推定してもよい。副制御部１３９も、キャリブレーション部１８０により算出されたパラメータを用いてロボット１０を制御してもよい。
【０２９０】  このように、ラック４０のカメラ４３を上記キャリブレーションにも利用することで、システムのハードウェア構成を追加することなく、ロボット１０による分注作業の信頼性を高めることができる。
【０２９１】  以上、実施形態について説明したが、本発明は必ずしも上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変更が可能である。液体Ｃ１の吸引に際してロボット１０が分注器３０を下降させるときに、画像の取得及び各種位置情報の取得を繰り返すことは必須ではない。例えば、コントローラ１００は、画像処理部１２０により各種位置情報を一度取得した後には、当該位置情報を基準にして以降の位置情報を算出するように構成されていてもよい。分注器３０は電動ピペットに限られない。分注器３０は、例えばシリンジであってもよい。この場合、コントローラ１００は、アーム１３Ａ，１３Ｂのいずれか一方によってシリンジの外筒を把持し、アーム１３Ａ，１３Ｂの他方によってシリンジのプランジャを押し引きするようにロボット１０を制御してもよい。
【産業上の利用可能性】
【０２９２】  本開示は、分注システムに利用可能である。
【符号の説明】
【０２９３】  １，１Ａ…分注システム、１０…ロボット、３０…分注器、３０ａ…先端部、４０，４０Ａ…ラック、４１…ステージ、４３…カメラ、４４，４４Ａ…容器保持部、４５…ライト、５０，５０Ａ…ステージ保持部、５６Ａ…第一ハンドル、５６Ｂ…第二ハンドル、６０Ａ…角度保持機構、７０Ａ…第一ホルダ、７０Ｂ…第二ホルダ、７８Ａ，７８Ｂ…弾性部材、８０…リンク機構、９０…容器、９１…側壁、１００，１００Ａ…コントローラ、１１１…工程設定部、１１２…割込部、１１３…基準データ登録部、１２０，１２０Ａ…画像処理部、１３０，１３０Ａ…ロボット制御部、１３３…降下制御部、１３３ａ…第一モード制御部、１３３ｂ…第二モード制御部、１３３ｃ…切替部、１３４…基準距離設定部、１３５…境界監視部、１３６…目標位置設定部、１３７…傾斜検出部、１３８…傾動制御部、１３９…副制御部、１６０…バックライト制御部、１７０…解析領域設定部、Ａｘ１，Ａｘ２…第一軸線、ＢＤ１…境界部、Ｃ１…液体、Ｃ２…非分注対象物、ＣＬ１…中心軸線（中心位置）、ＣＬ２…カメラの中心軸、ＧＬ１…最終目標位置、ＬＰ１，ＬＰ２…線状パターン、ＲＦ１…基準距離。 
【図１】
2016181572.tif 000003
【図２】
2016181572.tif 000004
【図３】
2016181572.tif 000005
【図４】
2016181572.tif 000006
【図５】
2016181572.tif 000007
【図６】
2016181572.tif 000008
【図７】
2016181572.tif 000009
【図８】
2016181572.tif 000010
【図９】
2016181572.tif 000011
【図１０】
2016181572.tif 000012
【図１１】
2016181572.tif 000013
【図１２】
2016181572.tif 000014
【図１３】
2016181572.tif 000015
【図１４】
2016181572.tif 000016
【図１５】
2016181572.tif 000017
【図１６】
2016181572.tif 000018
【図１７】
2016181572.tif 000019
【図１８】
2016181572.tif 000020
【図１９】
2016181572.tif 000021
【図２０】
2016181572.tif 000022
【図２１】
2016181572.tif 000023
【図２２】
2016181572.tif 000024
【図２３】
2016181572.tif 000025
【図２４】
2016181572.tif 000026
【図２５】
2016181572.tif 000027
【図２６】
2016181572.tif 000028
【図２７】
2016181572.tif 000029
【図２８】
2016181572.tif 000030
【図２９】
2016181572.tif 000031
【図３０】
2016181572.tif 000032
【図３１】
2016181572.tif 000033
【図３２】
2016181572.tif 000034
【図３３】
2016181572.tif 000035
【図３４】
2016181572.tif 000036
【国際調査報告】
2016181572.tif 000037
2016181572.tif 000038