(57)【要約】【課題】大量の記憶媒体の搬送時間を短縮することを課題とする。【解決手段】ライブラリ装置は、収納棚と、前記収納棚に収納される記憶媒体をそれぞれ搬送する第１ロボットと第２ロボットとを備え、前記第１ロボットと前記第２ロボットは、それぞれ、ハンド装置と、記憶媒体を一時的に収納するスロットが設けられた搬送体と、前記スロットの開口部が一方のロボットが備えるハンド装置と対向する向きと他方のロボットが備えるハンド装置と対向する向きとなるように前記搬送体を回転させる回転装置と、前記回転装置を作動させるスイッチ装置と、を備える。これにより、大量の記憶媒体の搬送時間を短縮することができる。【選択図】図３
2014149904.tif 000002
【特許請求の範囲】
【請求項１】
収納棚と、
前記収納棚に収納される記憶媒体をそれぞれ搬送する第１ロボットと第２ロボットとを備え、
前記第１ロボットと前記第２ロボットは、それぞれ、
ハンド装置と、前記記憶媒体を一時的に収納するスロットが設けられた搬送体と、前記スロットの開口部が少なくとも一方のロボットが備えるハンド装置と対向する向きと他方のロボットが備えるハンド装置と対向する向きとなるように前記搬送体を回転させる回転装置と、前記回転装置を作動させるスイッチ装置と、
を備えるライブラリ装置。
【請求項２】
前記回転装置は前記第１ロボット及び前記第２ロボットがそれぞれ備える固定ベース部に立設され、表面に螺糸部が設けられた回転シャフトと、前記螺糸部と螺合し、前記回転シャフトの軸方向に沿った昇降動作を行うことにより、前記回転シャフトを回転させるレバー部材と、前記回転シャフトの回転を前記搬送体に伝達する回転伝達部を備える請求項１に記載のライブラリ装置。
【請求項３】
前記スイッチ装置は、昇降移動する前記ハンド装置である請求項１又は２に記載のライブラリ装置。
【請求項４】
前記第１ロボットと前記第２ロボットとは、同一軌道上に配置され、前記第１ロボットが備える前記搬送体と前記第２ロボットが備える前記搬送体は、前記軌道と直交する方向にずらして配置された請求項１乃至３のいずれか一項に記載のライブラリ装置。
【請求項５】
前記収納棚と対向する位置から外れた位置に前記第１ロボット及び前記第２ロボットのいずれかを退避させる退避部を備えた請求項１乃至４のいずれか一項に記載のライブラリ装置。
【請求項６】
少なくとも収納棚と、前記収納棚の並びに沿って走行し、前記収納棚に収納される記憶媒体を搬送するとともに、複数の前記記憶媒体を一時的に収納する搬送体を有するロボットと、を備えるライブラリ装置を制御する制御装置であって、
前記ロボットが行う複数のジョブに含まれる前記記憶媒体の搬送の順序を、前記ロボットが一方向に向かいながらジョブ実行できる順に設定する搬送順決定処理を行うジョブ判定部を備えるライブラリ装置の制御装置。
【請求項７】
前記ライブラリ装置は、前記ロボットの基準位置が設定されるとともに、前記基準位置の左右方向に前記収納棚を配置し、
前記ジョブ判定部は、前記複数のジョブを前記基準位置よりも左側に配置された前記収納棚に対する左側ジョブと、前記基準位置よりも右側に配置された前記収納棚に対する右側ジョブとに振り分け、前記左側ジョブと、前記右側ジョブ毎に前記搬送順決定処理を行う請求項６に記載のライブラリ装置の制御装置。
【請求項８】
前記ジョブ判定部は、前記左側ジョブに対する前記搬送順決定処理及び前記右側ジョブに対する前記搬送順決定処理において、それぞれ、前記搬送順を前記基準位置から離れた位置から前記基準位置に近づく順に設定する請求項７に記載のライブラリ装置の制御装置。
【請求項９】
前記ジョブ判定部は、前記左側ジョブ及び前記右側ジョブに対し、それぞれのジョブ数と、前記搬送体が備えるスロットの数とを比較して、前記スロットの全数を満たさない余りのジョブ数を算出し、前記左側ジョブの余りのジョブ数と前記右側ジョブの余りのジョブ数との加算数が、前記スロットの数を越えるか否かの判定を行い、前記加算数が前記スロット数以下の場合は、前記余りのジョブを結合し、前記加算数が前記スロット数を越える場合は、前記余りのジョブの結合を行わない請求項７又は８に記載のライブラリ装置の制御装置。
【請求項１０】
収納棚と、
前記収納棚に収納される記憶媒体をそれぞれ搬送する第１ロボットと第２ロボットとを備えるライブラリ装置を制御する制御装置であって、
前記第１ロボットと前記第２ロボットは、それぞれ、ハンド装置と、前記記憶媒体を一時的に収納するスロットが設けられた搬送体と、前記スロットの開口部が少なくとも一方のロボットが備えるハンド装置と対向する向きと他方のロボットが備えるハンド装置と対向する向きとなるように前記搬送体を回転させる回転装置と、前記回転装置を作動させるスイッチ装置と、を備え、
一方のロボットが故障したときに、前記故障したロボットが備える搬送体のスロット内に収納された記憶媒体を、他方のロボットが備える搬送体のスロットに移し替え、運用継続処理を行うジョブ判定部を備えるライブラリ装置の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ライブラリ装置及びライブラリ装置の制御装置に関する。
【背景技術】
【０００２】
近年、電子装置が扱うデータ量の増加に伴い、複数のスロットが設けられた収納棚を備え、大量の磁気テープカートリッジやディスクカートリッジ等の記憶媒体を収納するライブラリ装置が用いられている。このようなライブラリ装置は、記憶媒体に対してデータの読み書きを行う一又は複数のテープドライブを備え、スロットとテープドライブとの間で記憶媒体を移動させるロボットを備える。ロボットは、メールスロット等の記憶媒体の投入排出部とスロットとの間の記憶媒体の移動も行う。ライブラリ装置は、複数のサーバと接続されて用いられることも多い。このようなライブラリ装置では、複数のサーバからジョブ指令が発せられる等、ロボットが大量の記憶媒体を運搬しなければならないことがある。移動させるべき記憶媒体の数が増せば、ロボットの動作時間が長期化し、全てのジョブが完了するまでに時間がかかる。このため、記憶媒体の搬送時間の短縮が求められている。
【０００３】
記憶媒体の搬送時間を短縮する提案として、例えば、搬送機構が、２枚のカートリッジ（記憶媒体）をそれぞれ収納し、取り出し、挿入されるように構成された大容量ディスク記憶装置が知られている（特許文献１参照）。この大容量ディスク記憶装置は、交換すべきカートリッジをまず搬送機構の一方の収納部内に取り込む。次いで、大容量ディスク記憶装置は、交換されるカートリッジのある所へ搬送機構を移動させた後、交換されるカートリッジを搬送機構の他方の収納部に取り込んでその部分を空とする。次いで、大容量ディスク記憶装置は、搬送機構の上記一方の収納部内に取り込んでいるカートリッジを上記空の場所に挿入してカートリッジの交換を終了する。同様の提案は、種々行われている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開昭６３−１８７４５６号公報
【特許文献２】特開平１−３１９１６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１や特許文献２に開示された大容量ディスク記憶装置は、一のスロット（収納部）における記憶媒体の入れ換え動作の時間を短縮するものである。従って、大量の記憶媒体の搬送要請に対して、依然として改良の余地を有している。
【０００６】
そこで、本明細書開示のライブラリ装置及びライブラリ装置の制御装置は、大量の記憶媒体の搬送時間を短縮することを課題とする。
【課題を解決するための手段】
【０００７】
本明細書開示のライブラリ装置は、収納棚と、前記収納棚に収納される記憶媒体をそれぞれ搬送する第１ロボットと第２ロボットとを備え、前記第１ロボットと前記第２ロボットは、それぞれ、ハンド装置と、前記記憶媒体を一時的に収納するスロットが設けられた搬送体と、前記スロットの開口部が少なくとも一方のロボットが備えるハンド装置と対向する向きと他方のロボットが備えるハンド装置と対向する向きとなるように前記搬送体を回転させる回転装置と、前記回転装置を作動させるスイッチ装置と、を備える。
【０００８】
ライブラリ装置は、記憶媒体を一時的に収納することができる搬送体を第１ロボット及び第２ロボットにそれぞれ備えているので、複数の記憶媒体を同時に搬送して分配することができ、搬送時間を短縮することができる。
【０００９】
本明細書のライブラリ装置の制御装置は、少なくとも収納棚と、前記収納棚の並びに沿って走行し、前記収納棚に収納される記憶媒体を搬送するとともに、複数の前記記憶媒体を一時的に収納する搬送体を有するロボットと、を備えるライブラリ装置を制御する制御装置であって、前記ロボットが行う複数のジョブに含まれる前記記憶媒体の搬送の順序を、前記ロボットが一方向に向かいながらジョブ実行できる順に設定する搬送順決定処理を行うジョブ判定部を備える。これにより、大量の記憶媒体の搬送時間を短縮することができる。
【００１０】
また、本明細書開示のライブラリ装置の制御装置は、収納棚と、前記収納棚に収納される記憶媒体をそれぞれ搬送する第１ロボットと第２ロボットとを備えるライブラリ装置を制御する制御装置であって、前記第１ロボットと前記第２ロボットは、それぞれ、ハンド装置と、前記記憶媒体を一時的に収納するスロットが設けられた搬送体と、前記スロットの開口部が少なくとも一方のロボットが備えるハンド装置と対向する向きと他方のロボットが備えるハンド装置と対向する向きとなるように前記搬送体を回転させる回転装置と、前記回転装置を作動させるスイッチ装置と、を備え、一方のロボットが故障したときに、前記故障したロボットが備える搬送体のスロット内に収納された記憶媒体を、他方のロボットが備える搬送体のスロットに移しかえる運用継続処理を行うジョブ判定部を備える。一方のロボットが故障したときでも運用を継続することができ、大量の記憶媒体の搬送時間を短縮することができる。
【発明の効果】
【００１１】
本明細書開示のライブラリ装置及びライブラリ装置の制御装置によれば、大量の記憶媒体の搬送時間を短縮することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は実施形態のライブラリ装置を示す説明図である。
【図２】図２は実施形態のライブラリ装置のブロック図である。
【図３】図３は実施形態のライブラリ装置が備える第１ロボットと第２ロボットを示す説明図である。
【図４】図４は実施形態の第１ロボットと第２ロボットがそれぞれ備える搬送体周辺を示す説明図である。
【図５】図５は実施形態の第１ロボットと第２ロボットがそれぞれ備える搬送体周辺の分解図である。
【図６】図６は実施形態の第１ロボットと第２ロボットがそれぞれ備える回転装置の説明図である。
【図７】図７（Ａ）は搬送体の上部の支持部分を分解して示す説明図であり、図７（Ｂ）は搬送体の上部の支持部分を示す説明図である。
【図８】図８（Ａ）は搬送体の下部の支持部分を分解して示す説明図であり、図８（Ｂ）は搬送体の下部の支持部分を示す説明図である。
【図９】図９（Ａ）は搬送体の支持部の斜視図であり、図９（Ｂ）は搬送体の支持部の側面図である。
【図１０】図１０（Ａ）、（Ｂ）、（Ｃ）は搬送体が回転する様子を示す説明図である。
【図１１】図１１（Ａ）、（Ｂ）は搬送体が備えるスロットに収納された記憶媒体をハンド装置が把持する様子を示す説明図である。
【図１２】図１２（Ａ）、（Ｂ）は収納棚に収納された記憶媒体を搬送体へ移動させる様子を示す説明図である。
【図１３】図１３は搬送体に収納された記憶媒体をテープドライブの前まで搬送する様子を示す説明図である。
【図１４】図１４は搬送体が備えるスロットに収納された記憶媒体をテープドライブへ移動させる様子を示す説明図である。
【図１５】図１５は記憶媒体の投入排出部から収納棚へ記憶媒体を移動させる様子を示す説明図である。
【図１６】図１６（Ａ）、（Ｂ）は一方のロボットが故障したときに他方のロボットによって故障したロボットを退避部へ退避させる様子を示す説明図である。
【図１７】図１７（Ａ）、（Ｂ）は一方のロボットが故障したときに、搬送体のスロットの開口部を他方のロボットが備えるハンド装置に対向するように回転させる様子を示す説明図である。
【図１８】図１８は故障したロボットが備える搬送体に収納された記憶媒体を他方のロボットが備える搬送体へ移動させる様子を示す説明図である。
【図１９】図１９は故障していないロボットによりライブラリ装置の運用が継続される様子を示す説明図である。
【図２０】図２０はロボットの修理後、搬送体の向きを元の状態に復帰させる様子を示す説明図である。
【図２１】図２１は実施形態のライブラリ装置が備えるテープライブラリ・コントローラの機能ブロック図である。
【図２２】図２２は実施形態のライブラリ装置におけるテープドライブへ記憶媒体を投入する際の動作の一例を示すフロー図である。
【図２３】図２３は実施形態のライブラリ装置が行う搬送順決定処理の一例を示すフロー図である。
【図２４】図２４は実施形態の搬送順決定処理におけるソート処理の一例を示す説明図である。
【図２５】図２５は実施形態のライブラリ装置が行うジョブ分配処理の一例を示すフロー図である。
【図２６】図２６は実施形態におけるジョブ分配処理の一例を示す説明図である。
【図２７】図２７は実施形態におけるジョブ分配処理の他の例を示す説明図である。
【図２８】図２８は実施形態のライブラリ装置が搬送体へ記憶媒体を回収する際の制御の一例を示すフロー図である。
【図２９】図２９は実施形態のライブラリ装置が搬送体からテープドライブへ記憶媒体を搬送する際の制御の一例を示すフロー図である。
【図３０】図３０は実施形態のライブラリ装置へ投入排出部から記憶媒体を投入する際の動作の一例を示すフロー図である。
【図３１】図３１は実施形態のライブラリ装置から投入排出部へ記憶媒体を排出する際の動作の一例を示すフロー図である。
【図３２】図３２は２台のロボットのうち、一方のロボットが故障した際にライブラリ装置の運用継続をする制御の一例を示すフロー図である。
【図３３】図３３は故障した一方のロボットから他方のロボットへ記憶媒体を移し替る処理の一例を示すフロー図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態について、添付図面を参照しつつ説明する。ただし、図面中、各部の寸法、比率等は、実際のものと完全に一致するようには図示されていない場合がある。また、図面によっては、説明の都合上、実際には存在する構成要素が省略されている場合がある。
【００１４】
（実施形態）
図１は実施形態のライブラリ装置１を示す説明図である。図２は実施形態のライブラリ装置１のブロック図である。本実施形態のライブラリ装置１は、磁気テープカートリッジを記憶媒体１４としているが、磁気ディスクカートリッジ等、他の記憶媒体であっても同様に用いることができる。なお、以下の説明において、左右方向、前後方向及び上下方向は、図１に示す方向として説明する。
【００１５】
ライブラリ装置１は、内部に収納棚２や、テープドライブ４が収納された複数の筐体Ａ１〜Ａ７を繋ぎ合わせて形成されている。これらの筐体Ａ１〜Ａ７のうち、筐体Ａ２、Ａ３、Ａ５、Ａ６内には、収納棚２が格納されている。収納棚２は、各筐体Ａ２、Ａ３、Ａ５、Ａ６内でスロット３の開口部が対向するように配置されている。七つの筐体のうち、中央部に位置する筐体Ａ４内には、複数のテープドライブ４が格納されている。このように、収納棚２を格納する筐体とテープドライブ４を格納する筐体とを分けることにより、テープドライブ４間の接続が容易となり、電源供給し易くなる。また、テープドライブ４に接続されるケーブル等を効率よくするフォーミングすることができる。このようなライブラリ装置１は、中心部を第１ロボット２０及び第２ロボットの基準位置とする。そして、この基準位置の左右方向に収納棚２を配置している。ここで、基準位置は、第１ロボット２０又は第２ロボット４０が筐体Ａ４内に位置し、テープドライブ４と対向する位置である。基準位置は、後に詳述する搬送順決定処理における基準となる位置であり、厳密に一点を指すものではない。また、基準位置は、必ずしもテープライブラリ装置の中心部に設定されていなくてもよい。すなわち、基準位置の左側に配置された収納棚２の数と基準位置の右側に配置された収納棚２の数とが一致していなくてもよい。収納棚２を格納する筐体Ａ２、Ａ３、Ａ５、Ａ６のうち、端部に位置する筐体Ａ２と筐体Ａ６には、記憶媒体１４の投入排出部５が設けられている。投入排出部５は、筐体Ａ２と筐体Ａ６に対し脱着可能であり、一度に大量の記憶媒体の投入又は排出を行うことができる。端部に位置する筐体Ａ２と筐体Ａ６のさらに外側には、退避部６を形成する筐体Ａ１及び筐体Ａ７が接続されている。退避部６については、後に詳説する。なお、筐体の数は、収納棚２の数や、テープドライブ４の数といったライブラリ装置１の規模に応じて適宜変更することができる。
【００１６】
ライブラリ装置１は、収納棚２に収納される記憶媒体１４をそれぞれ搬送する第１ロボット２０及び第２ロボット４０を備える。第１ロボット２０及び第２ロボット４０は、同一軌道上、すなわち、レール７上に配置されている。第１ロボット２０及び第２ロボット４０については、後に詳説する。
【００１７】
図２を参照すると、ライブラリ装置１は、テープライブラリ・コントローラ８を備える。テープライブラリ・コントローラ８は、ライブラリ装置の制御装置に相当する。テープライブラリ・コントローラ８には、ＨＢＡ（Host Bus Adapter）１２を介してサーバ１３が接続されている。また、テープライブラリ・コントローラ８には、第１ロボット２０を制御する第１ロボットコントローラ１０と、第２ロボット４０を制御する第２ロボットコントローラ１１が接続されている。さらに、テープライブラリ・コントローラ８には、テープドライブコントローラ９を介してテープドライブ４が接続されている。
【００１８】
つぎに、図３乃至図１０を参照して、第１ロボット２０及び第２ロボット４０について、詳細に説明する。なお、第１ロボット２０と第２ロボット４０とは、ほぼ同一の構成であるため、主として第１ロボット２０について説明し、第２ロボット４０については、第１ロボット２０との相違点について説明する。
【００１９】
図３、図４を参照すると、第１ロボット２０は、フレーム部２１を備える。フレーム部２１は、上下方向に延びる支柱部２１ａと、これに直交し、左右方向に延びるシャーシ部２１ｂを備える。支柱部２１には、長手方向に沿って昇降ベース部２４が摺動するレール部２１ａ１が設けられている。シャーシ部２１ｂには、第１ロボット２０をレール７上に走行させる走行ローラ２２が装着されている。シャーシ部２１ａ１は、第１ロボットコントローラ１０によって制御されるモータ２０ａによって駆動されるギアによってレール７に沿って走行する。シャーシ部２１ｂには、固定ベース部２３が設けられている。固定ベース部２３は、左右方向、すなわち、レール７に沿って延びる下部固定板２３ａを備えている。また、固定ベース部２３は、上部固定板２３ｂを備える。下部固定板２３ａと上部固定板２３ｂとは、連設板２３ｃによって接続された状態となっている。連設板２３ｃは、図３において奥側に位置している。これにより、第１ロボット２０が第２ロボット４０と対向する側は、開放された状態となっている。
【００２０】
昇降ベース部２４は、支柱部２１ａに対し、レール部２１ａ１に沿って上下方向に昇降可能に取り付けられている。昇降ベース部２４上には、ハンド装置２５が搭載されている。昇降ベース部２４の昇降動作、ハンド装置２５の回転及び記憶媒体１４の把持操作は、第１ロボットコントローラ１０によって制御される。昇降ベース部２４及びハンド装置２５は、従来、公知のものを用いることができる。
【００２１】
第１ロボット２０は、固定ベース部２３上に、記憶媒体１４を一時的に収納するスロット２６ａが設けられた搬送体２６を備えている。すなわち、搬送体２６は、バッファ用のスロットを準備するものである。搬送体２６は、支柱部２１ａに対し、昇降ベース部２４を隔てた位置に設けられている。搬送体２６は、箱形状を有し、複数のスロット２６ａを備えている。これにより、搬送体２６は、多くの記憶媒体１４を一旦スロット２６ａに収納することができる。これにより、多くの記憶媒体１４を一度に収集、分配することができ、大量の記憶媒体１４の搬送時間を短縮することができる。搬送体２６は、固定ベース部２３上で回転することができる。図５を参照すると、搬送体２６は、その上端部に台座部２６ｂを備えている。台座部２６ｂは、搬送体２６を回転させるための軸受となる中空部２６ｂ１を備えている。また、搬送体２６は、その下端部に軸部２６ｃを備えている。軸部２６ｃには、半径方向に突出した係合ピン２６ｃ１が設けられている。
【００２２】
図５を参照すると、固定ベース部２３上には、搬送体２６を回転させる回転装置３７が設けられている。図６を参照すると、回転装置３７には、回転シャフト２８、レバー部材２９、第１ギア３０、第２ギア３１、第３ギア３２が含まれる。回転シャフト２８は、下部固定板２３ａに設けられた支持孔２７ａと上部固定板２３ｂに設けられた支持孔２７ｂにその両端部がそれぞれ挿入され、固定ベース部２３上に回転自在に立設、支持されている。回転シャフト２８の表面には、螺糸部２８ａが設けられている。回転装置３７は、螺糸部２８ａと螺合し、回転シャフト２８の軸方向に沿った昇降動作を行うことにより、回転シャフト２８を回転させるレバー部材２９を備えている。レバー部材２９が昇降することによって生じる回転シャフト２８の回転は、第１ギア３０、第２ギア３１、第３ギア３２を含む回転伝達部によって搬送体２６に伝達される。第１ギア３０は、回転シャフト２８の下端部に装着されている。この第１ギア３０と噛み合う第２ギア３１は、下部固定板２３ａに設けられた軸部３４に装着されている。この第２ギア３１と噛み合う第３ギア３２は、下部固定板２３ａ２に設けられた支持部３５に装着されている。第３ギア３２は、ギア部３２ａと筒状部３２ｂを備えている。筒状部３２ｂには、スリット３２ｂ１が設けられている。
【００２３】
図７（Ａ）、図７（Ｂ）を参照すると、台座部２６ｂが備える中空部２６ｂ１に上部固定板２３ｂに設けられた支持凸部３３が挿入される。このとき、上部固定板２３ｂと台座部２６ｂとの間に、コイル状のバネ３６が介装されている。バネ３６は、搬送体２６を下方に付勢する。図８（Ａ）、図８（Ｂ）を参照すると、軸部２６ｃが支持部３５に挿入されている。支持部３５には、第３ギア３２が装着されており、軸部２６ｃに設けられた係合ピン２６ｃ１が、第３ギア３２が備える筒状部３２ｂに設けられたスリット３２ｂ１と係合している。これにより、第３ギア３２が回転することにより、搬送体２６が回転する。ここで、図９（Ａ）、図９（Ｂ）を参酌すると、支持部３５は、カム形状を備えている。具体的に、支持部３５は、円筒形状を備え、その上面側に二箇所の傾斜面３５ａを備えている。傾斜面３５ａの端部には、溝状のロック部３５ｂが設けられている。さらに、二箇所のロック部３５ｂからは、それぞれ壁部３５ｃが立ち上がっている。図１０（Ａ）、図１０（Ｂ）、図１０（Ｃ）を参照すると、係合ピン２６ｃ１は、スリット３２ｂ１と係合し、また、バネ３６の付勢力によって下方に押し付けられることにより傾斜面３５ａに沿って、移動する。二箇所の壁部３５ｃは、支持部３５の円周上の１８０°隔てた位置に設けられている。壁部３５ｃは、搬送体２６の回転範囲を規定するものであり、これにより、搬送体２６は、１８０°回転することができる。より具体的に、搬送体２６は、スロット２６ａの開口部が少なくとも第１ロボット２０が備えるハンド装置２５と対向する向きと第２ロボット４０が備えるハンド装置２５と対向する向きとなるように回転することができる。換言すれば、搬送体２６は、スロット２６ａの開口部が右方向に位置する状態と、スロット２６ａの開口部が左方向に向く状態になることができる。係合ピン２６ｃ１は、移動範囲の各端部でロック部３５ｂに位置するため、搬送体２６のガタつきが抑えられる。
【００２４】
レバー部材２９には、ガイドローラ２９ｂが組み込まれている。このガイドローラ２９ｂは、下部固定板２３ａと上部固定板２３ｂとを接続する連設板２３ｃに接している。これにより、レバー部材２９自体の回転が抑制されると共に、滑らかの昇降動作が実現されている。なお、レバー部材２９自体の回転が抑制されることにより、レバー部材２９の昇降動作によって回転シャフト２８が回転するようになる。
【００２５】
以上説明したように、搬送体２６は回転することができる。この回転は、レバー部材２９が昇降することにより、生み出される。そこで、本実施形態では、回転装置３７を作動させるスイッチ装置として、昇降移動するハンド装置２５を採用している。具体的に、第１ロボット２０が備える回転装置３７のスイッチ装置は、第２ロボット４０が備えるハンド装置２５となる。一方、第２ロボット４０が備える回転装置３７のスイッチ装置は、第１ロボット２０が備えるハンド装置２５となる。ハンド装置２５は、昇降移動可能に設けられているので、ハンド装置２５は、その昇降動作によってレバー部材２９を昇降させる。なお、本実施形態では、ハンド装置２５が備える把持部をレバー部材２９に接触させることによりレバー部材２９を昇降させている。これは、ハンド装置２５が自ら回転できることから、他方のロボットが備えるレバー部材２９へ作用する状態とすることができ、都合がよいからである。レバー部材２９は、他方のロボットが備えるハンド装置２５からアクセスすることができる形状とされている。また、レバー部材２９には、自身のロボットが備えるハンド装置２５がアクセスすることもできる。すなわち、レバー部材２９は、連設板２３ｃに対し、左右方向に突出した形状とされている。
【００２６】
以上のような第１ロボット２０は、収納棚２、テープドライブ４、投入排出部５の間で、指令に応じた記憶媒体１４の移動を行う。一例として、収納棚２に収容された記憶媒体１４をテープドライブ４へ移動させる場合について説明する。通常稼動時、すなわち、第１ロボット２０が故障していない状態のとき、第１ロボット２０が備える搬送体２６のスロット２６ａの開口部は、第１ロボット２０が備えるハンド装置２５と対向する向きとされている。図１１（Ａ）を参照すると、第１ロボット２０が備えるハンド装置２５は、収納棚２に収納されている記憶媒体１４を取り出し、図１１（Ｂ）に示すように搬送体２６が備えるスロット２６ａに移動させる。第１ロボット２０は、図１２（Ａ）、図１２（Ｂ）２示すように、目的とするさらに別の記憶媒体１４が収納されている位置まで移動し、記憶媒体１４をスロット２６ａに移動させる。この動作をその時点で発せられているジョブ指令に応じて繰り返し行い、多量の記憶媒体１４を搬送体２６に取り込む。そして、第１ロボット２０は、図１３に示すように、テープドライブ４の前まで移動し、ハンド装置２５によって図１４に示すようにテープドライブ４へ記憶媒体１４を挿入する。第１ロボット２０は、一度に大量の記憶媒体１４を移動させることができるので、搬送時間を短縮することができる。複数のテープドライブ４から記憶媒体１４を回収し、所望のスロット３へ戻す場合も搬送体２６を用いることにより、搬送時間を短縮することができる。
【００２７】
また、図１５に示すように、一度に大量の記憶媒体１４を投入するときも、多量の記憶媒体１４を投入排出部５に準備しておき、この投入排出部５から記憶媒体１４を搬送体２６へ移し替える。そして、記憶媒体１４毎に目的とする収納棚２のスロット３へ搬送する。第１ロボット２０は、記憶媒体１４をピックアップするために、いちいち投入位置へ戻らなくてもよいため、搬送時間を短縮することができる。記憶媒体１４を排出する場合も、搬送体２６を用いることにより、搬送時間を短縮することができる。なお、いずれの動作においても、対象となる記憶媒体１４が一巻だけであるときは、従来通り、ハンド装置２５が記憶媒体１４を把持した状態で、所望の場所まで移動すればよい。
【００２８】
つぎに、第２ロボット４０について、第１ロボット２０との相違点を中心に説明する。図３を参照すると、第２ロボット４０の主要な構成は、第１ロボット２０と共通である。第１ロボット２０が備える搬送体２６がフレーム部２１の下側に設置されているのに対し、第２ロボット４０が備える搬送体２６は、フレーム部の上側に設置されている。すなわち、第１ロボット２０が備える搬送体２６と第２ロボット４０が備える搬送体２６は、軌道（レール７）と直交する方向（上下方向）にずらして配置されている。これは、第１ロボット２０と第２ロボット４０とを接近させたときに、搬送体２６同士が接触しないようにするためである。また、このように、上下にずらして搬送体２６を設置することにより、双方のハンド装置２５が互いに相手方の搬送体２６にアクセスすることができる位置関係を構築している。第２ロボット４０は、搬送体２６をフレーム部２１の上側に設けるために、第１ロボット２０における固定ベース部２３を回転させた固定ベース部４３を用いている。固定ベース部４３は、固定ベース部２３を回転させているため、固定ベースブ２３における下部固定板２３ａが上部固定板４３ａとなり、上部固定板２３ｂが下部固定板４３ｂとなっている。第２ロボット４０の他の主要な構成は、第１ロボット２０と共通するので、同一の構成要素については、図面中、同一の参照番号を付して、その詳細な説明は省略する。
【００２９】
このように、ライブラリ装置２６は、第１ロボット２０と第２ロボット４０の２台のロボットを有し、それぞれ搬送体２６を備えているため、この点でも、一回に搬送することができる記憶媒体１４の巻数が増している。この結果、記憶媒体１４の搬送作業効率が向上し、記憶媒体１４の搬送時間を短縮することができている。
【００３０】
２台のロボット、すなわち、第１ロボット２０及び第２ロボット４０を備えるライブラリ装置１は、一方のロボットが故障した場合であっても、他方のロボットが正常に稼動する限り、ジョブを継続することができる。以下、図１６乃至図２０を参照して、一方のロボットが故障した場合のライブラリ装置１の動作について説明する。ここでは、左側に位置する第１ロボット２０が故障した場合を想定して説明する。
【００３１】
まず、図１６（Ａ）、図１６（Ｂ）に示すように、故障した第１ロボット２０を第２ロボット４０によって押す。これにより、第１ロボット２０は、退避筐体となる筐体Ａ７に設けられた退避部６に移動させられる。このように、第１ロボット２０を退避させるのは、第１ロボット２０が収納棚２の前に留まっていると、第２ロボット４０がその収納棚２にアクセスすることができなくなることから、これを回避するためである。なお、このとき、第１ロボット２０が備える搬送体２６と第２ロボット４０が備える搬送体２６とが接触することがない。このため、第１ロボット２０と第２ロボット４０は、双方のフレーム部２１が接触する位置まで近づくことができる。
【００３２】
つぎに、図１７（Ａ）に示すように、第２ロボット４０が備えるハンド装置２５を第１ロボット２０が備えるレバー部材２９の下側に差し入れる。具体的に、ハンド装置２５を所定位置まで下降させるとともに回転させ、ハンド装置２５が備える把持部を延ばす。つぎに、図１７（Ｂ）に示すように、第２ロボット４０が備える昇降ベース部２４を上昇させる。これにより、回転シャフト２８が回転し、上述した回転装置３７を介して搬送体２６が１８０°回転する。これにより、第１ロボット２０が備える搬送体２６のスロット２６ａの開口部が、第２ロボット４０に設けられたハンド装置２５と対向する状態となる。そして、図１８に示すように、故障している第１ロボット２０が備える搬送体２６に収納された記憶媒体１４を第２ロボット４０が備える搬送体２６へ移し替る。これにより、ライブラリ装置１は、図１９に示すように第１ロボット２０が請け負っていたジョブを継続することができる。
【００３３】
そして、第１ロボット２０の修理が完成した後は、図２０（Ａ）、図２０（Ｂ）、図２０（Ｃ）に示すように、搬送体２６を元の状態に復帰させる。具体的に、図２０（Ａ）に示すように、第１ロボット２０が備えるハンド装置２５をレバー部材２９の上側に移動させるとともに回転させ、ハンド装置２５が備える把持部を延ばす。つぎに、図２０（Ｂ）に示すように、第１ロボット２０が備える昇降ベース部２４を下降させる。これにより、図２０（Ｃ）に示すように、第１ロボット２０が備える搬送体２６のスロット２６ａの開口部が、第１ロボット２０に設けられたハンド装置２５と対向する状態となる。以上の動作により、ライブラリ装置１は、第１ロボットと第２ロボット４０が稼動することができる通常状態に復帰することができる。
【００３４】
第２ロボット４０が故障した場合にも同様の動作により、ライブラリ装置１の運用を継続することができる。なお、一方のロボットが故障した際のライブラリ装置１の制御については、後に詳述する。
【００３５】
以上、ライブラリ装置１が備える構造や機構部分を中心に説明した。以下、ライブラリ装置１の制御について、詳細に説明する。図２１は実施形態のライブラリ装置１が備えるテープライブラリ・コントローラ８の機能ブロック図である。図２１を参照すると、ライブラリ装置１の動作を統括し、制御するライブラリ装置の制御装置に相当するテープライブラリ・コントローラ８は、ジョブ受信部８１、ジョブ判定部８２、コマンド生成部８３及びメモリ８４を備える。ジョブ受信部８１は、外部、すなわち、入力部８０から発行されたジョブ情報を受信し、その内容をジョブ判定部８２へ送信する。ここで、本実施形態における入力部８０は、ユーザによる情報入力部であるが、バックアップソフトによる入力部としてもよい。ジョブ判定部８２は、ジョブ受信部８１から受け取ったジョブがどういった内容であるか判定し、テープライブラリ装置１の実際の動作、処理内容を決定する。具体的には、後に詳述する搬送順決定処理、ジョブ分配処理、一方のロボットが故障した際の運用継続処理を行う。コマンド生成部８３は、ジョブ判定部８２で決定した動作処理に基づいて、制御コマンド生成し、順次、第１ロボットコントローラ１０又は第２ロボットコントローラ１１へ向けて指令（コマンド）を発行する。第１ロボットコントローラ１０及び第２ロボットコントローラ１１は、発行された指令に従って第１ロボット２０又は第２ロボット４０の制御を行う。メモリ８４には、ライブラリ装置１の情報が格納されており、第１ロボット２０及び第２ロボット４０を動作させる過程において、判定基準となる動作前のライブラリ状況の確認や、動作後の実行結果の格納等に用いられる。
【００３６】
各部の情報のやり取りについて纏めると以下の如くである。まず、入力部８０からジョブ受信部８１には、ジョブ情報が発行される。一方、ジョブ受信部８１から入力部８０には、ジョブの実行結果が返信される。ジョブ受信部８１からジョブ判定部８２には、ジョブ受信部８１が受信したジョブがライブラリ用に解釈された上で送信される。一方、ジョブ判定部８２からジョブ受信部８１には、ジョブの実行結果が返信される。ジョブ判定部８２からメモリ８４には、記憶媒体情報等が要求される。一方、メモリ８４からジョブ判定部８２には、ジョブ判定部８２から要求された情報が返信される。ジョブ判定部８２からコマンド生成部８３には、要求動作が順次送信される。一方、コマンド生成部８３からジョブ判定部８２には、ジョブの実行結果が返信される。コマンド生成部８３から第１ロボットコントローラ１０及び第２ロボットコントローラロボット１１には、制御コマンドが順次発行される。一方、第１ロボットコントローラ１０及び第２ロボットコントローラロボット１１からコマンド生成部８３には、コマンド実行結果が送信される。第１ロボットコントローラ１０及び第２ロボットコントローラロボット１１からメモリ８４には、ロボット制御に必要な情報、例えば、記憶媒体情報や位置情報等が要求される。メモリ８４には、ジョブの実行結果が書き込まれる。メモリ８４から第１ロボットコントローラ１０及び第２ロボットコントローラロボット１１からメモリ８４には要求された情報が返信される。第１ロボットコントローラ１０から第１ロボット２０には、第１ロボット２０が備えるハンド装置２５やモータ２０ａに流す電流値の指示やセンサ２０ｂに対するセンサ情報の要求が行われる。同様に、第２ロボットコントローラ１１から第２ロボット４０には、第２ロボット４０が備えるハンド装置２５やモータ４０ａに流す電流値の指示やセンサ４０ｂに対するセンサ情報の要求が行われる。一方、第１ロボットコントローラ１０及び第２ロボットコントローラロボット１１は、ハンド装置２５やモータ２０ａ、４０ａ等から実行結果を受信する。なお、センサ２０ｂ、４０ｂは、各ロボットの動作の異常や、動作の監視を行うとともに、制御に必要なロボットの位置情報、移動量等の取得も行う。
【００３７】
以下、図２２乃至図２９を参照しつつ、ライブラリ装置１におけるテープドライブ４へ記憶媒体１４を投入する際の制御につき、説明する。図２２は実施形態のライブラリ装置１におけるテープドライブ４へ記憶媒体１４を投入する際の動作の一例を示すフロー図である。図２３は実施形態のライブラリ装置１が行う搬送順決定処理の一例を示すフロー図である。図２４は実施形態の搬送順決定処理におけるソート処理の一例を示す説明図である。図２５は実施形態のライブラリ装置１が行うジョブ分配処理の一例を示すフロー図である。図２６は実施形態におけるジョブ分配処理の一例を示す説明図である。図２７は実施形態におけるジョブ分配処理の他の例を示す説明図である。図２８は実施形態のライブラリ装置１が搬送体２６へ記憶媒体１４を回収する際の制御の一例を示すフロー図である。図２９は実施形態のライブラリ装置１が搬送体２６からテープドライブ４へ記憶媒体１４を搬送する際の制御の一例を示すフロー図である。
【００３８】
以下の説明では、第１ロボット２０が主に動作し、第２ロボット４０が予備的に、すなわち、第１ロボット２０が故障したときに動作するものとして説明する。制御は、テープライブラリ・コントローラ８によって行われ、主としてジョブ判定部８が機能することによって実行される。ジョブ判定部８２は、第１ロボット２０が行う複数のジョブに含まれる記憶媒体１４の搬送の順序を、第１ロボット２０が一方向に向かいながらジョブ実行できる順に設定する搬送順決定処理を行う。本実施形態では、テープドライブ４が配置された筐体Ａ４をライブラリ装置１の基準位置として設定し、この基準位置の左右方向に収納棚２が配置されている。このため、後に詳述するように左側ジョブと右側ジョブ毎に搬送順決定処理を行うが、左側ジョブと右側ジョブとを分けることなく多数のジョブを処理する場合にも、同様の処理を適用することができる。すなわち、多数のジョブを左側ジョブと右側ジョブとに分割せずに処理する場合にも、ジョブの処理順（記憶媒体１４の搬送の順序）を第１ロボット２０が一方向に向かいながらジョブ実行できる順に設定できる。
【００３９】
ジョブ判定部８２は、入力部８０から順次ジョブを受け付ける。ただし、ジョブ判定部８２は、複数のジョブに対して受け付けた順に処理を行うのではなく、事前に記憶媒体１４の搬送順を決定した上で記憶媒体１４の回収、搬送を行う。この際行われる搬送順決定処理は、移動媒体１４を取得した後のテープドライブ４への移動回数が最少となるように決定される。ジョブ判定部８２は、ステップＳ１において、受け取ったジョブ数、すなわち、ジョブコマンド数ｍを取得する。ジョブ判定部８２は、ステップＳ２において操作回数ｎ（整数）を算出する。操作回数ｎは、第１ロボット２０の最小の移動回数を意味し、搬送体２６が備えるスロット２６ａを最大利用した場合の操作回数であり、これ以下となることはない。具体的に、ジョブコマンド数ｍを搬送体２６が備えるスロット数ｂｓで割り、「１」を加える。「１」を加えるのは、ジョブコマンド数ｍをスロット数ｂｓで割ったときに余ったジョブを処理するための回をカウントするためである。なお、ジョブコマンド数ｍが「１」の場合は、搬送体２６を用いることなく、対象となる記憶媒体１４をハンド装置２５に把持させ、一回の搬送を行う。
【００４０】
ステップＳ３では、記憶媒体１４の搬送順決定処理を行う。ジョブ判定部８２は、入力部８０から入力された複数のジョブを基準位置よりも左側に配置された収納棚２に対する左側ジョブと、基準位置よりも右側に配置された収納棚２に対する右側ジョブとに振り分ける。そして、左側ジョブ、右側ジョブ毎に搬送順決定処理を行う。ジョブ判定部８２は、左側ジョブに対する搬送順決定処理及び右側ジョブに対する搬送順決定処理において、それぞれ、搬送順を基準位置から離れた位置から基準位置となる筐体Ａ４に近づく順に設定する。このように、搬送順を基準位置から離れた位置から基準位置とするのは、第１ロボット２０が、テープドライブ４を収納する筐体Ａ４を跨いで左右の移動をしなければならない状況で、第１ロボット２０の移動距離、移動時間を短縮することができるためである。第１ロボット２０が、テープドライブ４を収納する筐体Ａ４を跨いで左右の移動をしなければならない状況は、後に詳述するように左側ジョブの余りと右側ジョブの余りを結合したときに生じる。
【００４１】
ステップＳ３における搬送順決定処理は、図２３に示すサブルーチンとなっている。ステップＳ３１では、ジョブコマンド数ｍを取得する。ジョブコマンド数ｍは、ステップＳ１における情報を引き継ぐことで取得される。ステップＳ３２では、変数ｉの値を「０」としておく。変数ｉは、ｍ個のジョブコマンドのうち、何番目のコマンドであるかを示す変数である。ステップＳ３３では、ジョブｉの指定記憶媒体がテープドライブ４が設置された筐体Ａ４の左側にあるか否かを判断する。ステップＳ３３でＹｅｓと判断したときは、ステップＳ３４でメモリ８４内の左側コマンド格納部ｌｃｏｍにコマンド情報を追加する。一方、ステップＳ３３でＮｏと判断したときは、ステップＳ３５でメモリ８４内の右側コマンド格納部ｒｃｏｍにコマンド情報を追加する。ステップＳ３４又はステップＳ３５の処理を行った後は、ステップ３６において、ｉがｍ−１と一致するか否かの判断を行う。すなわち、ｍ個全てのジョブについて振り分け処理が終了したか否かを判断する。なお、ステップＳ３３において、ジョブｉの指定記憶媒体がテープドライブ４が設置された筐体Ａ４の右側にあるか否かを判断するようにして、ステップＳ３４とステップＳ３５で左右を入れ換えてもよい。
【００４２】
ステップＳ３６でＮｏと判断したときは、ステップＳ３７においてｉ＝ｉ＋１の演算を行った後、ステップＳ３３乃至Ｓ３６の処理を繰り返す。ステップＳ３６でＹｅｓと判断したときは、ステップＳ３８において、左側コマンド格納部ｌｃｏｍ内のコマンド情報を指定媒体位置がテープドライブ設置筐体Ａ４から遠い順にソート処理する。そして、ステップＳ３９において右側コマンド格納部ｒｃｏｍ内のコマンド情報を指定媒体位置がテープドライブ設置筐体Ａ４から遠い順にソート処理する。なお、ステップＳ３８とステップＳ３９の処理の順序は問わない。ここで、図２４を参照してソート処理の一例をについて説明する。図２４の上側に示した図における（１）から（７）の番号は、ジョブの入力順を示している。ジョブの入力は、通常ランダムに行われる。このため、基準位置となる筐体Ａ４の左側となる筐体Ａ５及び筐体Ａ６に対するジョブと、筐体Ａ４の右側となる筐体Ａ２及び筐体Ａ３に対するジョブが混在している。また、基準位置からの距離もまちまちである。このような複数のジョブに対し、搬送順決定処理を施すことにより、複数のジョブは、図２４の下側に示したソート処理された状態となる。すなわち、複数のジョブは、４個の左側ジョブと３個の右側ジョブに纏められ、左側ジョブは、基準位置から遠い順に（左１）〜（左４）の順に並べられ、右側ジョブは、基準位置から遠い順に（右１）〜（右３）の順に並べられる。図２３に示すサブルーチンが終了したら、図２２に示すフロー図におけるステップＳ４へ進む。
【００４３】
ステップＳ４では、ジョブ分配処理を行う。ジョブ分配処理は、第１ロボット２０の何番目の搬送回において、搬送体２６のどのスロットにどのジョブの記憶媒体１４を収納するかを決定する処理である。ジョブ分配処理には、搬送体２６のスロット数ｂｓに対してジョブ数が過剰であるのかの判定、及び、過剰である場合に第１ロボット２０の移動回数が最小となるようにジョブを分割したり、結合したり処理が含まれる。具体的に、ジョブ判定部８２は、左側ジョブ及び右側ジョブに対し、それぞれのジョブ数と、搬送体２６が備えるスロット２６ａの数ｂｓとを比較して、スロット２６ａの全数ｂｓを満たさない余りのジョブ数を算出する。そして、左側ジョブの余りのジョブ数と右側ジョブの余りのジョブ数との加算数が、スロット２６ａの数ｂｓを越えるか否かの判定を行う。加算数がスロット数ｂｓを越えない場合は、余りのジョブを結合する。一方、加算数がスロット数ｂｓを越える場合は、余りのジョブの結合を行わず、そのまま以後の処理を継続する。
【００４４】
ステップＳ４におけるジョブ分配処理は、図２５に示すサブルーチンとなっている。ステップＳ４１では、ステップＳ３８でソート処理を行った左側コマンド格納部ｌｃｏｍ内に格納されたの左側ジョブ数と、ステップＳ３９でソート処理を行った右側コマンド格納部ｒｃｏｍ内に格納されたの右側ジョブ数とを取得する。ステップＳ４１に引き続き行われるステップＳ４２では、ステップＳ２で算出した操作回数ｎが１以外であるか否かの判断、すなわち、ｎ≠１であるか否かを判断する。ステップＳ４２でＮｏと判断したときは、ステップＳ４３及びステップＳ４４の処理をスキップしてステップＳ４５へ進む。一方、ステップＳ４２でＹｅｓと判断したときは、ステップＳ４３へ進む。ステップＳ４３では、左側ジョブ数とスロット２６ａの数ｂｓとを対比する。また、ステップＳ４４では、右側ジョブ数とスロット２６ａの数ｂｓとを対比する。ジョブ数とスロット２６ａの数ｂｓとの対比は、具体的には、スロット２６ａの全数ｂｓを満たさない余りのジョブ数を算出する処理である。ステップＳ４３とステップＳ４４の処理の順序は問わない。ステップＳ４３及びステップＳ４４の処理が終了した後は、ステップＳ４５において、余剰ジョブ結合処理を行う。余剰ジョブ結合処理は、左側ジョブの余りのジョブ数と右側ジョブの余りのジョブ数との加算数が、スロット２６ａの数ｂｓを越えるか否かの判定、及び、その判定結果に基づき左右の余りのジョブを結合するか否かを判断する処理である。ここで、図２６及び図２７を参照して、左側ジョブ数とスロット２６ａの数ｂｓとの対比及び右側ジョブ数とスロット２６ａの数ｂｓとの対比について、例示する。ジョブ数がスロット２６ａの数ｂｓで割り切れない場合として、図２６に示す余り発生パターンＡと図２７に示す余り発生パターンＢが想定される。
【００４５】
図２６に示す余り発生パターンＡは、左側ジョブの余りと左側ジョブの余りの加算数が、スロット数ｂｓ以下となる場合である。具体的に、搬送体２６のスロット数ｂｓが１０個である場合に、左側ジョブの記憶媒体数が１５であり、右側ジョブの記憶媒体数が１２である場合を想定する。この場合、左側ジョブの余りは（左余り１）〜（左余り５）の５個の記憶媒体となる。ステップＳ４３では、この左側ジョブの余りが算出される。一方、右側ジョブの余りは（右余り１）、（右余り２）の２個の記憶媒体となる。ステップＳ４４では、この右側ジョブの余りが算出される。そして、ステップＳ４５では、加算数、すなわち、５＋２＝７（個）の演算を行い、加算数７（個）がスロット数ｂｓである１０（個）以下であるか否かを判断する。この場合、加算数７は、スロット数ｂｓ＝１０以下であるため、余りジョブの結合を行う。すなわち、左右の余りのジョブを結合して一回の第１ロボット２０の移動でジョブを処理できるときは、余りジョブの結合を行う。このように余りジョブの結合を行う場合、結合された左側ジョブの余りと右側ジョブの余りは、基準位置に近いジョブとなるため、筐体Ａ４を跨いで左右の移動をする際に、第１ロボット２０の移動距離、移動時間を短縮することができる。
【００４６】
図２７に示す余り発生パターンＢは、左側ジョブの余りと左側ジョブの余りの加算数が、スロット数ｂｓを越える場合である。具体的に、搬送体２６のスロット数ｂｓが１０個である場合に、左側ジョブの記憶媒体数が１５であり、右側ジョブの記憶媒体数が１７である場合を想定する。この場合、左側ジョブの余りは（左余り１）〜（左余り５）の５個の記憶媒体となる。ステップＳ４３では、この左側ジョブの余りが算出される。一方、右側ジョブの余りは（右余り１）〜（右余り７）の７個の記憶媒体となる。ステップＳ４４では、この右側ジョブの余りが算出される。そして、ステップＳ４５では、加算数、すなわち、５＋７＝１２（個）の演算を行い、加算数１２（個）がスロット数ｂｓである１０（個）以下であるか否かを判断する。この場合、加算数１２は、スロット数ｂｓ＝１０を越えているため、余りジョブの結合は行わない。すなわち、左右の余りのジョブを結合しても第１ロボットの移動回数を低減することができず、それどころか、一回の移動の中に基準位置を跨いだ左右の動きが含められることになるため、却って移動距離が延びる。このため、この場合は、結合処理は行われない。
【００４７】
ステップＳ４５では、振り分けられたジョブコマンド情報を構造体配列格納部ｍｏｖｅに格納する。構造体配列格納部ｍｏｖｅは、第１ロボット２０の何番目の搬送回において、搬送体２６のどのスロットにどのジョブの記憶媒体１４を収納するかを紐付ける情報である。構造体配列格納部ｍｏｖｅは、後の処理において実際に動作する第１ロボット２０の指令に用いられる。図２５に示すサブルーチンが終了した後は、ステップＳ５へ進む。
【００４８】
ステップＳ５では、操作回数ｎ回をカウントする準備として操作回数カウント数ｋ＝０にセットする。そして、ステップＳ６において、記憶媒体回収処理を行う。記憶媒体回収処理は、収納棚２のスロット３に収納された記憶媒体１４を第１ロボット２０が備える搬送体２６に回収する処理である。
【００４９】
ステップＳ６における記憶媒体回収処理は、サブルーチンとなっている。ステップＳ６１では、ステップＳ４５で作成した構造体配列格納部ｍｏｖｅ［ｋ］［ｉ］のコマンド情報を取得する。ここで、ｋは第１ロボット２０の何回目の操作、すなわち何回目の移動であるかを示し、ｉは、搬送体２６のスロット２６ａが上から何番目であるかを示している。例えば、図２４でソート処理した左側ジョブの（左１）のジョブを最初に行うときは、ｍｏｖｅ［０］［０］の中身の情報としてと左側ジョブの（左１）が紐付けられる。
【００５０】
ステップＳ６２では、スロット２６ａを上から順にカウントする準備としてスロットカウント数ｉをｉ＝０にセットする。ステップＳ６３では、ｉ番目のコマンド情報が指定する記憶媒体１４へハンド装置２５を移動させる。そして、ステップＳ６４において、ハンド装置２５に対象とする記憶媒体１４を把持させる。その後、ステップＳ６５において、搬送体２６の上からｉ＋１番目のスロット２６ａへハンド装置２５を移動させ、ステップＳ６６において、目的とするスロット２６ａへ記憶媒体１４を挿入する。ステップＳ６６に引き続いて行われるステップＳ６７では、スロットカウント数ｉをｉ＝ｉ＋１とする。ステップＳ６８では、スロットカウント数ｉがスロット数ｂｓと一致したか否かを判断する。ステップＳ６８でＹｅｓと判断したときは、サブルーチンは終了となる。一方、ステップＳ６８でＮｏと判断したときは、ステップＳ６９へ進む。ステップＳ６９では、ｍｏｖｅ［ｋ］［ｉ］が空であるか否か、すなわち、ｍｏｖｅ［ｋ］［ｉ］に対応するデータがあるか否かを判断する。ステップＳ６９でＹｅｓと判断したときは、全てのスロット２６ａに対する処理が終了したことになるので、サブルーチンは終了となる。余りのジョブを処理するときは、ステップＳ６８、ステップＳ６９を経てサブルーチンが終了することとなる。一方、ステップＳ６９でＮｏと判断したときは、ステップＳ６３からの処理を繰り返す。図２８に示すサブルーチンが終了した後は、ステップＳ７へ進む。
【００５１】
ステップＳ７では、テープドライブ４が設置された筐体Ａ４へ第１ロボット２０を移動させる。そして、ステップＳ８では、記憶媒体搬送処理を行う。記憶媒体搬送処理は、搬送体２６に回収した記憶媒体１４を指定されたテープドライブ４へ搬送する処理である。
【００５２】
ステップＳ８における記憶媒体搬送処理は、サブルーチンとなっている。ステップＳ８１では、ステップＳ４５で作成した構造体配列格納部ｍｏｖｅ［ｋ］［ｉ］のコマンド情報を取得する。ここで、ｋは第１ロボット２０の何回目の操作、すなわち何回目の移動であるかを示し、ｉは、搬送体２６のスロット２６ａが上から何番目であるかを示している。この点は、図２８に示すサブルーチンにおける取り扱いと同様である。
【００５３】
ステップＳ８２では、スロット２６ａを上から順にカウントする準備としてスロットカウント数ｉをｉ＝０にセットする。ステップＳ８３では、搬送体２６の上からｉ＋１番目のスロット２６ａへハンド装置２５を移動させ、ステップＳ８４では、ハンド装置２５に対象とする記憶媒体１４を把持させる。ステップＳ８５では、指定されたテープドライブ４へハンド装置２５を移動させる。そして、ステップＳ８６では、ハンド装置２５により記憶媒体１４をテープドライブ４へ挿入する。ステップＳ８６に引き続いて行われるステップＳ８７では、スロットカウント数ｉをｉ＝ｉ＋１とする。ステップＳ８８では、スロットカウント数ｉがスロット数ｂｓと一致したか否かを判断する。ステップＳ８８でＹｅｓと判断したときは、サブルーチンは終了となる。一方、ステップＳ８８でＮｏと判断したときは、ステップＳ８９へ進む。ステップＳ６９では、ｍｏｖｅ［ｋ］［ｉ］が空であるか否か、すなわち、ｍｏｖｅ［ｋ］［ｉ］に対応するデータがあるか否かを判断する。ステップＳ８９でＹｅｓと判断したときは、全てのスロット２６ａに対する処理が終了したことになるので、サブルーチンは終了となる。余りのジョブを処理するときは、ステップＳ８８、ステップＳ８９を経てサブルーチンが終了することとなる。一方、ステップＳ８９でＮｏと判断したときは、ステップＳ８３からの処理を繰り返す。図２９に示すサブルーチンが終了した後は、ステップＳ９へ進む。
【００５４】
ステップＳ９では、操作回数カウント数ｋがｎ−１と一致したか否かを判断する。ステップＳ９でＹｅｓと判断したときは、全ての処理が完了したこととなり、一連の処理は終了する。一方、ステップＳ９でＮｏと判断したときは、ステップＳ１０へ進み、操作カウント数ｋをｋ＝ｋ＋１として、ステップＳ６からの処理を繰り返す。
【００５５】
以上が、収納棚２のスロット３に収納された記憶媒体１４をテープドライブ４へ投入する際の制御の一例である。
【００５６】
ライブラリ装置１では、テープドライブ４へ記憶媒体を導入する動作以外にも、種々の動作が行われる。例えば、ライブラリ装置１へ投入排出部５から記憶媒体１４を投入又は排出する動作がある。ライブラリ装置１がこれらの動作をする場合も、基本的にテープドライブ４へ記憶媒体を導入する動作と同様の制御を行うことにより、大量の記憶媒体の搬送時間を短縮することができる。
【００５７】
図３０は実施形態のライブラリ装置１へ投入排出部５から記憶媒体１４を投入する際の動作の一例を示すフロー図である。図３０に示すフロー図におけるステップＳ１〜Ｓ５及びステップＳ９、ステップＳ１０の処理は、図２２に示すフロー図と共通する。図３０に示すフロー図が図２２に示すフロー図と異なる点は、図２２に示すフロー図におけるステップＳ６〜Ｓ８がステップＳ６ａ〜ステップＳ８ａに変更されている点である。これらの相違点は、目的とする操作の性質に起因するものである。ライブラリ装置１へ投入排出部５から記憶媒体１４を投入する際は、まず、ステップＳ６ａにおいて、投入排出部５へハンド装置２５を移動させる。そして、ステップＳ７ａにおいて記憶媒体回収処理を行い、ステップＳ８ａにおいて記憶媒体搬送処理を行う。ステップＳ７ａやステップＳ８ａの処理は、サブルーチンとなっているが、その内容は、基本的には、図２８及び図２９に示すフロー図に示す処理と共通する。
【００５８】
図３１は実施形態のライブラリ装置１から投入排出部５へ記憶媒体１４を排出する際の動作の一例を示すフロー図である。図３１に示すフロー図におけるステップＳ１〜Ｓ５及びステップＳ９、ステップＳ１０の処理は、図２２に示すフロー図と共通する。図３１に示すフロー図が図２２に示すフロー図と異なる点は、図２２に示すフロー図におけるステップＳ６〜Ｓ８がステップＳ６ｂ〜ステップＳ８ｂに変更されている点である。これらの相違点は、目的とする操作の性質に起因するものである。ライブラリ装置１から投入排出部５へ記憶媒体１４を排出する際は、まず、ステップＳ６ｂにおいて、記憶媒体回収処理を行う。そして、ステップＳ７ｂにおいて投入排出部５へハンド装置２５を移動させ、ステップＳ８ｂにおいて記憶媒体搬送処理を行う。ステップＳ６ｂやステップＳ８ｂの処理は、サブルーチンとなっているが、その内容は、基本的には、図２８及び図２９に示すフロー図に示す処理と共通する。
【００５９】
以上、説明したように、ライブラリ装置１の種々の動作において搬送順決定処理及びジョブ分配処理を行うことにより、大量の記憶媒体の搬送時間を短縮することができる。
【００６０】
ライブラリ装置１は、複数のジョブを個別に扱うのではなく、複数のジョブを纏め、記憶媒体に基づいてジョブを振り分け、複数の記憶媒体を一度にまとめて回収するとにより、ロボットの移動回数を削減することができる。
【００６１】
また、本実施形態のライブラリ装置１は、上述のように第１ロボット２０及び第２ロボット４０を備える。そして、ライブラリ装置１は、一方のロボットが故障した場合であっても、他方のロボットが正常に稼動する限り、ジョブを継続することができる。この場合、ジョブ判定部８２は、故障したロボットが備える搬送体２６のスロット２６ａ内に収納された記憶媒体を、他方のロボットが備える搬送体２６のスロットに移し替え、運用継続処理を行う。以下、一方のロボットが故障した際にジョブ判定部８２が行う制御について図３２及び図３３を参照しつつ説明する。図３２は２台のロボットのうち、一方のロボットが故障した際に運用継続する制御の一例を示すフロー図である。図３３は故障した一方のロボットから他方のロボットへ記憶媒体を移動させる処理の一例を示すフロー図である。ここでは、上述のように第１ロボットが故障した場合の制御について詳細に説明する。
【００６２】
ステップＳＡ１では、故障した第１ロボット２０を予備のロボットである第２ロボット４０により退避筐体となる筐体Ａ７に設けられた退避部６に移動させられる。そして、ステップＳＡ２において故障した第１ロボット２０の搬送体２６から記憶媒体１４を回収し、第２ロボット４０の搬送体２６へ移し替る。記憶媒体１４を移し替る処理は、図３３に示すサブルーチンとなっている。ステップＳＡ２１では、故障した第１ロボット２０のジョブ処理の進行状態から故障した第１ロボット２０のスロット情報ｄｏｗｎ［ｂｓ］を作成する。そして、ステップＳＡ２２では、ｄｏｗｎ［０］が空か否かを判断する。ｄｏｗｎ［０］が空の場合は、故障した第１ロボット２０が残した処理がないことになるため、ステップＳＡ２２でＮｏと判断したときは、処理は終了となる。
【００６３】
一方、ステップＳＡ２２でＹｅｓと判断したときは、第１ロボット２０が残したジョブを処理するために、ステップＡ２３以下の処理を行う。ステップＳＡ２３では、故障した第１ロボット２０の搬送体２６を回転させる。搬送体２６の回転動作については、上述しているのでここではその詳細な説明は省略する。ステップＳＡ２３に引き続き行われるステップＳＡ２４では、スロット２６ａを上から順にカウントする準備としてスロットカウント数ｉをｉ＝０にセットする。ステップＳＡ２５では、故障した第１ロボット２０が備える搬送体２６の上からｉ＋１番目のスロット２６ａへハンド装置２５を移動させ、ステップＳＡ２６では、ハンド装置２５により対象となる記憶媒体１４を把持する。ステップＳＡ２７では、予備のロボットとなる第２ロボット４０の搬送体２６の上からｉ＋１番目のスロット２６ａへハンド装置２５を移動させ、ステップＳＡ２８では、ハンド装置２５により対象となる記憶媒体１４をスロット２６ａへ挿入する。ステップＳＡ２９では、スロットカウント数ｉをｉ＝ｉ＋１とする。ステップＳＡ３０では、スロットカウント数ｉがスロット数ｂｓと一致したか否かを判断する。ステップＳＡ３０でＹｅｓと判断したときは、サブルーチンは終了となる。一方、ステップＳＡ３０でＮｏと判断したときは、ステップＳＡ３１へ進む。ステップＳＡ３１では、ｄｏｗｎ［ｉ］が空であるか否か、すなわち、ｄｏｗｎ［ｉ］に対応するデータがあるか否かを判断する。ステップＳＡ３１でＹｅｓと判断したときは、全てのスロット２６ａに対する処理が終了したことになるので、サブルーチンは終了となる。一方、ステップＳＡ３１でＮｏと判断したときは、ステップＳＡ２５からの処理を繰り返す。図３３に示すサブルーチンが終了した後は、ステップＳＡ３へ進む。ステップＳＡ３では、故障した第１ロボット２０が行っていたジョブを第２ロボット４０が引き継ぐことにより、故障した第１ロボット２０が請け負っていたジョブを継続して処理する。ステップＳＡ３の処理が完了することにより、一連の処理は終了となる。
【００６４】
上記のライブラリ装置１は、２台のロボットを備えているおり、上記の制御は、単一のロボットのみを稼動させる場合にも適用することができる。例えば、第１ロボット２０と第２ロボット４０のいずれか一方のみを備えたライブラリ装置にも適用することができる。すなわち、少なくとも収納棚と、この収納棚の並びに沿って走行し、収納棚に収納される記憶媒体を搬送するとともに、複数の記憶媒体を一時的に収納する搬送体を有するロボットを備えるライブラリ装置に適用することができる。なお、単一のロボットのみを備える場合は、回転装置３７は、不要である。
【００６５】
以上説明したように、実施形態のライブラリ装置によれば、第１ロボットと第２ロボットが搬送体２６を備えているので、一度に大量の記憶媒体１４をまとめて搬送することができる。この結果、大量の記憶媒体１４の搬送時間を短縮することができる。また、一方のロボットが故障したときであっても、他方のロボットを稼動させることができ、しかも、故障したロボットが請け負っていた記憶媒体１４を他方のロボットに移すことができるので、ライブラリ装置１の運用を継続することができる。
【００６６】
以上本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。
【符号の説明】
【００６７】
１  ライブラリ装置        ２  収容棚
３  スロット              ４  テープドライブ
５  投入排出体            ６  退避部
７  レール                １４  記憶媒体
２０  第１ロボット        ２１  フレーム部
２１ａ  支柱部            ２１ａ１  レール部
２１ｂ  シャーシ部        ２５  ハンド装置
２６  搬送体              ２６ａ  スロット
２８  回転シャフト        ２８ａ  螺糸部
２９  レバー部材          ２９ａ  溝部
３７  回転装置            ８２  ジョブ判定部
【図１】
2014149904.tif 000003
【図２】
2014149904.tif 000004
【図３】
2014149904.tif 000005
【図４】
2014149904.tif 000006
【図５】
2014149904.tif 000007
【図６】
2014149904.tif 000008
【図７】
2014149904.tif 000009
【図８】
2014149904.tif 000010
【図９】
2014149904.tif 000011
【図１０】
2014149904.tif 000012
【図１１】
2014149904.tif 000013
【図１２】
2014149904.tif 000014
【図１３】
2014149904.tif 000015
【図１４】
2014149904.tif 000016
【図１５】
2014149904.tif 000017
【図１６】
2014149904.tif 000018
【図１７】
2014149904.tif 000019
【図１８】
2014149904.tif 000020
【図１９】
2014149904.tif 000021
【図２０】
2014149904.tif 000022
【図２１】
2014149904.tif 000023
【図２２】
2014149904.tif 000024
【図２３】
2014149904.tif 000025
【図２４】
2014149904.tif 000026
【図２５】
2014149904.tif 000027
【図２６】
2014149904.tif 000028
【図２７】
2014149904.tif 000029
【図２８】
2014149904.tif 000030
【図２９】
2014149904.tif 000031
【図３０】
2014149904.tif 000032
【図３１】
2014149904.tif 000033
【図３２】
2014149904.tif 000034
【図３３】
2014149904.tif 000035