(57)【要約】【課題】ロボットの位置制御を低コストで実現できるようにする。【解決手段】収納棚と、１以上の色の色辺を組み合わせて構成され、収納棚￥における複数の位置に貼付されるとともに、複数の位置毎に異なる色の色辺の組み合わせとして構成される色辺パターンと、色辺パターンと収納棚における位置とを関係付ける位置管理情報を格納する格納部と、セルに被収納物を搬入し、又はセルから被収納物を搬出する動作を行なうロボットとともに移動しながら、色辺パターンを撮影する撮影部と、色辺パターンの画像に基づき、位置管理情報を参照することで、ロボットの位置を特定する特定部５２とを備える。【選択図】図７
2017068889.tif 000002
【特許請求の範囲】
【請求項１】
被収納物を収納するセルを複数備えた収納棚と、
１以上の色の色辺を組み合わせて構成され、前記収納棚における複数の位置に貼付されるとともに、前記複数の位置毎に異なる色の色辺の組み合わせとして構成される色辺パターンと、
前記色辺パターンと前記収納棚における位置とを関係付ける位置管理情報を格納する格納部と、
前記セルに前記被収納物を搬入し、又は前記セルから前記被収納物を搬出する動作を行なうロボットとともに移動しながら、前記色辺パターンを撮影する撮影部と、
前記撮影部によって撮影された前記色辺パターンの画像に基づき、前記位置管理情報を参照することで、前記ロボットの位置を特定する特定部と
を備えることを特徴とする、自動収納装置。
【請求項２】
前記収納棚において隣り合う複数の前記セルのグループ毎に、異なる前記色辺パターンが貼付される
ことを特徴とする、請求項１記載の自動収納装置。
【請求項３】
前記色辺パターンが、前記セルを環囲する枠形状を有し、
前記撮影部によって撮影された画像における第１の領域において前記色辺パターンの第１の色辺が検出され、
前記撮影部によって撮影された画像における第２の領域において前記色辺パターンの第２の色辺が検出された場合に、前記ロボット１１の移動を減速させる減速制御部
を備えることを特徴とする、請求項１又は２記載の自動収納装置。
【請求項４】
前記撮影部によって撮影された画像における第１の領域において前記色辺パターンの第１の色辺が検出され、
前記撮影部によって撮影された画像における第２の領域において前記色辺パターンの第２の色辺が検出された後、
前記撮影部によって撮影された画像における第３の領域において前記色辺パターンの第３の色辺が検出された場合に、前記ロボットの移動を停止させる停止制御部
を備えることを特徴とする、請求項３記載の自動収納装置。
【請求項５】
被収納物を収納するセルを複数備えた収納棚と、
１以上の色の色辺を組み合わせて構成され、前記収納棚における複数の位置に貼付されるとともに、前記複数の位置毎に異なる色の色辺の組み合わせとして構成される色辺パターンと、
前記色辺パターンと前記収納棚における位置とを関係付ける位置管理情報を格納する格納部と、
前記セルに前記被収納物を搬入し、又は前記セルから前記被収納物を搬出する動作を行なうロボットとともに移動しながら、前記色辺パターンを撮影する撮影部と、をそなえた自動収納装置において、
前記撮影部によって撮影された画像において、前記色辺パターンを検出する処理と、
検出した前記色辺パターンに基づいて、前記位置管理情報を参照することで、前記ロボットの位置を特定する処理と
を備えることを特徴とする、位置制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動収納装置および位置制御方法に関する。
【背景技術】
【０００２】
磁気テープカートリッジや光ディスクカートリッジ等の媒体カートリッジ（記録媒体）を複数収納するライブラリ装置が知られている。ライブラリ装置では、筐体内部に設けられた複数の収納セルに媒体カートリッジがセル単位で格納される。
また、ライブラリ装置は、媒体を搬送するロボットを備え、このロボットを使用して、例えば、媒体を収納する収納セルと、媒体に対してデータのリード／ライトを行なうドライブ装置との間での媒体を搬送する。
【０００３】
このようなライブラリ装置におけるロボットの位置制御手法として、ロボットの駆動手段として備えられるモータにエンコーダを取り付け、モータの回転数（移動距離）と回転方向とを制御することで、ロボットの位置付けが行なわれている。
また、他の位置制御手法として、２次元カメラを搭載した移動可能な機構と、この機構を駆動する駆動手段（ＤＣ（Direct Current）モータやステッピングモータ等）とを備え、機構を移動させながら、目的とする位置にある目印や目標物をカメラで認識することで、特定の位置に位置付けすることが考えられる。なお、目印や目標物としては、例えば、絵や数字、文字等を用いることができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−３１７８７号公報
【特許文献２】特開２０００−１８２３０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述の如き従来の位置制御手法においては、モータにエンコーダを取り付けることで、エンコーダの部品費や制御回路が必要であり製造コストが上昇する。また、エンコーダを取り付けるためのスペースも必要となり、装置を小型化する上での妨げとなる。
また、エンコーダを使用する場合には、起動時に、駆動機構において基準位置を規定するイニシャライズ動作が必要となる。基準位置の規定は、例えば、駆動機構を基準位置に移動させて位置決めのための突き当てを行なうことにより行なわれる。そのため、駆動機構が起動完了するまでに時間がかかるという課題がある。
【０００６】
一方、移動しながら目印や目標物の認識を行なう手法においては、厳密なピント補正や、目標物を認識するためにソフトウェアでの画像処理が必要となる。ソフトウェアでの処理では、移動速度に応じて複雑な計算処理を高速で行なう必要があるため、高性能で高価なＣＰＵ（Central Processing Unit）やその周辺回路を搭載する必要がある。これにより、製造コストが上昇するという課題がある。
【０００７】
１つの側面では、本発明は、ロボットの位置制御を低コストで実現できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
このため、この自動収納装置は、１以上の色の色辺を組み合わせて構成され、前記収納棚における複数の位置に貼付されるとともに、前記複数の位置毎に異なる色の色辺の組み合わせとして構成される色辺パターンと、前記色辺パターンと前記収納棚における位置とを関係付ける位置管理情報を格納する格納部と、前記セルに前記被収納物を搬入し、又は前記セルから前記被収納物を搬出する動作を行なうロボットとともに移動しながら、前記色辺パターンを撮影する撮影部と、前記撮影部によって撮影された前記色辺パターンの画像に基づき、前記位置管理情報を参照することで、前記ロボットの位置を特定する特定部とを備える。
【発明の効果】
【０００９】
一実施形態によれば、ロボットの位置制御を低コストで実現することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態の一例としてのライブラリ装置の構成を模式的に示す図である。
【図２】実施形態の一例としてのライブラリ装置の収納棚のアクセス面を例示する図である。
【図３】カラーセル平面の他のバリエーションを示す図である。
【図４】カラーセル平面の他のバリエーションを示す図である。
【図５】実施形態の一例としてのライブラリ装置におけるブロック位置情報を例示する図である。
【図６】実施形態の一例としてのライブラリ装置に備えられる制御ボードのハードウェア構成を示すブロック図である。
【図７】実施形態の一例としてのライブラリ装置における位置制御部としての機能を説明するための図である。
【図８】（ａ），（ｂ）は実施形態の一例としてのライブラリ装置におけるカメラ画像とメモリ配置との関係を説明するための図である。
【図９】（ａ），（ｂ），（ｃ）は、揮発性メモリに格納されたカメラ画像のデータを模式的に示す図である。
【図１０】（ａ），（ｂ）は実施形態の一例としてのライブラリ装置におけるＲＧＢカラーモデルを用いた色の判断方法を例示する図である。
【図１１】実施形態の一例としてのライブラリ装置におけるカメラ画像格納領域と第１検出領域とを模式的に示す図である。
【図１２】実施形態の一例としてのライブラリ装置におけるカメラ画像格納領域と第１検出領域とを模式的に示す図である。
【図１３】実施形態の一例としてのライブラリ装置におけるカメラ画像格納領域と第１検出領域とを模式的に示す図である。
【図１４】実施形態の一例としてのライブラリ装置におけるカメラ画像格納領域と第１検出領域とを模式的に示す図である。
【図１５】実施形態の一例としてのライブラリ装置におけるカメラ画像格納領域と第１検出領域とを示す図である。
【図１６】実施形態の一例としてのライブラリ装置におけるカメラ画像格納領域と第１検出領域とを示す図である。
【図１７】実施形態の一例としてのライブラリ装置におけるカメラ画像格納領域と第２検出領域とを模式的に示す図である。
【図１８】実施形態の一例としてのライブラリ装置におけるカメラ画像格納領域と第２検出領域とを示す図である。
【図１９】実施形態の一例としてのライブラリ装置における、カメラ画像中に色辺パターンが含まれていない場合の処理を説明するための図である。
【図２０】実施形態の一例としてのライブラリ装置における、移動元ブロックと移動先ブロックとの相対距離の算出方法を説明するための図である。
【図２１】（ａ），（ｂ）は実施形態の一例としてのライブラリ装置における、移動元ブロックと移動先ブロックとの相対距離の算出方法を説明するための図である。
【図２２】（ａ），（ｂ）は実施形態の一例としてのライブラリ装置における上段セル位置付け検出範囲および下段セル位置付け検出範囲を説明するための図である。
【図２３】（ａ），（ｂ）は実施形態の一例としてのライブラリ装置におけるセルに対する位置付け方法を説明するための図である。
【図２４】実施形態の一例としてのライブラリ装置における移動先ブロックへの移動制御手法の概要を説明するためのフローチャートである。
【図２５】実施形態の一例としてのライブラリ装置の色辺検出部による色を検出するための制御を説明するためのフローチャートである。
【図２６】実施形態の一例としてのライブラリ装置の色辺検出部による色を検出するための制御を説明するためのフローチャートである。
【図２７】実施形態の一例としてのライブラリ装置における位置制御手法を説明するための制御を説明するためのフローチャートである。
【図２８】実施形態の一例としてのライブラリ装置における位置制御手法を説明するための制御を説明するためのフローチャートである。
【図２９】実施形態の変形例としてのカラーセル平面を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本自動収納装置および位置制御方法に係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。又、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００１２】
図１は実施形態の一例としてのライブラリ装置１の構成を模式的に示す図である。
ライブラリ装置１は、コンピュータシステムのデータのバックアップやデータアーカイブする外部記憶装置として備えられ、多数のカートリッジ式記録装置（可搬性記録媒体；以下、単に媒体とも言う）が収納される。可搬性記録媒体としては、例えば、磁気テープカートリッジ，フレキシブルディスク，光ディスク，リールに巻回された磁気テープ等がある。ここでは、磁気テープを記録媒体に用いた磁気テープカートリッジを可搬性記録媒体として用いる場合を説明する。磁気テープカートリッジは、その内部に磁気記録テープ等の記録媒体を収納している。なお、以下、磁気テープカートリッジを、単に、カートリッジもしくは媒体ともいう。
【００１３】
ライブラリ装置１は、例えば、図１に示すように、収納棚１０，ロボット１１および図示しないドライブ装置を備える。
（Ａ）構成
（Ａ−１）収納棚
収納棚１０は、被収納物としてのカートリッジを収納するものであり、カートリッジを収納する複数に区分けされた収納空間部として複数のセル（収納セル）１４がマトリクス状に形成されている。各セル１４は、カートリッジの形状に合わせた長矩形形状の開口を有し、収納棚１０における一の面にこれらの開口が上下方向および左右方向に並べて配置されている。以下、収納棚１０におけるセル１４の開口が並べられた面をアクセス面という。ロボット１１は、このアクセス面に対向して配置され、このアクセス面において各セル１４に対して、カートリッジの出し入れを行なう。以下、便宜上、セル１４の開口という代わりに単にセル１４という。また、マトリクス状に配置された複数のセル１４をセル群１４１という場合がある。
【００１４】
図２は実施形態の一例としてのライブラリ装置１の収納棚１０のアクセス面を例示する図である。
図２に例示する収納棚１０は、セル１４を、その長辺側が左右方向（水平方向，横方向）に沿うようにした、すなわち横長の状態で、上下方向（鉛直方向，縦方向）に沿って２７個、左右方向に沿って９個、並べて構成されている。
【００１５】
また、収納棚１０のアクセス面を構成するセル１４は、短手方向（上下方向）に並べられた所定数（本実施形態では３個）毎に１つのブロック３０を形成する。つまり、上下方向に並べた横長の３つのセル１４を１つのグループとして１つのブロック３０が形成される。
これにより、図２に例示する収納棚１０は、アクセス面において、上下方向および左右方向にそれぞれ９個ずつの、合計８１個のブロック３０がマトリクス状に並べて備えられている。
【００１６】
収納棚１０のアクセス面において、その上下方向をＹ方向、左右方向をＸ方向とする場合に、各ブロック３０を構成する四隅の各点の位置は、座標（ｘ，ｙ）で表される。
例えば、図２において、図中左下に位置するブロック３０は、座標（０，０），（１，０），（０，１），（１，１）でそれぞれ表される４つの点で構成されている。このように、各ブロック３０の位置を、当該ブロック３０の四隅に位置する４つの点の座標で特定することができる。
【００１７】
なお、本実施形態においては、セル１４の長手方向の寸法は、短手方向の寸法の約３倍となるように構成されており、これにより、３つのセル１４を上下方向に並べることにより構成される１つのブロック３０は、ほぼ正方形形状を有する。
また、図２に示すように、アクセス面において、各ブロック３０は、所定の複数色（本実施形態においては、赤，青および緑の３色）のうちいずれかの色を有する４つの色辺２１により環囲されている。
【００１８】
図２に示す例においては、赤色の色辺２１を黒太線で、青色の色辺２１を右下がりの斜線を付した線で、緑色の色辺２１を左下がりの斜線を付した線で、それぞれ表している。また、図２においては、便宜上、一部の色辺２１および色辺パターン２０にのみ符号を付している。
そして、アクセス面を構成する各ブロック３０は、それぞれ色辺２１のユニークな組み合わせを有しており、各ブロック３０を環囲する色辺２１の色の組み合わせは、互いに一致することがない。すなわち、各ブロック３０は、色辺２１の組み合わせパターンによって特定することができる。以下、ブロック３０を特定する色辺２１の組み合わせパターンを、色辺パターン２０という場合がある。
【００１９】
また、セル群１４１全体における、各ブロック３０の色辺パターン２０の組み合わせをカラーセル平面２００という。
ここで、ブロック３０は４つの色辺２１で環囲されているので、色辺２１に使用する色数をｎ（ｎ色）とすると、ｎ４のパターンのブロック３０を識別することができる。また、１つのブロック３０に備えられるセル１４の数（セル数）をｍとすると、ｍｎ４個のセル１４を識別することができる。
【００２０】
例えば、使用する色数ｎ＝３、１ブロック当たりのセル数ｍ＝３とする場合には、３×３４＝２４３個のセルを識別可能となる。
また、カラーセル平面２００において、使用する色を使い分けることで、さらにｍｎ４×ｎ＝ｍｎ５個のセル１４まで識別することが可能となる。例えば、上述したｎ＝ｍ＝３の例では、２４３×３＝７２９個のセル１４まで識別可能となる。以下、なお、本実施形態では、ｎ＝ｍ＝３の場合を例について示す。
【００２１】
図３および図４は、図２に示したカラーセル平面２００の他のバリエーションを示す図である。図３に示すカラーセル平面２００は、図２に示したカラーセル平面２００における赤の色辺２１を緑に、青の色辺２１を赤に、緑の色辺２１を青に、それぞれ変更したものである。また、図４に示すカラーセル平面２００は、図２に示したカラーセル平面２００における赤の色辺２１を青に、青の色辺２１を緑に、緑の色辺２１を赤に、それぞれ変更したものである。
【００２２】
なお、図３および図４においては、便宜上、一部の色辺２１および色辺パターン２０にのみ符号を付している。
このように、カラーセル平面２００において、色辺２１に使用する色を変更することで、容易にカラーセル平面２００のバリエーションを増やすことができる。
また、図２〜図４に示す各例においては、カラーセル平面２００の外周は、同一色（図２に示す例では赤色）の色辺２１で揃えられている。このように、カラーセル平面２００の外周を同一色の色辺２１で揃えることで、カラーセル平面２００の識別を容易に行なうことができ、利便性が高い。
【００２３】
収納棚１０において、各色辺２１は、例えば、セル１４の枠（フレーム）に、棒状の色付き部品を貼付することにより実現される。なお、これに限定されるものではなく、例えば、セル１４の枠に対応する色の塗装を施したりテープ等を貼付することにより色辺２１を実現してもよく、種々変形して実施することができる。
また、本ライブラリ装置１においては、各ブロック３０を環囲する色辺２１の組み合わせ毎に、対応する座標位置を対応させた情報を、ブロック位置情報２１６として予め不揮発性メモリ２１２（図６参照）等に記憶する。すなわち、ブロック位置情報２１６は、各ブロック３０の座標に対して、当該ブロック３０を識別する色辺パターン２０を関連付けることにより構成されている。
【００２４】
ブロック位置情報２１６は、例えば、本ライブラリ装置１の製造時等に、収納棚１０におけるブロック３０の配置パターンに合わせて作成される。
図５は実施形態の一例としてのライブラリ装置１におけるブロック位置情報２１６を例示する図である。
この図５に示すブロック位置情報２１６は、項目“頁”，“ブロック”および“位置情報”を関連付けて構成されている。“ブロック”はブロック３０を特定する色辺パターン２０である。
【００２５】
“位置情報”は、アクセス面における当該ブロック３０の位置を表し、具体的には、当該ブロック３０を構成する四隅の各点の座標を表す。“頁”は、ブロック３０（色辺パターン２０）を識別するための情報である。
この図５に例示するブロック位置情報２１６において、例えば、頁＝２のブロック３０は、座標（１，０），（２，０），（１，１），（２，１）で表される４点を四隅とし、これらの４点をｘ方向およびｙ方向に連結する４つの色辺２１を備える。また、この頁＝２のブロック３０には、上側、下側および左側の各辺のそれぞれが赤色の色辺２１であり、その右側の辺が緑色の色辺２１である色辺パターン２０が貼付されている。
【００２６】
例えば、図２に示すような収納棚１０を作成する場合には、上述の如きｎ４種類の色辺パターン２０の中から、８１種類の色辺パターン２０を選択して、アクセス面を構成する８１個のブロック３０にそれぞれ割り当てる。また、この際、収納棚１０を構成するセル群１４１の外周、すなわち、カラーセル平面２００の外周は、同一色の色辺２１で揃えることが望ましい。
【００２７】
そして、各ブロック３０に割り当てた色辺パターン２０のそれぞれについて、収納棚１０における座標位置を関連付けることでブロック位置情報２１６を作成することができる。作成したブロック位置情報２１６は、不揮発性メモリ２１２等に格納する。
また、収納棚１０において、セル群１４１（カラーセル平面２００）の外側には、セル群１４１を環囲するように可動限界線４０１が形成されている。可動限界線４０１は、ロボット１１（ピッカー部２２０）の移動可能な限界位置（可動限界）もしくはこの限界位置よりも内側に形成される。なお、可動限界線４０１は、色辺２１よりも太く、また、色辺２１に用いられている色とは異なる色の線で形成されることが望ましい。
【００２８】
なお、この可動限界線４０１も、色辺２１と同様に、収納棚１０における所定位置に、棒状部品やテープを貼付したり塗装を施すことによって実現することができる。
（Ａ−２）ロボット
ライブラリ装置１は、被搬送物としてのカートリッジを搬送するロボット１１を備える。
【００２９】
ロボット１１は、図示しないカートリッジ投入排出機構部（ＣＡＳ：Cartridge Access Station）から収納棚１０へカートリッジを搬送したり、また、収納棚１０からドライブ装置に対してカートリッジを搬送し、ドライブ装置からカートリッジを収納棚１０に搬送する搬送手段である。
本ライブラリ装置１においては、ロボット１１を用いることで、収納棚１０のセル１４からカートリッジを取り出し、ドライブ装置に搬送して装着し、データの書込み又は読出しを実行する。また、データの書込み又は読出しを終了したカートリッジはドライブ装置から取り出して、ロボット１１によって搬送され、収納棚１０のセル１４に収納される。このような処理の後、ロボット１１は図示しないホストコンピュータからの動作命令を受けるために待機する。
【００３０】
ロボット１１は、図１に示すように、ロボット機構部として、ピッカー部２２０（アクセッサ）と、図示しない、Ｘ軸搬送機構部、Ｙ軸搬送機構部及びＺ軸搬送機構部とを備える。ピッカー部２２０は、カートリッジを把持する手段である。Ｘ軸搬送機構部は、ピッカー部２２０を図示しないガイドレールに沿ってＸ軸方向に沿って移動させるものである。このＸ軸搬送機構部は、Ｘ軸駆動モータ１０６を備え、このＸ軸駆動モータ１０６によって駆動される。
【００３１】
Ｙ軸搬送機構部は、ピッカー部２２０を図示しないガイドレールに沿ってＹ軸方向に沿って移動させるものである。このＹ軸搬送機構部は、Ｙ軸駆動モータ１０７を備え、このＹ軸駆動モータ１０７によって駆動される。
Ｚ軸搬送機構部は、ピッカー部２２０を図示しないガイドレールに沿ってＺ軸方向に沿って移動させるものである。このＺ軸搬送機構部は、Ｚ軸駆動モータ１０８を備え、このＺ軸駆動モータ１０８によって駆動される。
【００３２】
ロボット１１においては、これらのＸ軸駆動モータ１０６，Ｙ軸駆動モータ１０７およびＺ軸駆動モータ１０８の回転を制御することで、ピッカー部２２０を目標とする位置に移動させる。以下、ピッカー部２２０を目標とする位置まで移動させることを、位置付けすると表現する場合がある。
なお、ロボット１１には、上記の他、ピッカー部２２０を鉛直方向の軸に沿って回転させる回転機構や、カートリッジを把持するための把持機構等が備えられているが、これらの説明は省略する。
【００３３】
また、ピッカー部２２０には、制御ボード２０１および２次元カメラ２５０が備えられる。
２次元カメラ２５０は、例えば、ＣＣＤ（Charge Coupled Device）イメージセンサやＣＭＯＳ（Complementary Metal Oxide Semiconductor）イメージセンサ等であり、収納棚１０の画像を撮像する。以下、２次元カメラ２５０を単にカメラ２５０という場合がある。カメラ２５０は、収納棚１０に貼付された図示しない基準位置情報等を撮影してもよい。
【００３４】
カメラ２５０は、ピッカー部２２０における所定位置に取り付けられており、このカメラ２５０によってセル１４（ブロック３０）が撮影されている状態、すなわち、カメラ２５０の撮像素子（図示省略）にブロック３０の画像が映っている状態で、ピッカー部２２０が当該ブロック３０のほぼ中央に正対している。
すなわち、ピッカー部２２０は、カメラ２５０にブロック３０が撮影されている状態で、このブロック３０に含まれる３段のセル１４のうち、中央のセル１４に対してアクセスすることができる。
【００３５】
従って、ブロック３０の色辺パターン２０がカメラ２５０に撮影された状態で、ピッカー部２２０が当該ブロック３０の中央のセル１４にアクセスすることができる。
（Ａ−３）制御システム
次に、本ライブラリ装置１の制御システムについて説明する。
図１に示すように、ロボット１１には制御ボード２０１が備えられ、この制御ボード２０１はロボット１１の制御を行なう。制御ボード２０１はＨＣＴ（Hand ConTroller）とも言われる。
【００３６】
図６は実施形態の一例としてのライブラリ装置１に備えられる制御ボード２０１のハードウェア構成を示すブロック図である。
制御ボード２０１は、図６に示すように、ＣＰＵ２１１，ＦＰＧＡ（Field Programmable Gate Array）２１４，不揮発性メモリ２１２，揮発性メモリ２１３および複数（図６に示す例では３つ）のモータ駆動回路２１５を備える。
【００３７】
モータ駆動回路２１５は、Ｘ軸駆動モータ１０６，Ｙ軸駆動モータ１０７およびＺ軸駆動モータ１０８のそれぞれに対して一つずつ備えられ、これらのＸ軸駆動モータ１０６，Ｙ軸駆動モータ１０７およびＺ軸駆動モータ１０８の回転をそれぞれ制御する。
各モータ駆動回路２１５は、それぞれ、ＣＰＵ２１１（後述する移動制御部５３）からの制御指示に従って、Ｘ軸駆動モータ１０６，Ｙ軸駆動モータ１０７およびＺ軸駆動モータ１０８の回転を制御する。
【００３８】
例えば、各モータ駆動回路２１５は、ＣＰＵ２１１（後述する移動制御部５３）からの制御指示に従って、Ｘ軸搬送機構部、Ｙ軸搬送機構部及びＺ軸搬送機構部の各移動量に応じたパルス信号を生成する。そして、各モータ駆動回路２１５は、これらの生成したパルス信号を、Ｘ軸駆動モータ１０６，Ｙ軸駆動モータ１０７およびＺ軸駆動モータ１０８に出力する。これにより、ロボット１１のピッカー部２２０のＸ軸方向，Ｙ軸方向およびＺ軸方向における各位置や移動を制御される。
【００３９】
揮発性メモリ２１３は、一次記憶メモリあるいはワーキングメモリとして利用され、ＣＰＵ２１１によって実行されるＯＳ（Operating System）や各種プログラム（ロボット制御プログラム，位置制御プログラム等）が一時的に格納される。
また、揮発性メモリ２１３には、ＣＰＵ２１１が各種機能を実行する際に用いられる各種データも格納される。例えば、カメラ２５０によって撮影された画像データが揮発性メモリ２１３の所定の記憶領域（カメラ画像格納領域２１７）に格納（展開）され、ＣＰＵ２１１によって処理される。なお、カメラ画像格納領域２１７の詳細については、図１１〜図１７等を用いて後述する。
【００４０】
さらに、揮発性メモリ２１３には、上述したブロック位置情報２１６が格納される。
揮発性メモリ２１３は、例えばＲＡＭ（Random Access Memory）である。
ＦＰＧＡ２１４は、プログラミングすることができる集積回路（ＬＳＩ：Large Scale Integration）であり、ＣＰＵ２１１に対するＩ（Input）／Ｏ（Output）の制御を行なう。例えば、ＦＰＧＡ２１４は、カメラ２５０によって撮影された画像データを揮発性メモリ２１３に格納したり、ＣＰＵ２１１から出力される制御指示をモータ駆動回路２１５に送信する。
【００４１】
不揮発性メモリ２１２は、上述したＯＳや各種プログラムが格納されている。また、不揮発性メモリ２１２は、これらのＯＳやプログラムによって用いられる種々のデータも格納されており、例えば、ブロック位置情報２１６が格納されている。
ＣＰＵ２１１は、ＯＳや制御プログラムを実行し、ロボット１１（ピッカー部２２０）の移動や位置付けに関する各種制御を行なう。
【００４２】
そして、このＣＰＵ２１１が、位置制御プログラムを実行することにより、位置制御部５０として機能する。
図７は実施形態の一例としてのライブラリ装置１における位置制御部５０としての機能を説明するための図である。
なお、この位置制御部５０としての機能を実現するためのプログラムは、例えばフレキシブルディスク，ＣＤ（ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ等），ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−ＲＡＭ，ＤＶＤ−Ｒ，ＤＶＤ＋Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ＋ＲＷ，ＨＤ  ＤＶＤ等），ブルーレイディスク，磁気ディスク，光ディスク，光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置又は外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
【００４３】
位置制御部５０としての機能を実現する際には、内部記憶装置（本実施形態では揮発性メモリ２１３）に格納されたプログラムがコンピュータのマイクロプロセッサ（本実施形態ではＣＰＵ２１１）によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
また、制御ボード２０１は、位置制御部５０としての機能を実現することにより、ロボット１１（ピッカー部２２０）の位置を制御する位置制御装置として機能する。
【００４４】
位置制御部５０は、カメラ２５０を用いて撮影された画像データに基づき、収納棚１０のセル群１４１に対するピッカー部２２０（カメラ２５０）の相対的な位置を特定し、ピッカー部２２０の位置制御を行なう。
位置制御部５０は、図７に示すように、色辺検出部５１，位置判断部５２および移動制御部５３を備える。
【００４５】
色辺検出部５１は、カメラ２５０によって撮影されたセル群１４１の画像（カメラ画像）に基づき、このカメラ画像中における所定位置（色辺検出位置）に検出対象の色辺２１が存在するか否かを判断する。すなわち、色辺検出部５１は、カメラ画像中において、検出対象のブロック３０の色辺パターン２０の存在を検出する。
［色の検出］
まず、図８（ａ），（ｂ）および図９（ａ），（ｂ），（ｃ）を用いて、色辺パターン検出部５１による色の検出方法を説明する。
【００４６】
図８（ａ），（ｂ）は実施形態の一例としてのライブラリ装置１におけるカメラ画像とメモリ配置との関係を説明するための図であり、図８（ａ）はカメラ画像を、図８（ｂ）は揮発性メモリ２１３におけるメモリアドレスの空間座標を、それぞれ示す。
カメラ２５０によって撮影されたカメラ画像（図８（ａ）参照）のデータは、揮発性メモリ２１３の所定の領域（図８（ｂ）参照）に格納（展開）される。
【００４７】
この際、カメラ画像のデータは、例えば、その左上端部から水平方向（横方向）への走査を、右下端部に到達するまで下方に順次移動しながら繰り返し行なうことで走査される。
また、カメラ画像のデータは、カメラ２５０からシリアルで出力され、ＦＰＧＡ２１４により、図８（ｂ）に示すような、揮発性メモリ２１３における該当するアドレス（例えば、0000からffffまでの領域）に格納される。
【００４８】
図９（ａ），（ｂ），（ｃ）は、揮発性メモリ２１３に格納されたカメラ画像のデータを模式的に示す図である。図９（ａ）はカメラ画像を例示する図、図９（ｂ）は図９（ａ）に示すカメラ画像を揮発性メモリ２１３のメモリアドレス空間に展開した状態を示す図、図９（ｃ）は図（ｂ）に示すカメラ画像の色辺パターン２０を色データに変換した状態を模式的に示す図である。
【００４９】
色辺検出部５１は、色辺パターン２０が展開された揮発性メモリ２１３のメモリアドレス空間に（図９（ｂ）参照）において、所定サイズの領域単位で、各領域に格納された画素データの色を判断する。
例えば、色辺検出部５１は、各アドレスの画素データの色をＲＧＢカラーモデルで表すことで、当該画素の色を判断する。すなわち、画素データにおける赤色（Ｒ：Red），緑色（Ｇ：Green）および青色（Ｂ：Blue）の各色成分（要素）をそれぞれ０〜２５５の値で表し、これらのＲ，Ｇ，Ｂの各要素の値に基づいて、色を判断する。なお、画素データをＲ，Ｇ，Ｂの各色成分の値で表すことは、既知の手法を用いて実現することができ、その説明は省略する。
【００５０】
図１０（ａ），（ｂ）は実施形態の一例としてのライブラリ装置１におけるＲＧＢカラーモデルを用いた色の判断方法を例示する図である。ここで、図１０（ａ）はカメラ画像を揮発性メモリ２１３のメモリアドレス空間に展開した状態を示し、図１０（ｂ）は図１０（ａ）に対応させて、各アドレスの画素データについてのＲ，Ｇ，Ｂの値と色の判断結果とを示す。
【００５１】
一般に、（Ｒ，Ｇ，Ｂ）＝（２５５，０，０）の場合に赤、（Ｒ，Ｇ，Ｂ）＝（０，２５５，０）の場合に緑、（Ｒ，Ｇ，Ｂ）＝（０，０，２５５）の場合に青と判断されるが、カメラ２５０による撮影環境等の検出条件の変動や測定誤差等を鑑みて、検出する値に幅を持たせる。すなわち、閾値として、例えば２００や５０を用いている。
具体的には、図１０（ａ），（ｂ）に示す例においては、２００＜Ｒ，５０＞Ｇ，５０＞Ｂである場合に赤のデータであると判断し、５０＞Ｒ，２００＜Ｇ，５０＞Ｂである場合に緑のデータであると判断し、５０＞Ｒ，５０＞Ｇ，２００＜Ｂである場合に青のデータであると判断している。
【００５２】
なお、色辺検出部５１による色の検出方法の詳細は、図２５および図２６に示すフローチャートに従って後述する。
また、本実施形態においては、色をＲＧＢカラーモデルで表しているが、これに限定されるものではない。例えば、ＣＭＹＫやＨＳＶ等の他のカラーシステムによって表してもよく、種々変形して実施することができる。
【００５３】
［色辺検出］
色辺検出部５１は、揮発性メモリ２１３における所定の領域（カメラ画像格納領域２１７）に格納されたカメラ画像を解析することで、カメラ２５０によって撮影されたカメラ画像中において色辺パターン２０を検出する。
［第１の検出（検出１−１），第２の検出（検出１−２）］
以下に、色辺検出部５１による色辺パターン２０の第１の検出（検出１−１）および第２の検出（検出１−２）について説明する。
【００５４】
先ず、色辺検出部５１が色辺パターン２０の第１および第２の検出に用いる、カメラ画像格納領域２１７における検出領域について説明する。
図１１〜図１４はそれぞれ実施形態の一例としてのライブラリ装置１におけるカメラ画像格納領域２１７と第１検出領域Ｒ１（Ｒ１ａ，Ｒ１ｂ，Ｒ１ｃ，Ｒ１ｄ）とを模式的に示す図である。
【００５５】
図１１に示すカメラ画像格納領域２１７は、その左上隅の位置を原点（0000，0000）として、右方向に00ffアドレス、下方向にff00アドレスの矩形の領域であって、カメラ２５０における図示しない撮像素子に対応する。
カメラ２５０によって撮影されたカメラ画像が、ＦＰＧＡ２１４によって随時このカメラ画像格納領域２１７に格納される。
【００５６】
そして、カメラ画像格納領域２１７において、その縁辺（四辺）に沿った第１検出領域Ｒ１が色辺パターン２０の第１の検出（検出１−１）および第２の検出（検出１−２）に使用される。
図１１においては、第１検出領域Ｒ１に点（ドット）模様を付して表す。この図１１に例示する第１検出領域Ｒ１は、カメラ画像格納領域２１７の外周から内側に４アドレス幅の領域として構成される。
【００５７】
色辺検出部５１は、移動制御部５３にピッカー部２２０を移動させながら、色辺パターン２０を構成する一の色辺２１が、この第１検出領域Ｒ１において検出されたか否かを判断する。
特に、ピッカー部２２０を右方向（＋Ｘ方向）に移動させる際には、色辺検出部５１は、この第１検出領域Ｒ１において、図中右側の辺に沿う、横方向に00fb〜00ff，縦方向に0000〜ff00の領域（符号Ｒ１ａ参照）を、色辺パターン２０の検出に用いる。以下、第１検出領域Ｒ１ａを検出範囲Ａという場合がある。なお、図１１においては、第１検出領域Ｒ１ａの部分を四角形で環囲して表している。
【００５８】
また、ピッカー部２２０を左方向（−Ｘ方向）に移動させる際には、色辺検出部５１は、図１２に示すように、第１検出領域Ｒ１において、図中左側の辺に沿う、横方向に0000〜0004，縦方向に0000〜ff00の領域（符号Ｒ１ｂ参照）を、色辺パターン２０の検出に用いる。以下、第１検出領域Ｒ１ｂを検出範囲Ｂという場合がある。
また、ピッカー部２２０を上方向（＋Ｙ方向）に移動させる際には、色辺検出部５１は、図１３に示すように、第１検出領域Ｒ１において、図中上側の辺に沿う、横方向に0000〜00ff，縦方向に0000〜0400の領域（符号Ｒ１ｃ参照）を、色辺パターン２０の検出に用いる。以下、第１検出領域Ｒ１ｃを検出範囲Ｃという場合がある。
【００５９】
また、ピッカー部２２０を下方向（−Ｙ方向）に移動させる際には、色辺検出部５１は、図１４に示すように、第１検出領域Ｒ１において、図中下側の辺に沿う、横方向に0000〜00ff，縦方向にfb00〜ff00の領域（符号Ｒ１ｄ参照）を、色辺パターン２０の検出に用いる。以下、第１検出領域Ｒ１ｄを検出範囲Ｄという場合がある。
以下においては、ピッカー部２２０を右方向に移動させる場合における色辺パターン２０の検出例を示す。ピッカー部２２０を右方向に移動させる場合には、色辺検出部５１は、上述した第１検出領域Ｒ１ａを用いる。
【００６０】
図１５および図１６は、それぞれ実施形態の一例としてのライブラリ装置１におけるカメラ画像格納領域２１７と第１検出領域Ｒ１ａとを示す図である。
色辺検出部５１は、移動制御部５３にピッカー部２２０を右方向に移動させる。これにより、図１５に示すように、カメラ画像格納領域２１７における第１検出領域Ｒ１ａ（第１領域）に、アクセス対象のブロック３０の色辺パターン２０の一辺（左辺）２１が写り（重合し）、色辺検出部５１によって検出される（検出１−１：第１の検出）。また、この際、色辺検出部５１は、第１検出領域Ｒ１ａに検出された色辺２１の色を判断する。図１５に示す例においては、第１検出領域Ｒ１ａには青色の色辺２１が検出されている。
【００６１】
次に、色辺検出部５１は、更に移動制御部５３にピッカー部２２０を右方向に移動させる。これにより、図１６に示すように、カメラ画像格納領域２１７における第１検出領域Ｒ１ａ（第１領域）に、アクセス対象のブロック３０の色辺パターン２０の他辺（右辺）２１が写り、色辺検出部５１によって検出される（検出１−２：第２の検出）。また、この際、色辺検出部５１は、第１検出領域Ｒ１ａに検出された色辺２１の色を判断する。図１６に示す例においては、第１検出領域Ｒ１ａには緑色の色辺２１が検出されている。
【００６２】
検出１−２において、アクセス対象のブロック３０の色辺パターン２０の他辺（右辺）２１を検出された場合には、ピッカー部２２０は位置付け対象位置に近づいたと判断することができる。
そこで、色辺検出部５１は、検出１−２において、アクセス対象のブロック３０の色辺パターン２０の他辺（右辺）を検出すると、移動制御部５３にピッカー部２２０の移動速度を低下させる（減速させる）。これにより、ピッカー部２２０を確実に目的位置に位置付けすることができ、位置付け精度を向上させることができる。
【００６３】
［第３の検出（検出２）］
第２の検出（検出１−２）が行なわれた後に、色辺検出部５１は色辺パターン２０の第３の検出（検出２）を行なう。
以下に、色辺検出部５１による色辺パターン２０の第３の検出（検出２）について説明する。
【００６４】
図１７は実施形態の一例としてのライブラリ装置１におけるカメラ画像格納領域２１７と第２検出領域Ｒ２（Ｒ２ａ，Ｒ２ｂ，Ｒ２ｃ，Ｒ２ｄ）とを模式的に示す図、図１８はそのカメラ画像格納領域２１７と第２検出領域Ｒ２ａとを示す図である。
図１７に示すように、カメラ画像格納領域２１７において、前述した第１検出領域Ｒ１を構成する各領域Ｒ１ａ，Ｒ１ｂ，Ｒ１ｃ，Ｒ１ｄを、それぞれ、カメラ画像格納領域２１７の外周とは反対側（内側）に４アドレス分内側に移動させた第２検出領域Ｒ２ａ，Ｒ２ｂ，Ｒ２ｃ，Ｒ２ｄが、色辺パターン２０の第３の検出（検出２）に使用される。なお、これらの領域Ｒ２ａ，Ｒ１ｂ，Ｒ１ｃ，Ｒ１ｄをまとめて第２検出領域Ｒ２という場合がある。図１７においては、第２検出領域Ｒ２に斜線模様を付して表す。
【００６５】
色辺検出部５１は、移動制御部５３にピッカー部２２０を移動させながら、色辺パターン２０を構成する一辺が、この第２検出領域Ｒ２において検出されたか否かを判断する。
特に、ピッカー部２２０を右方向（＋Ｘ方向）に移動させる際には、色辺検出部５１は、この第２検出領域Ｒ２において、図中右側の辺に平行な、横方向に00f6〜00fa，縦方向に0000〜ff00の領域（符号Ｒ２ａ参照）を、色辺パターン２０の検出に用いる。以下、第２検出領域Ｒ２ａを検出範囲Ａ′という場合がある。
【００６６】
また、ピッカー部２２０を左方向（−Ｘ方向）に移動させる際には、色辺検出部５１は、図１７に示すように、第２検出領域Ｒ２において、図中左側の辺に平行な、横方向に0005〜0009，縦方向に0000〜ff00の領域（符号Ｒ２ｂ参照）を、色辺パターン２０の検出に用いる。以下、第２検出領域Ｒ２ｂを検出範囲Ｂ′という場合がある。
また、ピッカー部２２０を上方向（＋Ｙ方向）に移動させる際には、色辺検出部５１は、図１７に示すように、第２検出領域Ｒ１において、図中上側の辺に平行な、横方向に0000〜00ff，縦方向に0500〜0900の領域（符号Ｒ２ｃ参照）を、色辺パターン２０の検出に用いる。以下、第２検出領域Ｒ２ｃを検出範囲Ｃ′という場合がある。
【００６７】
また、ピッカー部２２０を下方向（−Ｙ方向）に移動させる際には、色辺検出部５１は、図１７に示すように、第２検出領域Ｒ２において、図中下側の辺に平行な、横方向に0000〜00ff，縦方向にf600〜fa00の領域（符号Ｒ２ｄ参照）を、色辺パターン２０の検出に用いる。以下、第２検出領域Ｒ２ｄを検出範囲Ｄ′という場合がある。
色辺検出部５１は、前述した第２の検出（検出１−２）を行なった後に、ピッカー部２２０の移動を減速させた状態で、更に移動制御部５３にピッカー部２２０を右方向に移動させる。
【００６８】
これにより、図１８に示すように、カメラ画像格納領域２１７における第２検出領域Ｒ２ａ（第２領域）に、アクセス対象のブロック３０の色辺パターン２０の他辺（右辺）が写り、色辺検出部５１によって検出される（検出２：第３の検出）。また、色辺検出部５１は、第２検出領域Ｒ２ａに検出された色辺２１の色を判断する。図１８に示す例においては、第２検出領域Ｒ２ａには緑色の色辺２１が検出されている。
【００６９】
例えば、色辺検出部５１は、アクセス対象のブロック３０の色辺パターン２０について、その一辺が、第２検出領域Ｒ２に所定割合（例えば、７０％）以上格納されたことを検出した場合に、第２検出領域Ｒ２においてアクセス対象のブロック３０の色辺パターン２０が検出されたと判断する。
なお、第２検出領域Ｒ２にアクセス対象のブロック３０の色辺パターン２０が格納されたことを判断するための割合は、７０％に限定されるものではなく、種々変形して実施することができる。
【００７０】
色辺検出部５１は、検出２において、アクセス対象のブロック３０の色辺パターン２０の他辺（右辺）を検出すると、移動制御部５３にピッカー部２２０の移動速度を停止させる。なお、このアクセス対象のブロック３０の色辺パターン２０の他辺（右辺）は、検出１−２において検出した第二検出色と同一色である。
色辺検出部５１は、このようにカメラ画像格納領域２１７における第２検出領域Ｒ２（第２領域）において、アクセス対象のブロック３０の色辺パターン２０が検出されると、アクセス対象のブロック３０に位置付けを行なうことができたとして、移動制御部５３にピッカー部２２０の移動を停止させる。このようにして、アクセス対象のブロック３０に対する位置付けが行なわれる。
【００７１】
なお、このようにして行なわれたブロック３０への位置付けにより、ピッカー部２２０はブロック３０の中央、すなわち、ブロック３０内において上下方向に並んだ３つのセル１４のうち、中央のセル１４に位置付けが行なわれる。
また、色辺パターン検出部５１は、カメラ画像中に色辺パターン２０を構成する４辺が含まれていない場合には、移動制御部５３に移動指示を行なう。色辺パターン検出部５１は、カメラ画像中に色辺パターン２０を構成する４辺が検出されるまで、移動制御部５３にカメラ２５０を移動させる。
【００７２】
図１９は実施形態の一例としてのライブラリ装置１における、カメラ画像中に色辺パターン２０が含まれていない場合の処理を説明するための図である。
図１９中において、符号Ｐ１，Ｐ３はカメラ画像の範囲を示す。符号Ｐ１に示すカメラ画像中においては、色辺パターン２０は部分的にしか含まれておらず、色辺パターン２０の４つの色辺２１が含まれていない。そこで、色辺パターン検出部５１は、移動制御部５３に対して、カメラ２５０を、例えば、上方および右方に移動させるよう指示を行なう。この指示に応じて、移動制御部５３がカメラ２５０を上方および右方に移動させる（図１９中の符号Ｐ２，Ｐ２参照）。
【００７３】
これにより、符号Ｐ３に示すように、カメラ画像中に色辺パターン２０の４つの色辺２１が含まれることになり、色辺パターン検出部５１がカメラ画像中に色辺パターン２０を検出することができるようになる。
なお、色辺検出部５１による色辺パターン２０を検出するための制御の詳細は、図２７に示すフローチャートに従って後述する。
【００７４】
移動制御部５３は、ピッカー部２２０を移動させるための制御を行なう。例えば、移動制御部５３は、モータ駆動回路２１５に対して、Ｘ軸駆動モータ１０６，Ｙ軸駆動モータ１０７およびＺ軸駆動モータ１０８の駆動指示を送信する。
移動制御部５３は、ピッカー部２２０が現在対向しているブロック３０（現在ブロック３０，移動元ブロック３０）の位置情報と、移動先ブロック３０（目的ブロック３０）の位置情報とに基づき、移動元ブロック３０と移動先ブロック３０との相対距離を算出する。なお、移動先ブロック３０については、本ライブラリ装置１の運用時において、例えば、図示しないホストコンピュータ等から通知される。
【００７５】
図２０および図２１（ａ），（ｂ）はそれぞれ実施形態の一例としてのライブラリ装置１における、移動元ブロック３０と移動先ブロック３０との相対距離の算出方法を説明するための図である。
図２１（ａ）は、図２０に示す移動元ブロック３０（符号Ｐ４参照）の位置情報を示し、図２１（ｂ）は、図２０に示す移動先ブロック３０（符号Ｐ５参照）の位置情報と、その相対距離を示す。
【００７６】
図２１（ａ）に示すように、移動元ブロック３０（符号Ｐ４参照）の位置情報は、座標（７，６），（８，６），（７，７），（８，７）である。すなわち、移動元ブロック３０は、（７，６），（８，６），（７，７），（８，７）の４つの頂点を有する。一方、移動先ブロック３０は、（３，３），（４，３），（３，４），（４，４）の４つの頂点を有する。
【００７７】
移動元ブロック３０と移動先ブロック３０とでブロック３０の形状および大きさは一定であるので、いずれか一点（例えば左下点）のについて、移動先の座標値から移動元の座標値を減算することで、移動元ブロック３０から移動先ブロック３０への相対移動距離を求めることができる。
例えば、移動先の点（３，３）の座標値から移動元の点（７，６）の座標値を減算することで、相対移動距離（−４，−３）が求められる。
【００７８】
次に、上述の如く特定のブロック３０への位置付けが行なわれた後に、このブロック３０内に含まれるアクセス対象のセル１４に位置付けするための制御手法を説明する。
上述の如く特定のブロック３０へ位置付けを行なうことにより、ピッカー部２２０は当該ブロック３０の中央に位置するセル１４、すなわち、ブロック３０内において上下方向に並んだ３段のセル１４のうち中央のセル（中段セル）１４に位置付けが行なわれる。
【００７９】
以下、ブロック３０内に含まれる３つのセル１４を、図２２（ａ），（ｂ）に示すように、上から上段セル１４ａ，中段セル１４１４ｂおよび下段セル１４ｃと現す場合がある。
アクセス対象のセル１４が、中段セル１４ｂである場合には、ピッカー部２２０はこの位置付けされている中段セル１４ｂに対して、カートリッジ４の挿抜等の処理を行なう。
【００８０】
また、アクセス対象のセル１４が、ブロック３０内において上下方向に並んだ３段のセル１４のうち上段のセル１４（上段セル１４ａ）である場合には、移動制御部５３は、この上段セル１４ａに対して位置付けを行なう。
図２２（ａ），（ｂ）は実施形態の一例としてのライブラリ装置１における上段セル位置付け検出範囲および下段セル位置付け検出範囲を説明するための図であり、図２２（ａ）はカメラ画像を揮発性メモリ２１３のメモリアドレス空間に展開した状態を示し、図２２（ｂ）は上段セル位置付け検出領域Ｒ２および下段セル位置付け検出範囲Ｒ３を第２検出領域Ｒ２とともに示す。
【００８１】
図２２（ａ）においては、ブロック３０の色辺パターン２０とともに、このブロック３０に含まれるセル１４の枠を図示している。
この図２２（ａ）においては、縦方向における05xx〜09xxの領域に色辺パターン２０の上側辺が、縦方向における55xx〜59xxの領域に色辺パターン２０の下側辺が、それぞれ位置している。また、横方向におけるxx05〜xx09の領域に色辺パターン２０の左側辺が、横方向におけるxxf6〜xxfaの領域に色辺パターン２０の右側辺が、それぞれ位置している。
【００８２】
さらに、図２２（ａ）においては、縦方向における05xx〜09xxの領域にブロック３０における上段セル１４ａと中段セル１４ｂとの間を区画する枠が、また、縦方向におけるA5xx〜A9xxの領域にブロック３０における下段セル１４ｃと中段セル１４ｂとの間を区画する枠が、それぞれ位置している。
そして、図２２（ｂ）に示すように、揮発性メモリ２１３のメモリアドレス空間においては、ブロック３０における上段セル１４ａと中段セル１４ｂとの間を区画する枠に対応する領域、すなわち、縦方向における55xx〜59xxの領域に、上段セル位置付け検出領域Ｒ３が設定されている。
【００８３】
また、図２２（ｂ）に示すように、揮発性メモリ２１３のメモリアドレス空間において、ブロック３０における上段セル１４ａと中段セル１４ｂとの間を区画する枠に対応する領域、すなわち、縦方向におけるA5xx〜A9xxの領域に、下段セル位置付け検出領域Ｒ４が設定されている。
色辺検出部５１および移動制御部５３は、ブロック３０において、上段セル１４ａに対する位置付けを行なう際に、上段セル位置付け検出領域Ｒ３を用い、下段セル１４ｃに対する位置付けを行なう際に、下段セル位置付け検出領域Ｒ４を用いる。
【００８４】
図２３（ａ），（ｂ）は実施形態の一例としてのライブラリ装置１におけるセル１４に対する位置付け方法を説明するための図であり、図２３（ａ）は上段セル１４ａに対する位置付け方法を示し、図２３（ｂ）は下段セル１４ｃに対する位置付け方法を示す。
本位置付け制御においては、アクセス対象のブロック３０の色辺パターン２０は予め判明しているものとする。図２３（ａ），（ｂ）に例示する色辺パターン２０においては、その上辺は緑色であり、下辺は赤色である。
【００８５】
上段セル１４ａへの位置付けを行なう場合には、色辺検出部５１は、移動制御部５３にピッカー部２２０を上方に移動させながら、色辺パターン２０の上辺が、上段セル位置付け検出領域Ｒ３において検出されたか否かを判断する。そして、色辺パターン２０の上辺色（図２３（ａ）では緑）が上段セル位置付け検出領域Ｒ３において検出されると、色辺検出部５１は、上段セル１４ａに対する位置付けが完了したと判断し、移動制御部５３に対して、ピッカー部２２０の移動を停止させる。
【００８６】
すなわち、色辺検出部５１は、上段セル位置付け検出領域Ｒ３（55xx-59xx）に上辺色（緑）を検出するまで、ピッカー部２２０を上方向に移動させることにより、上段セル１４ａに対する位置付けを行なう。
一方、下段セル１４ｃへの位置付けを行なう場合には、色辺検出部５１は、移動制御部５３にピッカー部２２０を下方に移動させながら、色辺パターン２０の下辺が、下段セル位置付け検出領域Ｒ４において検出されたか否かを判断する。そして、色辺パターン２０の上辺色（図２３（ｂ）では赤）が上段セル位置付け検出領域Ｒ３において検出されると、色辺検出部５１は、下段セル１４ｃに対する位置付けが完了したと判断し、移動制御部５３に対して、ピッカー部２２０の移動を停止させる。
【００８７】
すなわち、色辺検出部５１は、下段セル位置付け検出領域Ｒ４（A5xx-A9xx）に下辺色（赤）を検出するまで、ピッカー部２２０を下方向に移動させることにより、下段セル１４ｃに対する位置付けを行なう。
このように、位置制御部５０は、ピッカー部２２０をブロック３０に対して位置付けた後に、このブロック３０内において、１段のセル１４分の上下移動を行なうことで、アクセス対象のセル１４（上段セル１４ａ，中段セル１４ｂおよび下段セル１４ｃ）への位置付けを実現する。
【００８８】
すなわち、アクセス対象のブロック３０において、当該ブロック３０に貼付されている色辺パターン２０の上辺を検出領域Ｒ３において検出することで、上段セル１４ａへの位置付けを行ない、また、色辺パターン２０の下辺を検出領域Ｒ４において検出することで、下段セル１４ｃへの位置付けを行なう。
位置判断部５２は、色辺検出部５１がカメラ画像において検出した色辺パターン２０に基づいて、カメラ２５０が撮影している色辺パターン２０を有するブロック３０を特定する。
【００８９】
例えば、位置判断部５２は、色辺検出部５１によって検出された色辺パターン２０に基づいてブロック位置情報２１６を参照することで、ブロック３０を特定する。
これにより、位置判断部５２は、カラーセル平面２００におけるアクセス予定のブロック３０に位置付けが行なわれているか否かを判断する。
（Ｂ）動作
上述の如く構成された、実施形態の一例としてのライブラリ装置１においては、ロボット１１に搭載されたカメラ２５０がカラーセル平面２００の画像を撮影する。位置制御部５０において、色辺検出部５１が、撮影されたカメラ画像に基づき、色辺パターン２０を検出する。
【００９０】
そして、位置判断部５２は、検出された色辺パターン２０に基づいてブロック位置情報２１６を参照することで、カメラ２５０によって撮影されたブロック３０の位置を特定することができる。これにより、カラーセル平面２００におけるピッカー部２２０（カメラ２５０）が対向している位置、すなわち、ピッカー部２２０の現在位置を容易に特定することができる。また、このような位置把握を行なうために、装置起動時等において原点の位置出し等を行なう必要がない。
【００９１】
ここで、カメラ画像において色辺パターン２０が検出されない場合には、以下の処理を行なう。
実施形態の一例としてのライブラリ装置１における移動先ブロック３０への移動制御手法の概要を、図２４に示すフローチャート（ステップＡ１〜Ａ６）に従って説明する。
ステップＡ１において、色辺検出部５１は、カメラ２５０によって撮影されたカメラ画像に、いずれかの色辺パターン２０を構成する４つの色辺２１が検出されたか否かを確認する。
【００９２】
確認の結果、カメラ画像中にいずれかの色辺パターン２０の４辺が検出されない場合には（ステップＡ１のＮＯルート参照）、ステップＡ２に移行する。
ステップＡ２において、色辺検出部５１は、いずれかの色辺パターン２０の４辺がカメラ画像に含まれるまで、移動制御部５３にピッカー部２２０を上下左右に移動させる。なお、このピッカー部２２０の移動量は、上下左右方向において最大で１ブロック分である。その後、ステップＡ１に戻る。
【００９３】
また、ステップＡ１における確認の結果、カメラ画像中にいずれかの色辺パターン２０の４辺が検出された場合には（ステップＡ１のＹＥＳルート参照）、ステップＡ３に移行する。
ステップＡ３において、位置判断部５２が、検出された色辺パターン２０に基づいてブロック位置情報２１６を参照することで、ピッカー部２２０の現在位置（現在ブロック３０，移動元ブロック３０）を特定する。
【００９４】
ステップＡ４において、移動制御部５３は、現在ブロック３０を移動元ブロック３０として、移動先ブロック３０までの相対距離を算出する。なお、移動先ブロック３０については、例えば、図示しないホストコンピュータ等から通知される。
ステップＡ５において、移動制御部５３は、算出した相対移動距離に基づき、ピッカー部２２０を移動先ブロック３０に移動させる。すなわち、移動制御部５３は、ピッカー部２２０が移動先ブロック３０に到達するよう、各モータ駆動回路２１５を介して、Ｘ軸駆動モータ１０６，Ｙ軸駆動モータ１０７およびＺ軸駆動モータ１０８をそれぞれ回転駆動させる。
【００９５】
ステップＡ６において、色辺検出部５１は、カメラ２５０によって撮影されたカメラ画像に、移動先ブロック３０（目的ブロック３０）の色辺パターン２０を構成する４つの色辺２１が検出されたか否かを確認する。
確認の結果、カメラ画像中に目的ブロック３０の色辺パターン２０の４辺が検出されない場合には（ステップＡ６のＮＯルート参照）、ステップＡ２に戻る。また、カメラ画像中に目的ブロック３０の色辺パターン２０の４辺が検出されている場合には（ステップＡ６のＹＥＳルート参照）、処理を終了する。
【００９６】
このように、カメラ画像に基づき、ピッカー部２２０の位置把握を行なうことができる。このようにして把握したピッカー部２２０の位置は、移動元ブロック３０として用いられる。
次に、実施形態の一例としてのライブラリ装置１の色辺検出部５１による色を検出するための制御を、図２５および図２６に示すフローチャート（ステップＢ１〜Ｂ２０）に従って説明する。なお、図２５はステップＢ１〜Ｂ１３の処理を示し、図２６はステップＢ１４〜Ｂ２０の処理を示す。
【００９７】
また、以下に示す例においては、ピッカー部２２０を右方向（＋Ｘ方向）に移動させる例について示す。また、変数Ｒには第１の検出にかかる検出範囲Ａ〜Ｄのいずれかが設定される。また、変数Ｒ′には第３の検出にかかる検出範囲Ａ′〜Ｄ′のいずれかが設定される。変数ａには、カメラ画像格納領域２１７におけるアドレス（画像アドレス）が設定される。データ検出カウンタＤｒ，Ｄｇ，Ｄｂには、それぞれ赤色の画素データ数，緑色の画素データ数，青色の画素データ数が設定される。
【００９８】
カメラ２５０によって撮影されたカメラ画像が揮発性メモリ２１３のカメラ画像格納領域２１７に読み込まれると、例えば色辺検出部５１は検出範囲の設定を行なう。本例においては、上述の如く、ピッカー部２２０を＋Ｘ方向へ移動させるので、検出範囲Ａが用いられる。そこで、検出範囲Ｒとして検出範囲Ａが設定される（図２５のステップＢ１）。
図２５のステップＢ２において、移動先ブロック３０（目的ブロック３０）の色辺パターン２０における、ピッカー部２２０の移動方向とは反対側（本例では左側）の色辺２１の色（第一検出色）が目的色として設定される。目的色は、上述したブロック位置情報２１６を参照することで取得することができる。なお、このステップＢ２において、検出１−１が開始される。
【００９９】
図２５のステップＢ３において、色辺検出部５１は、画像アドレスａおよびデータ検出カウンタＤｒ，Ｄｇ，Ｄｂを、それぞれリセットすることにより初期化する。
図２５のステップＢ４において、色辺検出部５１は、カメラ２５０からカメラ画像格納領域２１７への１画面分のカメラ画像の読み込みが完了したかを確認する。
確認の結果、カメラ画像のデータの読み込みが完了していない場合には（ステップＢ４のＮＯルート参照）、図２５のステップＢ５に移行する。
【０１００】
ステップＢ５において、色辺検出部５１は、カメラ画像格納領域２１７における画像アドレスａによって表される位置の１画素分のデータを読み込む。また、図２５のステップＢ６において、画像アドレスａの値をインクリメントする。
図２５のステップＢ７において、色辺検出部５１は、画像アドレスａによって表される位置が検出範囲Ｒ（検出範囲Ａ）内であるかを確認する。確認の結果、画像アドレスａによって表される位置が検出範囲Ｒ内ではない場合には（ステップＢ７のＮＯルート参照）、ステップＢ４に戻る。
【０１０１】
また、画像アドレスａによって表される位置が検出範囲Ｒ内である場合には（ステップＢ７のＹＥＳルート参照）、図２５のステップＢ８に移行する。
ステップＢ８において、色辺検出部５１は、ステップＢ５において読み込んだ画素データの色が赤であるかを確認する。画素データが赤である場合には（ステップＢ８のＹＥＳルート参照）、図２５のステップＢ９において、データ検出カウンタＤｒの値をインクリメントした後、ステップＢ４に戻る。
【０１０２】
一方、画素データが赤でない場合には（ステップＢ８のＮＯルート参照）、図２５のステップＢ１０において、色辺検出部５１は、ステップＢ５において読み込んだ画素データの色が緑であるかを確認する。画素データが緑である場合には（ステップＢ１０のＹＥＳルート参照）、図２５のステップＢ１１において、データ検出カウンタＤｇの値をインクリメントした後、ステップＢ４に戻る。
【０１０３】
一方、画素データが緑でない場合には（ステップＢ１０のＮＯルート参照）、図２５のステップＢ１２において、色辺検出部５１は、ステップＢ５において読み込んだ画素データの色が青であるかを確認する。画素データが青でない場合には（ステップＢ１２のＮＯルート参照）、ステップＢ４に戻る。また、画素データが青である場合には（ステップＢ１２のＹＥＳルート参照）、図２５のステップＢ１３において、データ検出カウンタＤｂの値をインクリメントした後、ステップＢ４に戻る。
【０１０４】
また、ステップＢ４における確認の結果、カメラ画像のデータの読み込みが完了すると（ステップＢ４のＹＥＳルート参照）、図２６のステップＢ１４に移行する。
ステップＢ１４において、色辺検出部５１は、データ検出カウンタＤｒ，Ｄｇ，Ｄｂの各値（カウント値）を比較して、ステップＢ２において設定した目的色に対応するカウント値が最大であるかを確認する。なお、目的色に対応するデータ検出カウンタの値をｄｘとする。
【０１０５】
目的色のカウント値が最大でない場合には（ステップＢ１４のＮＯルート参照）、ステップＢ３に戻る。
また、目的色のカウント値が最大である場合には（ステップＢ１４のＹＥＳルート参照）、図２６のステップＢ１５に移行する。
ステップＢ１５において、色辺検出部５１は、以下の式（１）を用いて、検出範囲Ｒ（検出範囲Ａ）内の全データ数（Ｘ）に対する、データ検出カウンタ（ｄｘ）の比率（Ｙ）を算出する。なお、比率（Ｙ）の単位は％である。
【０１０６】
Ｙ＝（ｄｘ／Ｘ）×１００  ・・・（１）
図２６のステップＢ１６において、色辺検出部５１は、算出した比率（Ｙ）が所定の閾値（本実施形態においては７０％）以上であるかを確認する。算出した比率（Ｙ）が７０％未満である場合には（ステップＢ１６のＮＯルート参照）、ステップＢ３に戻る。
また、算出した比率（Ｙ）が７０％以上である場合には（ステップＢ１６のＹＥＳルート参照）、図２６のステップＢ１７に移行する。ステップＢ１７において、色辺検出部５１は、検出１−２が完了したかを確認する。
【０１０７】
検出１−２が完了していない場合には（ステップＢ１７のＮＯルート参照）、図２６のステップＢ１８において、目的ブロック３０の色辺パターン２０における、他方の辺（本例では右側）の色（第二検出色）が目的色として設定される。これにより、検出１−２が開始され、ステップＢ３に移行する。  
検出１−２が完了した場合には（ステップＢ１７のＹＥＳルート参照）、図２６のステップＢ１９において、色辺検出部５１は、検出２が完了したかを確認する。
【０１０８】
検出２が完了した場合には（ステップＢ１９のＹＥＳルート参照）、処理を終了する。
一方、検出２が完了していない場合には（ステップＢ１９のＮＯルート参照）、検出２が開始され、図２６のステップＢ２０において検出範囲の設定が行なわれる。本例においては、上述の如く、ピッカー部２２０を＋Ｘ方向へ移動させるので、検出範囲Ａ′が用いられる。そこで、検出範囲Ｒ′として検出範囲Ａ′が設定され、ステップＢ３に移行する。
【０１０９】
なお、検出２においては、ステップＢ７，Ｂ１５において検出１−１，１−２では検出範囲Ｒであったところを、検出範囲Ｒ′として同様の処理が行なわれる。
また、例えば、ホストコンピュータによりアクセスするセル１４が指定されると、位置制御部５０は、ブロック位置情報２１６を参照して、このアクセス対象のセル１４が含まれるブロック３０を特定する。このようにして特定されたブロック３０が移動先ブロック３０となる。また、ブロック位置情報２１６を参照することで、移動先ブロック３０の位置情報と、当該ブロック３０に添付された色辺パターン２０とを取得することができる。
【０１１０】
また、前述した手法により、カメラ画像に基づき、ピッカー部２２０の位置把握が行なわれ、これにより、移動元ブロック３０が特定される。
そして、移動元ブロック３０の位置と移動先ブロック３０の位置とがわかることにより、移動先ブロック３０にアクセスするためのピッカー部２２０の移動方向が決定される。
移動制御部５３は、移動先ブロック３０の位置情報に合わせてピッカー部２２０を移動させることにより、ピッカー部２２０を対象のセル１４が含まれるブロック３０に位置付けする。
【０１１１】
また、移動制御部５３がピッカー部２２０を移動させて位置付けを行なう際には、カメラ２５０はカラーセル平面２００の画像を撮影し続ける。
位置制御部５０は、カメラ２５０によって撮影されたカラーセル平面２００のカメラ画像に基づき、ロボット１１（ピッカー部２２０）の位置制御を行なう。
実施形態の一例としてのライブラリ装置１における移動制御手法を図２７および図２８に示すフローチャート（ステップＣ０〜Ｃ２５）に従って説明する。なお、図２７はステップＣ０〜Ｃ２，Ｃ１４〜Ｃ２５を示し、図２８はステップＣ３〜Ｃ１３を示す。
【０１１２】
なお、以下に示す例においては、ピッカー部２２０を右方向（＋Ｘ方向）に移動させる例について示す。
図２７のステップＣ０において、移動制御部５３は、Ｆｌａｇ（検１−１）およびＦｌａｇ（検１−２）のそれぞれに“０”を設定することでリセット（初期化）する。
なお、Ｆｌａｇ（検１−１）は前述した第１の検出（検出１−１）による検出結果を示フラグである。すなわち、色辺検出部５１による検出１−１により、アクセス対象のブロック３０の色辺パターン２０の一辺（左辺）２１が検出された場合には、Ｆｌａｇ（検１−１）に“１”が設定される（Ｆｌａｇ（検１−１）＝１）。
【０１１３】
また、Ｆｌａｇ（検１−２）は前述した第２の検出（検出１−２）による検出結果を示フラグである。すなわち、色辺検出部５１による検出１−２により、アクセス対象のブロック３０の色辺パターン２０の他辺（右辺）２１が検出された場合には、Ｆｌａｇ（検１−２）に“１”が設定される（Ｆｌａｇ（検１−２）＝１）。
図２７のステップＣ１において、移動制御部５３は、モータ駆動回路２１５に対してＸ軸駆動モータ１０６を駆動させる指示を送信し、これにより、ピッカー部２２０が右方向（＋Ｘ方向）に移動を開始する
図２７のステップＣ２において、色辺検出部５１は、検出範囲Ｒにおいて、ブロック３０の色辺パターン２０の色が検出されたか判断する。
【０１１４】
ブロック３０の色辺パターン２０の色が検出されない場合には（ステップＣ２のＮＯルート参照）、図２８のステップＣ３に移行する。
ステップＣ３においては、色辺検出部５１は、カメラ画像において可動限界線４０１が検出されたかを判断する。
カメラ画像において可動限界線４０１が検出された場合には（ステップＣ３のＹＥＳルート参照）、ピッカー部２２０が可動限界線４０１を越えて、本来、あるべきでない位置に到達したことを意味する。
【０１１５】
そこで、図２８のステップＣ４において、色辺検出部５１は、移動制御部５３に対してピッカー部２２０の移動を停止させる。
また、図２８のステップＣ５において、移動制御部５３はユーザに対するエラー通知を行なう。移動制御部５３は、例えば、図示しないディスプレイ装置にエラーメッセージを出力したり、図示しないスピーカ等を用いてアラーム音を出力させる。その後、処理を終了（異常終了）する。
【０１１６】
また、ステップＣ３において、可動限界線４０１が検出されていない場合には（ステップＣ３のＮＯルート参照）、図２８のステップＣ６において、色辺検出部５１は、ステップＣ１において処理を開始してから、予め規定された時間（規定時間）を超過したかを判断する。経過時間が規定時間を超過していない場合には（ステップＣ６のＮＯルート参照）、ステップＣ２に戻る。
【０１１７】
一方、経過時間が規定時間を超過した場合には（ステップＣ６のＹＥＳルート参照）、図２８のステップＣ７において、色辺検出部５１は、移動制御部５３に対してピッカー部２２０の移動を停止させる。
その後、図２８のステップＣ８において、色辺検出部５１は移動制御部５３に対して、ステップＣ１においてモータ駆動回路２１５に行なわせた方向とは逆方向に、Ｘ軸駆動モータ１０６を駆動させる（逆転させる）。これにより、ピッカー部２２０が−Ｘ方向（左方向）に戻る。
【０１１８】
図２８のステップＣ９において、色辺検出部５１は、検出範囲Ｒにおいて、最後に検出した色を検出したかを確認する。すなわち、ピッカー部２２０が、最後に色辺２１が検出された位置まで戻ったかを確認する。
検出範囲Ｒにおいて、最後に検出した色が検出された場合には（ステップＣ９のＹＥＳルート参照）、図２８のステップＣ１０において、色辺検出部５１は、移動制御部５３にＸ軸駆動モータ１０６の駆動を停止させ、ピッカー部２２０の移動を停止させる。その後、ステップＣ１に戻り、本処理を最初から再度行なう。
【０１１９】
また、Ｘ軸駆動モータ１０６を逆転させても、最後に検出範囲Ｒにおいて検出した色が検出されない場合には（ステップＣ９のＮＯルート参照）、図２８のステップＣ１１に移行する。
ステップＣ１１において、色辺検出部５１は、ステップＣ１において処理を開始してから、予め規定された時間（規定時間）を超過したかを判断する。経過時間が規定時間を超過していない場合には（ステップＣ１１のＮＯルート参照）、ステップＣ９に戻る。
【０１２０】
一方、経過時間が規定時間を超過した場合には（ステップＣ１１のＹＥＳルート参照）、図２８のステップＣ１２において、色辺検出部５１は、移動制御部５３に対してピッカー部２２０の移動を停止させる。
その後、ステップＣ１３において、移動制御部５３はユーザに対するエラー通知を行なう。移動制御部５３は、例えば、図示しないディスプレイ装置にエラーメッセージを出力したり、図示しないスピーカ等を用いてアラーム音を出力させる。その後、処理を終了（異常終了）する。
【０１２１】
また、図２７のステップＣ２における確認の結果、ブロック３０の色辺パターン２０の色が検出された場合には（ステップＣ２のＹＥＳルート参照）、図２７のステップＣ１４に移行する。
ステップＣ１４において、移動制御部５３は、Ｆｌａｇ（検１−１）＝１であるか確認する。確認の結果、Ｆｌａｇ（検１−１）＝１でない場合、すなわち、検出１−１が行なわれていない場合には（ステップＣ１４のＮＯルート参照）、図２７のステップＣ１５に移行する。
【０１２２】
ステップＣ１５において、検出１−１が行なわれる。すなわち、色辺検出部５１は、検出範囲Ｒにおいて、目的ブロック３０の色辺パターン２０における、ピッカー部２２０の移動方向とは反対側の色辺２１（本例では左辺）の色が検出されたか判断する。
検出範囲Ｒにおいて目的ブロック３０の色辺パターン２０の左辺の色が検出されない場合には（ステップＣ１５のＮＯルート参照）、ステップＣ２に戻る。
【０１２３】
また、ステップＣ１５における確認の結果、検出範囲Ｒにおいて目的ブロック３０の色辺パターン２０の左辺の色が検出された場合には（ステップＣ１５のＹＥＳルート参照）、図２７のステップＣ１６に移行する。
ステップＣ１６において、移動制御部５３は、Ｆｌａｇ（検１−１）に“１”を設定する（Ｆｌａｇ（検１−１）＝１）。
【０１２４】
その後、図２７のステップＣ１７において、移動制御部５３は、Ｆｌａｇ（検１−２）＝１であるか確認する。確認の結果、Ｆｌａｇ（検１−２）＝１でない場合、すなわち、検出１−２が行なわれていない場合には（ステップＣ１７のＮＯルート参照）、図２７のステップＣ１８に移行する。
また、ステップＣ１４における確認の結果、Ｆｌａｇ（検１−１）＝１である場合、すなわち、検出１−１が行なわれている場合にも（ステップＣ１４のＹＥＳルート参照）、ステップＣ１７に移行する。
【０１２５】
ステップＣ１８においては、検出１−２が行なわれる。すなわち、色辺検出部５１は、検出範囲Ｒにおいて、次に検出された色が、目的ブロック３０の色辺パターン２０における、ピッカー部２２０の移動方向の色辺２１（本例では右辺）の色であるか判断する。
検出範囲Ｒにおいて目的ブロック３０の色辺パターン２０の右辺の色が検出されない場合には（ステップＣ１８のＮＯルート参照）、ステップＣ１９において、移動制御部５３は、Ｆｌａｇ（検１−１）に“０”を設定（リセット）した後、ステップＣ２に戻る。
【０１２６】
また、検出範囲Ｒにおいて目的ブロック３０の色辺パターン２０の右辺の色が検出された場合には（ステップＣ１８のＹＥＳルート参照）、図２７のステップＣ２０に移行する。
ステップＣ２０において、移動制御部５３は、Ｆｌａｇ（検１−２）に“１”を設定する（Ｆｌａｇ（検１−１）＝１）。
【０１２７】
その後、図２７のステップＣ２１において、色辺検出部５１は、移動制御部５３にピッカー部２２０の移動速度を低下させる（減速させる）。
その後、図２７のステップＣ２２において、検出２が行なわれる。すなわち、色辺検出部５１は、検出範囲Ｒ′において、目的ブロック３０の色辺パターン２０における、ピッカー部２２０の移動方向側の色辺２１（本例では右辺）の色が検出されたか判断する。
【０１２８】
検出範囲Ｒにおいて目的ブロック３０の色辺パターン２０の右辺の色が検出されない場合には（ステップＣ２２のＮＯルート参照）、図２７のステップＣ２３に移行する。ステップＣ２３において、色辺検出部５１は、ステップＣ１において処理を開始してから、予め規定された時間（規定時間）を超過したかを判断する。経過時間が規定時間を超過していない場合には（ステップＣ２３のＮＯルート参照）、ステップＣ２２に戻る。
【０１２９】
一方、経過時間が規定時間を超過した場合には（ステップＣ２３のＹＥＳルート参照）、図２７のステップＣ２４に移行する。
ステップＣ２４において、移動制御部５３は、Ｆｌａｇ（検１−２）に“０”を設定することでリセットし、その後、ステップＣ７に移行する。
また、検出範囲Ｒにおいて目的ブロック３０の色辺パターン２０の右辺の色が検出された場合には（ステップＣ２２のＹＥＳルート参照）、図２７のステップＣ２５において、色辺検出部５１は、移動制御部５３に対してピッカー部２２０の移動を停止させる。これにより、処理が正常に終了する。
【０１３０】
（Ｃ）効果
このように、実施形態の一例としてのライブラリ装置１によれば、収納棚１０において、連続する複数のセル１４を一つのブロック３０とし、ブロック３０毎に異なる色辺パターン２０を貼付する。
そして、この色辺パターン２０をカメラ２５０によって撮影し、色辺検出部５１がその色辺パターン２０を認識する。そして、位置判断部５２が、色辺パターン２０に基づいてブロック位置情報２１６を参照することで、各ブロック３０の位置を特定する。
【０１３１】
色辺パターン２０の検出は、文字や数字を用いて文字認識や図形認識を行なう場合に比べて、処理が簡単且つ低負荷な色認識により実現される。従って、短時間且つ低負荷で処理することができ、位置制御を高速化することができる。また、高価なプロセッサやその周辺回路も不要となり、これによってもコストを低減することができる。
エンコーダを備えることなく、ピッカー部２２０の位置制御を行なうことができ、エンコーダやその制御回路を不要とすることで、コストの低減および装置の小型化を実現することができる。
【０１３２】
また、エンコーダが不要であるので、装置起動時等においてロボットの基準位置を認識するためのイニシャライズ動作が不要となり、装置起動時間を短縮することができる。
（Ｄ）その他
本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
【０１３３】
例えば、収納棚１０に備えられるセル１４の数は、適宜変更して実施することができる。
また、上述した実施形態では、被搬送物としてカートリッジを保管するライブラリ装置１を例示したが、本発明は、カートリッジ以外の被搬送物を保管する保管装置や配送装置等にも適用でき、被搬送物がカートリッジに限定されるものではない。
【０１３４】
また、上述した実施形態では、１つのロボット１１を備えたライブラリ装置を例示したが、本発明は、このような１つの搬送ロボットを備えたものに限定されるものではなく、２以上の搬送ロボットを備えるライブラリ装置や、このような搬送ロボットを用いた搬送装置に適用できるものである。
また、上述した実施形態では、１つの収納棚１０を備えたライブラリ装置を例示したが、本発明は、このような１つの収納棚１０を備えたものに限定されるものではなく、２以上の収納棚１０を備えるライブラリ装置や、このような収納棚１０を用いた収納装置に適用できるものである。
【０１３５】
また、上述した実施形態において、カラーセル平面２００を構成する色辺２１の配置は図２，図３および図４に示したものに限定されるものではなく、種々変形して実施することができる。
例えば、色辺２１に使用する色数をｎとする場合に、ライブラリ装置１の組立毎に、ｎ４種類の色辺パターン２０の中からブロック３０の数に応じた色辺パターン２０を選択してカラーセル平面２００を構成してもよい。これにより、装置毎にカラーセル平面２００を設定することができる。
【０１３６】
また、上述した実施形態においては、色辺パターン２０を３色の色辺２１のいずれかを用いて構成しているが、これに限定されるものではなく、２色もしくは４色以上の色辺２１を用いてもよい。使用する色数を増加させることで、識別可能なブロック３０の数を増やすことができる。
ただし、色辺２１に使用する色は、色辺パターン検出部５１において色の誤認識が生じない程度に異なるものであることが望ましい。
【０１３７】
また、上述した実施形態においては、カラーセル平面２００を複数色の色辺２１を組み合わせることで実現しているが、これに限定されるものではない。
図２９は実施形態の変形例としてのカラーセル平面２００を示す図である。この図２９に示すカラーセル平面２００においては、セル群１４１において、色辺２１に代えてライトパイプ５０１を、上下方向および左右方向にそれぞれ連通するように配置されている。これにより、ライトパイプ５０１は、カラーセル平面２００において格子状に配置されている。
【０１３８】
ライトパイプ５０１は、全反射を利用して入射口から出射口まで光を伝える発光部材であり、ＬＥＤ５０２から光が入射されると発光しながら入射光を伝搬させる。
ＬＥＤ５０２は、任意に発光する発光源であり、それぞれ制御ボード２０１のＦＰＧＡ２１４の制御により発光する
ＣＰＵ２１１（発光ブロック特定部）は、アクセス対象のブロック３０について、その４辺を含む４つのライトパイプ５０１を特定し、これらのライトパイプ５０１に対応するＬＥＤ５０２を発光させる。
【０１３９】
図２９に示す例では、符号Ｐ４で示すブロック３０に位置付けを行なうために、このブロック３０の４辺を含む４つのライトパイプ５０１を発光させた状態を示している。すなわち、ＣＰＵ２１１は、これらの発光対象のライトパイプ５０１に対応するＬＥＤ５０２を発光させる。
そして、位置制御部５０は、このようにライトパイプ５０１によって発光したブロック３０の４辺を、上述した色辺パターン２０と同様に取り扱うことで、このブロック３０に対する位置付けが行なわれる。
【０１４０】
また、上述した開示により本実施形態を当業者によって実施・製造することが可能である。
（Ｅ）付記
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）
被収納物を収納するセルを複数備えた収納棚と、
１以上の色の色辺を組み合わせて構成され、前記収納棚における複数の位置に貼付されるとともに、前記複数の位置毎に異なる色の色辺の組み合わせとして構成される色辺パターンと、
前記色辺パターンと前記収納棚における位置とを関係付ける位置管理情報を格納する格納部と、
前記セルに前記被収納物を搬入し、又は前記セルから前記被収納物を搬出する動作を行なうロボットとともに移動しながら、前記色辺パターンを撮影する撮影部と、
前記撮影部によって撮影された前記色辺パターンの画像に基づき、前記位置管理情報を参照することで、前記ロボットの位置を特定する特定部と
を備えることを特徴とする、自動収納装置。
【０１４１】
（付記２）
前記収納棚において隣り合う複数の前記セルのグループ毎に、異なる前記色辺パターンが貼付される
ことを特徴とする、付記１記載の自動収納装置。
（付記３）
前記色辺パターンが、前記セルを環囲する枠形状を有し、
前記撮影部によって撮影された画像における第１の領域において前記色辺パターンの第１の色辺が検出され、
前記撮影部によって撮影された画像における第２の領域において前記色辺パターンの第２の色辺が検出された場合に、前記ロボット１１の移動を減速させる減速制御部
を備えることを特徴とする、付記１又は２記載の自動収納装置。
【０１４２】
（付記４）
前記撮影部によって撮影された画像における第１の領域において前記色辺パターンの第１の色辺が検出され、
前記撮影部によって撮影された画像における第２の領域において前記色辺パターンの第２の色辺が検出された後、
前記撮影部によって撮影された画像における第３の領域において前記色辺パターンの第３の色辺が検出された場合に、前記ロボットの移動を停止させる停止制御部
を備えることを特徴とする、付記３記載の自動収納装置。  
【０１４３】
（付記５）
被収納物を収納するセルを複数備えた収納棚と、
１以上の色の色辺を組み合わせて構成され、前記収納棚における複数の位置に貼付されるとともに、前記複数の位置毎に異なる色の色辺の組み合わせとして構成される色辺パターンと、
前記色辺パターンと前記収納棚における位置とを関係付ける位置管理情報を格納する格納部と、
前記セルに前記被収納物を搬入し、又は前記セルから前記被収納物を搬出する動作を行なうロボットとともに移動しながら、前記色辺パターンを撮影する撮影部と、をそなえた自動収納装置において、
前記撮影部によって撮影された画像において、前記色辺パターンを検出する処理と、
検出した前記色辺パターンに基づいて、前記位置管理情報を参照することで、前記ロボットの位置を特定する処理と
を備えることを特徴とする、位置制御方法。
【０１４４】
（付記６）
前記収納棚において隣り合う複数の前記セルのグループ毎に、異なる前記色辺パターンが貼付される
ことを特徴とする、付記５記載の位置制御方法。
（付記７）
前記色辺パターンが、前記セルを環囲する枠形状を有し、
前記撮影部によって撮影された画像における第１の領域において前記色辺パターンの第１の色辺を検出した後に、前記撮影部によって撮影された画像における第２の領域において前記色辺パターンの第２の色辺が検出した場合に、前記ロボット１１の移動を減速させる処理
を備えることを特徴とする、付記５又は６記載の位置制御方法。  
【０１４５】
（付記８）
前記撮影部によって撮影された画像における第１の領域において前記色辺パターンの第１の色辺が検出され、前記撮影部によって撮影された画像における第２の領域において前記色辺パターンの第２の色辺が検出された後、前記撮影部によって撮影された画像における第３の領域において前記色辺パターンの第３の色辺が検出された場合に、前記ロボットの移動を停止させる処理
を備えることを特徴とする、付記７記載の位置制御方法。  
【符号の説明】
【０１４６】
１    ライブラリ装置
１０    収納棚
１４    セル
１４１    セル群
１１    ロボット
１０６    Ｘ軸駆動モータ
１０７    Ｙ軸駆動モータ
１０８    Ｚ軸駆動モータ
２０    色辺パターン
２１    色辺
３０    ブロック
５０    位置制御部
５１    色辺検出部
５２    位置判断部
５３    移動制御部
２００    カラーセル平面
２０１    制御ボード
２１１    ＣＰＵ
２１３    揮発性メモリ
２１７    カメラ画像格納領域
２１４    ＦＰＧＡ
２１５    モータ駆動回路
２１６    ブロック位置情報
２１７    カメラ画像格納領域
２２０    ピッカー部  
２５０    ２次元カメラ
２５１    撮像素子
４０１    可動限界線
５０１    ライトパイプ
５０２    ＬＥＤ
Ｒ１，Ｒ１ａ，Ｒ１ｂ，Ｒ１ｃ，Ｒ１ｄ    第１検出領域
Ｒ２，Ｒ２ａ，Ｒ２ｂ，Ｒ２ｃ，Ｒ２ｄ    第２検出領域
Ｒ３    上段セル位置付け検出領域
Ｒ４    下段セル位置付け検出領域
【図１】
2017068889.tif 000003
【図２】
2017068889.tif 000004
【図３】
2017068889.tif 000005
【図４】
2017068889.tif 000006
【図５】
2017068889.tif 000007
【図６】
2017068889.tif 000008
【図７】
2017068889.tif 000009
【図８】
2017068889.tif 000010
【図９】
2017068889.tif 000011
【図１０】
2017068889.tif 000012
【図１１】
2017068889.tif 000013
【図１２】
2017068889.tif 000014
【図１３】
2017068889.tif 000015
【図１４】
2017068889.tif 000016
【図１５】
2017068889.tif 000017
【図１６】
2017068889.tif 000018
【図１７】
2017068889.tif 000019
【図１８】
2017068889.tif 000020
【図１９】
2017068889.tif 000021
【図２０】
2017068889.tif 000022
【図２１】
2017068889.tif 000023
【図２２】
2017068889.tif 000024
【図２３】
2017068889.tif 000025
【図２４】
2017068889.tif 000026
【図２５】
2017068889.tif 000027
【図２６】
2017068889.tif 000028
【図２７】
2017068889.tif 000029
【図２８】
2017068889.tif 000030
【図２９】
2017068889.tif 000031