(57)【特許請求の範囲】
【請求項１】
処理対象を収容した容器に対する処理を表す処理シンボルを少なくとも含むプロトコルチャートに基づいて、少なくともロボットを含む処理システムに行わせるジョブの集合体である動作指令を生成する動作指令生成装置であって、
前記処理シンボルに基づいて、前記処理システムに対して、作業場所において前記容器に対する処理を行わせるジョブを生成する処理ジョブ生成部と、
前記処理シンボルの表す処理が異なる種類の容器に対してそれぞれ行われる処理である場合に、前記処理システムに対して、前記異なる種類の容器のうち１の種類の容器を退避場所から前記作業場所に移送させるジョブを生成し、前記１の種類の容器に対して前記処理シンボルの表す処理が行われた後に前記１の種類の容器を前記作業場所から前記退避場所に移送させるジョブを生成し、前記１の種類の容器が前記作業場所から前記退避場所に移送された後に前記異なる種類の容器のうち他の種類の容器を前記退避場所から前記作業場所に移送させるジョブを生成し、
前記処理シンボルの表す複数の処理が同一の容器に対してなされる異なる処理である場合に、前記処理システムに対して、前記異なる処理が続けてなされる間、前記同一の容器を前記作業場所から前記退避場所に移送させる前記ジョブを生成しない、移送ジョブ生成部と、
を有する動作指令生成装置。
【請求項２】
複数の前記処理シンボルが、同一の容器に対する処理を表すものであるか否かを判断する同一容器判断部をさらに有し、
前記同一容器判断部により、複数の前記処理シンボルが同一の容器に対する処理を表すものでないと判断される場合に、前記処理ジョブ生成部及び前記移送ジョブ生成部は、それぞれ前記容器ごとにジョブを生成する請求項１に記載の動作指令生成装置。
【請求項３】
前記同一容器判断部により、複数の前記処理シンボルが同一の容器に対する処理を表すものであると判断される場合に、
前記処理ジョブ生成部は、前記処理システムに対して、複数の前記処理シンボルが表す処理を前記容器に連続して行わせるジョブを生成し、
前記移送ジョブ生成部は、前記処理システムに対して、少なくとも、複数の前記処理シンボルが表す処理のうち最後の処理が行われた後に前記容器を前記作業場所から前記退避場所に移送させるジョブを生成する請求項２に記載の動作指令生成装置。
【請求項４】
前記プロトコルチャートに基づいて、前記処理シンボルに関連付けられた容器数を抽出する容器数抽出部と、
前記処理ジョブ生成部は、前記処理シンボルに基づいて、前記処理システムに対して、前記容器数抽出部により抽出された容器数分、前記容器に対する処理を繰り返させるジョブを生成し、
前記移送ジョブ生成部は、前記処理システムに対して、前記容器数抽出部により抽出された容器数分、前記容器を前記作業場所から前記退避場所に移送させるジョブを生成する請求項１〜３のいずれか１項に記載の動作指令生成装置。
【請求項５】
前記作業場所は、１又は複数の前記容器を配置できる第１の範囲を有し、
前記容器数抽出部により抽出された容器数分の前記容器すべてが前記第１の範囲に配置できるか否かを判断する配置可否判断部と、
前記配置可否判断部により、前記容器すべてが前記第１の範囲に配置できないと判断される場合に、
前記処理ジョブ生成部が有する処理ジョブ分割部は、前記処理システムに対して前記処理シンボルが表す処理を行わせるジョブを、前記第１の範囲に配置できる数の前記容器ごとに行われる２以上のジョブに分割し、
前記移送ジョブ生成部が有する移送ジョブ分割部は、前記処理システムに対して前記容器を移送させるジョブを、前記処理ジョブ分割部による分割に基づいて、２以上のジョブに分割する請求項４に記載の動作指令生成装置。
【請求項６】
前記作業場所は、それぞれ１又は複数の前記容器を配置できる移送元範囲及び移送先範囲を有し、
前記処理システムに対し、前記処理対象を収容した第１の容器を前記移送元範囲に配置させ、第２の容器を前記移送先範囲に配置させるジョブを生成する容器配置ジョブ生成部と、
前記プロトコルチャートに含まれる移送シンボルに基づいて、前記処理システムに対し、前記第１の容器から前記第２の容器に前記処理対象を移送させるジョブを生成する処理対象移送ジョブ生成部と、をさらに有する請求項１〜５のいずれか１項に記載の動作指令生成装置。
【請求項７】
前記処理シンボルに基づいて、前記処理システムに対して、前記容器に対して周辺機器を用いた処理をさせるジョブを生成する機器処理ジョブ生成部と、
前記処理シンボルが表す処理が、少なくとも同一の容器に対する処理でない場合に、前記処理システムに対して、前記処理シンボルの表す処理が行われた後に前記容器を前記周辺機器から前記作業場所に移送させるジョブを生成する機器移送ジョブ生成部と、をさらに有する請求項１〜６のいずれか１項に記載の動作指令生成装置。
【請求項８】
前記処理システムに対して、複数の前記処理シンボルが表す第１及び第２の周辺機器を用いた処理の間に行わせるジョブであって、前記容器を前記第１の周辺機器から前記第２の周辺機器に移送させるジョブを生成する機器間移送ジョブ生成部をさらに有する請求項７に記載の動作指令生成装置。
【請求項９】
前記作業場所は、複数の前記容器を配置できる第２の範囲をさらに有し、
前記配置可否判断部により、前記容器すべてが前記第１の範囲に配置できないと判断される場合に、
前記処理ジョブ生成部は、前記処理シンボルに基づいて、前記処理システムに対して、前記第１の範囲及び前記第２の範囲において前記容器に対する処理を行わせるジョブを生成し、
前記移送ジョブ生成部は、前記処理システムに対して、前記処理シンボルの表す処理が行われた後に前記容器を前記第１の範囲及び前記第２の範囲から退避場所に移送させるジョブを生成する請求項５に記載の動作指令生成装置。
【請求項１０】
コンピュータを、請求項１〜９のいずれか１項に記載の動作指令生成装置として機能させるためのコンピュータプログラム。
【請求項１１】
処理対象を収容した容器に対する処理を表す処理シンボルを少なくとも含むプロトコルチャートに基づいて、少なくともロボットを含む処理システムに行わせるジョブの集合体である動作指令を生成する動作指令生成方法であって、
前記処理シンボルに基づいて、前記処理システムに対して、作業場所において前記容器に対する処理を行わせるジョブを生成し、
前記処理シンボルの表す処理が異なる種類の容器に対してそれぞれ行われる処理である場合に、前記処理システムに対して、前記異なる種類の容器のうち１の種類の容器を退避場所から前記作業場所に移送させるジョブを生成し、前記１の種類の容器に対して前記処理シンボルの表す処理が行われた後に前記１の種類の容器を前記作業場所から前記退避場所に移送させるジョブを生成し、前記１の種類の容器が前記作業場所から前記退避場所に移送された後に前記異なる種類の容器のうち他の種類の容器を前記退避場所から前記作業場所に移送させるジョブを生成し、
前記処理シンボルの表す複数の処理が同一の容器に対してなされる異なる処理である場合に、前記処理システムに対して、前記異なる処理が続けてなされる間、前記同一の容器を前記作業場所から前記退避場所に移送させる前記ジョブを生成しない、
動作指令生成方法。
【請求項１２】
請求項１〜９のいずれか１項に記載の動作指令生成装置と、
前記動作指令生成装置により生成された動作指令に基づき制御対象を制御するロボット制御装置と、
前記ロボット制御装置の制御対象であり、処理対象を収容した容器に対する処理を行うロボットと、を有する処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作指令生成装置、動作指令生成方法、コンピュータプログラム、及び処理システムに関する。
【背景技術】
【０００２】
生化学や生物／生命工学の分野における、一連の検査や培養、増幅といった処理対象に対してする操作（以降、これらを一まとめにして「実験」と称する。）の作業手順や条件は一般にプロトコルと呼びならわされている。プロトコルは、実験について再現性のある結果を得、或いはその実験結果の検証を行う上で必要な情報である。
【０００３】
そして、同分野における実験は、コンタミネーション等、実験結果に悪影響を及ぼす要因をできる限り排除することが望まれる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、コンタミネーション等を防止して、プロトコルに基づく実験を、ロボットに行わせるための動作指令を自動的に生成することをその課題とする。
【課題を解決するための手段】
【０００５】
本発明の一の側面による動作指令生成装置は、処理対象を収容した容器に対する処理を表す処理シンボルを少なくとも含むプロトコルチャートに基づいて、少なくともロボットを含む処理システムに行わせるジョブの集合体である動作指令を生成する動作指令生成装置であって、前記処理シンボルに基づいて、前記処理システムに対して、作業場所において前記容器に対する処理を行わせるジョブを生成する処理ジョブ生成部と、前記処理シンボルの表す処理が少なくとも同一の容器に対する処理でない場合に、前記処理システムに対して、前記処理シンボルの表す処理が行われた後に前記容器を前記作業場所から退避場所に移送させるジョブを生成する移送ジョブ生成部と、を有する。
【０００６】
また、本発明の一の側面による動作指令生成装置は、複数の前記処理シンボルが、同一の容器に対する処理を表すものであるか否かを判断する同一容器判断部をさらに有し、前記同一容器判断部により、複数の前記処理シンボルが同一の容器に対する処理を表すものでないと判断される場合に、前記処理ジョブ生成部及び前記移送ジョブ生成部は、それぞれ前記容器ごとにジョブを生成してもよい。
【０００７】
また、本発明の一の側面による動作指令生成装置は、前記同一容器判断部により、複数の前記処理シンボルが同一の容器に対する処理を表すものであると判断される場合に、前記処理ジョブ生成部は、前記処理システムに対して、複数の前記処理シンボルが表す処理を前記容器に連続して行わせるジョブを生成し、前記移送ジョブ生成部は、前記処理システムに対して、少なくとも、複数の前記処理シンボルが表す処理のうち最後の処理が行われた後に前記容器を前記作業場所から前記退避場所に移送させるジョブを生成してもよい。
【０００８】
また、本発明の一の側面による動作指令生成装置は、前記プロトコルチャートに基づいて、前記処理シンボルに関連付けられた容器数を抽出する容器数抽出部と、前記処理ジョブ生成部は、前記処理シンボルに基づいて、前記処理システムに対して、前記容器数抽出部により抽出された容器数分、前記容器に対する処理を繰り返させるジョブを生成し、前記移送ジョブ生成部は、前記処理システムに対して、前記容器数抽出部により抽出された容器数分、前記容器を前記作業場所から前記退避場所に移送させるジョブを生成してもよい。
【０００９】
また、本発明の一の側面による動作指令生成装置において、前記作業場所は、１又は複数の前記容器を配置できる第１の範囲を有し、前記容器数抽出部により抽出された容器数分の前記容器すべてが前記第１の範囲に配置できるか否かを判断する配置可否判断部と、前記配置可否判断部により、前記容器すべてが前記第１の範囲に配置できないと判断される場合に、前記処理ジョブ生成部が有する処理ジョブ分割部は、前記処理システムに対して前記処理シンボルが表す処理を行わせるジョブを、前記第１の範囲に配置できる数の前記容器ごとに行われる２以上のジョブに分割し、前記移送ジョブ生成部が有する移送ジョブ分割部は、前記処理システムに対して前記容器を移送させるジョブを、前記処理ジョブ分割部による分割に基づいて、２以上のジョブに分割してもよい。
【００１０】
また、本発明の一の側面による動作指令生成装置において、前記作業場所は、それぞれ１又は複数の前記容器を配置できる移送元範囲及び移送先範囲を有し、前記処理システムに対し、前記処理対象を収容した第１の容器を前記移送元範囲に配置させ、第２の容器を前記移送先範囲に配置させるジョブを生成する容器配置ジョブ生成部と、前記プロトコルチャートに含まれる移送シンボルに基づいて、前記第１の容器から前記第２の容器に前記処理対象を移送するジョブを生成する処理対象移送ジョブ生成部と、をさらに有してもよい。
【００１１】
また、本発明の一の側面による動作指令生成装置は、前記処理シンボルに基づいて、前記処理システムに対して、前記容器に対して前記周辺機器を用いた処理をさせるジョブを生成する機器処理ジョブ生成部と、前記処理シンボルが表す処理が、少なくとも同一の容器に対する処理でない場合に、前記処理システムに対して、前記処理シンボルの表す処理が行われた後に前記容器を前記周辺機器から前記作業場所に移送させるジョブを生成する機器移送ジョブ生成部と、をさらに有してもよい。
【００１２】
また、本発明の一の側面による動作指令生成装置は、前記処理システムに対して、複数の前記処理シンボルが表す第１及び第２の周辺機器を用いた処理の間に行わせるジョブであって、前記容器を前記第１の周辺機器から前記第２の周辺機器に移送させるジョブを生成する機器間移送ジョブ生成部をさらに有してもよい。
【００１３】
また、本発明の一の側面による動作指令生成装置において、前記作業場所は、複数の前記容器を配置できる第２の範囲をさらに有し、前記配置可否判断部により、前記容器すべてが前記第１の範囲に配置できないと判断される場合に、前記処理ジョブ生成部は、前記処理シンボルに基づいて、前記処理システムに対して、前記第１の範囲及び前記第２の範囲において前記容器に対する処理を行わせるジョブを生成し、前記移送ジョブ生成部は、前記処理システムに対して、前記処理シンボルの表す処理が行われた後に前記容器を前記第１の範囲及び前記第２の範囲から退避場所に移送させるジョブを生成してもよい。
【００１４】
また、本発明の別の側面によるコンピュータプログラムは、コンピュータを、上述の動作指令生成装置として機能させる。
【００１５】
また、本発明の別の側面による動作指令作成方法は、処理対象を収容した容器に対する処理を表す処理シンボルを少なくとも含むプロトコルチャートに基づいて、少なくともロボットを含む処理システムに行わせるジョブの集合体である動作指令を生成する動作指令生成方法であって、前記処理シンボルに基づいて、前記処理システムに対して、作業場所において前記容器に対する処理を行わせるジョブを生成し、前記処理シンボルの表す処理が少なくとも同一の容器に対する処理でない場合に、前記処理システムに対して、前記処理シンボルの表す処理が行われた後に前記容器を前記作業場所から退避場所に移送させるジョブを生成する。
【００１６】
また、本発明の別の側面による処理システムは、上述の動作指令生成装置と、前記動作指令生成装置により生成された動作指令に基づき制御対象を制御するロボット制御装置と、前記ロボット制御装置の制御対象であり、処理対象を収容した容器に対する処理を行うロボットと、を有する。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態に係る処理システムの物理的な構成を示す概略図である。
【図２】本発明の実施形態に係る動作指令生成装置の物理的な構成を示す構成ブロック図である。
【図３】本発明の実施形態に係る動作指令生成装置の機能ブロック図である。
【図４】本発明の実施形態に係る動作指令生成装置により取得されるプロトコルチャートの第１の例を示す図である。
【図５】プロトコルチャートの第１の例に基づいて生成されるジョブにおけるロボットの動作を説明する図である。
【図６】本発明の実施形態に係る動作指令生成装置により取得されるプロトコルチャートの第２の例を示す図である。
【図７】プロトコルチャートの第２の例に基づいて生成されるジョブにおけるロボットの動作を説明する図である。
【図８】本発明の実施形態に係る動作指令作成装置により取得されるプロトコルチャートの第３の例を示す図である。
【図９】プロトコルチャートの第３の例に基づいて生成されるジョブにおけるロボットの動作を説明する図である。
【図１０】本発明の実施形態に係る動作指令作成装置により取得されるプロトコルチャートの第４の例を示す図である。
【図１１】プロトコルチャートの第４の例に基づいて生成されるジョブにおけるロボットの動作を説明する図である。
【図１２】本発明の実施形態に係る動作指令作成装置により取得されるプロトコルチャートの第５の例を示す図である。
【図１３Ａ】プロトコルチャートの第５の例に基づいて生成されるジョブにおけるロボットの動作のうち前半部分を説明する図である。
【図１３Ｂ】プロトコルチャートの第５の例に基づいて生成されるジョブにおけるロボットの動作のうち後半部分を説明する図である。
【図１４】本発明の実施形態に係る動作指令作成装置により取得されるプロトコルチャートの第６の例を示す図である。
【図１５】プロトコルチャートの第６の例に基づいて生成されるジョブにおけるロボットの動作を説明する図である。
【図１６】本発明の実施形態に係る動作指令作成装置により取得されるプロトコルチャートの第７の例を示す図である。
【図１７】プロトコルチャートの第７の例に基づいて生成されるジョブにおけるロボットの動作を説明する図である。
【図１８】本発明の実施形態に係る動作指令作成装置により取得されるプロトコルチャートの第８の例を示す図である。
【図１９】プロトコルチャートの第８の例に基づいて生成されるジョブにおけるロボットの動作を説明する図である。
【図２０】本発明の実施形態に係る動作指令生成部の動作を示す第１のフローチャートである。
【図２１】本発明の実施形態に係る動作指令生成部の動作を示す第２のフローチャートである。
【図２２】本発明の実施形態に係る動作指令生成部の動作を示す第３のフローチャートである。
【図２３】本発明の実施形態に係る動作指令生成部の動作を示す第４のフローチャートである。
【発明を実施するための形態】
【００１８】
本発明の発明者の知見によれば、生化学、生物／生命工学における実験において、所期の結果を得られる可能性、すなわち、実験の再現性は、実験者の技量に依存する部分が大きく、実験結果の信頼性の検証等に支障をきたす場合がある。そこで、発明者は、実験をロボットを用いて実施することで、人為的要因を排除することを検討している。
【００１９】
ここで、コンタミネーション等を防止し、かつロボットの動作を人が観察した場合の分かりやすさを向上させるためには、プロトコルに必ずしも明示されない動作をロボットに行わせなければならない。
【００２０】
そこで、本発明者は、コンタミネーション等を防止して、プロトコルに基づく実験をロボットに行わせるための動作指令を自動的に生成することについて鋭意研究開発を行い、新規かつ独創的な動作指令生成装置等を発明するに至った。以下、かかる動作指令生成装置等について、実施形態を例示して説明する。
【００２１】
図１は、本発明の実施形態に係る処理システム２００の物理的な構成の例を示す概略図である。処理システム２００は、プロトコルを図示したプロトコルチャートに基づき、ロボット３の動作指令を生成する動作指令生成装置１と、生成された動作指令に基づき、ロボット３を制御するロボット制御装置２と、ロボット制御装置２により制御され、実験を実行するロボット３とを含む。動作指令生成装置１自体は、専用の機器であってもよいが、ここでは一般的なコンピュータを使用して実現されている。すなわち、市販のコンピュータにおいて、当該コンピュータを動作指令生成装置１として動作させるコンピュータプログラムを実行することによりかかるコンピュータを動作指令生成装置１として使用する。かかるコンピュータプログラムは、一般にアプリケーションソフトウェアの形で提供され、コンピュータにインストールされて使用される。当該アプリケーションソフトウェアは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭその他のコンピュータ読み取り可能な適宜の情報記録媒体に記録されて提供されてよく、また、インターネット等の各種の情報通信ネットワークを通じて提供されてもよい。あるいは、情報通信ネットワークを通じて遠隔地にあるサーバによりその機能が提供される、いわゆるクラウドコンピューティングにより実現されてもよい。また、ロボット制御装置２は、ここではロボット３と一体となって、又は別体に設けられており、動作指令生成装置１により生成された動作指令に基づいて、ロボット３に所望の動作を実行させる。
【００２２】
ロボット３は、多関節の双腕型ロボットであり、処理対象を収容した容器に対する処理を行う。ロボット３は、アームによりピペット４を把持し操作する等、図示しあるいは図示しない実験器具を操作し、また、サブラック５に格納されたマイクロチューブ６を把持し、マイクロチューブ６をサブラック５からメインラック７等へ移動させるなど、図示しあるいは図示しない各種容器を移動させることができる。本実施形態では、ロボット３は、処理対象をマイクロチューブ６に注入する等、マイクロチューブ６に対する処理を行う場合、メインラック７にマイクロチューブ６を移動させ、メインラック７上で処理を行うようにしている。処理システム２００には、さらに、撹拌機８と、遠心分離器９とが含まれる。図１に示す例では、実験を行う場合に用いられる器具の一例を示したが、処理システム２００には、他の器具が含まれてもよい。例えば、処理システム２００には、恒温槽やマグネットラック等が含まれてもよい。また、ロボット３は図示した形態のものに限られず、単腕型ロボット等であってもよいし、複数のロボットが協調して動作するものであってもよい。
【００２３】
図２は、本発明の実施形態に係る動作指令生成装置１の物理的な構成を示すブロック図である。図２に示した構成は、動作指令生成装置１として用いられる一般的なコンピュータを示しており、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１ａ、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１ｂ、外部記憶装置１ｃ、ＧＣ（Ｇｒａｐｈｉｃｓ  Ｃｏｎｔｒｏｌｌｅｒ）１ｄ、入力デバイス１ｅ及びＩ／Ｏ（Ｉｎｐｕｒ／Ｏｕｔｐｕｔ）１ｆがデータバス１ｇにより相互に電気信号のやり取りができるよう接続されている。ここで、外部記憶装置１ｃはＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の静的に情報を記録できる装置である。またＧＣ１ｄからの信号はフラットパネルディスプレイ等の、使用者が視覚的に画像を認識するモニタ１ｈに出力され、画像として表示される。入力デバイス１ｅはキーボードやマウス、タッチパネル等の、ユーザが情報を入力するための機器であり、Ｉ／Ｏ１ｆは動作指令生成装置１が外部の機器と情報をやり取りするためのインタフェースである。
【００２４】
図３は、本実施形態に係る動作指令生成装置１の機能ブロック図である。なお、ここで示した機能ブロックは、動作指令生成装置１が有する機能に着目して示したものであり、必ずしも各機能ブロックに１対１に対応する物理的構成が存在することを要しない。いくらかの機能ブロックは動作指令生成装置１のＣＰＵ１ａ等の情報処理装置が特定のソフトウェアを実行することにより実現され、またいくらかの機能ブロックは動作指令生成装置１のＲＡＭ１ｂ等の情報記憶装置に特定の記憶領域が割り当てられることにより実現されてよい。
【００２５】
動作指令生成装置１は、ユーザからの各種の入力を受け付ける入力部１０と、プロトコルを図示したプロトコルチャートを取得するプロトコルチャート取得部１１とを有する。また、動作指令生成装置１は、入力部１０により受けつけられた入力、及びプロトコルチャート取得部１１により取得されたプロトコルチャートに基づいて動作指令を生成する動作指令生成部１２を有する。さらに、動作指令生成装置１は、生成中及び生成された動作指令の電子データを記憶する動作指令記憶部２６と、動作指令記憶部２６に記憶された動作指令の電子データを成形しモニタ１ｈに表示する動作指令表示部２７と、生成された動作指令をロボットが読み取り可能な形式の電子ファイルとして出力する動作指令出力部２８とを有する。また、動作指令生成装置１は、入力部１０により受け付けられた入力に基づいて、容器を一時的に退避させておく場所である退避場所を処理システムに含まれる容器格納場所のうちから設定する退避場所設定部３３と、ロボット３が容器に対する処理を行う場所である作業場所を処理システムに含まれる容器格納場所のうちから設定する作業場所設定部３４とを有する。退避場所設定部３３及び作業場所設定部３４の設定情報は、場所設定記記憶部３５に記憶され、動作指令生成部１２に入力される。
【００２６】
入力部１０は、通常は図１に示した入力デバイス１ｅにより構成されるが、動作指令生成装置１がクラウドコンピューティングに用いられるアプリケーションサーバである場合には、遠隔地にある端末上でのユーザの操作情報が入力されるＩ／Ｏ１ｆが該当することになる。
【００２７】
動作指令生成部１２には動作指令を生成するための種々の機能ブロックが含まれる。詳細は後ほど動作指令の生成手順を説明する際に合わせて説明するが、本実施形態では、動作指令生成部１２には、処理システム２００に対して、処理対象を収容する容器を退避場所から移動させ、作業場所に配置させるジョブを生成する配置ジョブ生成部１３が含まれる。また、動作指令生成部１２には、処理シンボルに基づいて、処理システム２００に対して、作業場所において容器に対する処理を行わせるジョブを生成する処理ジョブ生成部１４が含まれる。また、動作指令生成部１２には、処理シンボルの表す処理が少なくとも同一の容器に対する処理でない場合に、処理システム２００に対して、処理シンボルの表す処理が行われた後に容器を作業場所から退避場所に移送させるジョブを生成する移送ジョブ生成部１５が含まれる。さらに、動作指令生成装置１には、複数の処理シンボルが、同一の容器に対する処理を表すものであるか否かを判断する同一容器判断部１６と、プロトコルチャートに基づいて、処理シンボルに関連付けられた容器数を抽出する容器数抽出部１７と、作業場所における容器の配置を、容器数抽出部１７により抽出された容器数分重複無く設定する配置設定部１８と、容器数抽出部１７により抽出された容器数分の容器すべてが作業場所の第１の範囲に配置できるか否かを判断する配置可否判断部１９とが含まれる。また、動作指令生成装置１には、処理システム２００に対し、処理対象を収容した第１の容器を移送元範囲に配置させ、第２の容器を移送先範囲に配置させるジョブを生成する移送準備ジョブ生成部２０が含まれる。さらに、動作指令生成装置１には、プロトコルチャートに含まれる移送シンボルに基づいて、処理システム２００に対し、第１の容器から第２の容器へと処理対象を移送させるジョブを生成する移送ジョブ生成部２１と、移送処理の後に行われるジョブであって、処理システム２００に対して、第１の容器を移送元範囲から退避場所に移送させるジョブを生成し、第２の容器を移送先範囲から退避場所に移送させるジョブを生成する移送退避ジョブ生成部２２とが含まれる。
【００２８】
なお、本明細書において、ジョブとは、少なくともロボットを含む処理システムに対する指令であって、処理対象が収容される容器に対する単位処理を行う指令をいうものとする。また、動作指令とは、複数のジョブが組み合わされたジョブの集合体をいうものとする。動作指令生成装置１は、プロトコルチャートに表された処理シンボル等に基づいて単位処理であるジョブを生成し、統合して、処理システムに対する動作指令を生成する。
【００２９】
配置ジョブ生成部１３には、さらに、配置可否判断部１９により、容器すべてが作業場所の第１の範囲に配置できないと判断される場合に、容器を配置させるジョブを、処理システム２００に対して、第１の範囲に配置できる数の容器を第１の範囲に配置させる２以上のジョブに分割する容器準備ジョブ分割部１３ａが含まれる。
【００３０】
また、処理ジョブ生成部１４には、さらに、配置可否判断部１９により、容器すべてが作業場所の第１の範囲に配置できないと判断される場合に、処理シンボルに基づいて、処理システム２００に対して処理シンボルが表す処理を行わせるジョブを、第１の範囲に配置できる数の容器ごとに行われる２以上のジョブに分割する処理ジョブ分割部１４ａが含まれる。また、処理ジョブ生成部１４には、容器を作業場所から周辺機器に配置するジョブを生成する機器配置ジョブ生成部１４ｂと、処理シンボルに基づいて、処理システム２００に対して、容器に対して周辺機器を用いた処理をさせるジョブを生成する機器処理ジョブ生成部１４ｃと、処理シンボルが表す処理が、少なくとも同一の容器に対する処理でない場合に、処理システム２００に対して、処理シンボルの表す処理が行われた後に容器を周辺機器から作業場所に移送させるジョブを生成する機器移送ジョブ生成部１４ｄとが含まれる。さらに、処理ジョブ生成部１４には、処理システム２００に対して、複数の処理シンボルが表す第１及び第２の周辺機器を用いた処理の間に行わせるジョブであって、容器を第１の周辺機器から第２の周辺機器に移送させるジョブを生成する機器間移送ジョブ生成部１４ｅが含まれる。
【００３１】
また、移送ジョブ生成部１５には、さらに、配置可否判断部１９により、容器すべてが第１の範囲に配置できないと判断される場合に、処理システム２００に対して容器を移送させるジョブを、前記処理ジョブ分割部による分割に基づいて、２以上のジョブに分割する移送ジョブ分割部１５ａが含まれる。
【００３２】
図４は、本実施形態に係る動作指令生成装置１により取得されるプロトコルチャートの第１の例を示す図である。
【００３３】
ここで、本明細書において、プロトコルチャートとは、プロトコルを視覚的に理解し得る態様で図示したものをいい、プロトコルとは生化学や生物・生命工学等の分野において処理対象に対しなされる前処理等の作業手順及び条件を指すものとする。プロトコルチャートは、処理対象を収容した容器に対する処理を表す処理シンボルを少なくとも含む。また、処理対象とは、同分野において実験の対象となる材料をさす。一般には、細胞やＤＮＡ等の生体組織の一部であることが多い。また、処理対象は一般に実験に特に適した器具、例えば、マイクロチューブ（遠枕管）、ペトリ皿（シャーレ）やマイクロプレート（マイクロタイタープレート）に収容されて実験に供されるが、本明細書で単に容器と言えば、実験における処理対象の収容に適したこれらの器具を指すものとする。
【００３４】
また、便宜上、図４における上下方向を第１の方向と称し、第１の方向と交差する方向を第２の方向と称する。第１の方向と第２の方向との交差角度は必ずしも直角でなくともよいが、ここでは第１の方向と第２の方向は直交するものとする。そのため、第２の方向は図４における左右方向に向く軸である。
【００３５】
本例のプロトコルチャートは、基本的には、処理対象を収容する容器の初期状態を示す初期シンボル１００と、その容器の最終状態を示す最終シンボル１０１を第１の方向に並べ、両者を初期シンボル１００から最終シンボル１０１に向かう順序線１０２で第１の方向に接続し、順序線１０２に沿って容器に対しする個別の処理を示す処理シンボル１０３を配置したものである。図４に示す第１の例では、「Ｔｕｂｅ」と記載された初期シンボル１００と最終シンボル１０１及び、両者を接続する順序線１０２からなる組が記載されている。ここで、順序線１０２は、処理が行われる順序を矢線で表している。すなわち、本例のプロトコルチャートは、はじめに「Ｔｕｂｅ」と記載された初期シンボル１００が表すジョブを行い、その後「Ｔｕｂｅ」について「Ａ」と記載された処理シンボル１０３が表すジョブを行い、最後に「Ｔｕｂｅ」と記載されて最終シンボル１０１が表すジョブを行うことを意味する。
【００３６】
なお、本例のプロトコルチャート、及び第２−５の例のプロトコルチャートでは、説明を簡明にするため処理シンボル１０３が表す処理の具体的内容を例示していない。処理シンボル１０３が表す処理の具体的内容は、例えば、撹拌機８を用いて行われる撹拌処理、遠心分離器９を用いて行われる遠心分離処理、恒温槽に安置することにより行われる反応処理等がある。また、ピペット４を用いてマイクロチューブ６に薬品等を注入する処理が行われる場合もある。さらに、容器がペトリ皿の場合、ペトリ皿上に培養された細胞等をヘラで剥ぎ取るスクレープ処理が行われる場合もある。
【００３７】
以下に、本実施形態に係る動作指令生成装置１により、コンタミネーション等を防止しつつ、図４に図示した第１の例のプロトコルチャートに基づいてどのようにジョブが生成されるかを説明する。
【００３８】
まず、動作指令生成装置１のプロトコルチャート取得部１１によりプロトコルチャートが取得され、プロトコルチャート中、最上段に記載された「Ｔｕｂｅ」と記載された初期シンボル１００に基づいて、動作指令生成部１２により、処理システム２００に対して、処理対象が収容されるマイクロチューブ６をサブラック５に準備させるジョブが生成される。初期シンボル１００の左側に記載された「Ｔｕｂｅ」はマイクロチューブを示し、右側に記載された「Ｔｕｂｅ  Ｒａｃｋ」は、かかるマイクロチューブが保管されている機器を示しており、ここではチューブ棚である。したがって、動作指令生成部１２は、「Ｔｕｂｅ」と記載された初期シンボル１００を、ロボット３のアームによって、チューブ棚からサブラック５へマイクロチューブを移動するジョブを生成する。
【００３９】
次に、「Ｔｕｂｅ」と記載された初期シンボル１００と順序線１０２で接続された「Ａ」と記載された処理シンボル１０３が読み取られる。ここで、「Ａ」と記載された処理シンボル１０３は、マイクロチューブに対して、条件Ａ（「Ｃｏｎｄｉｔｉｏｎ  Ａ」）のもとで行われる任意の処理を表す。ここで、処理シンボル１０３には、処理を行う場所は明示されていない。しかし、異なる容器が配置された場所で容器に対する処理を行うと、異なる処理対象が意図しない容器に混入するコンタミネーションのおそれもある。そのため、容器に対する処理は原則としてメインラック７において行う。
【００４０】
処理シンボル１０３が読み込まれると、配置ジョブ生成部１３は、処理システム２００に対して、容器を退避場所から移送して作業場所に配置させるジョブを生成する。すなわち、配置ジョブ生成部１３は、ロボット３のアームによってマイクロチューブ６を把持し、マイクロチューブ６をサブラック５からメインラック７に移動させるジョブを生成する。配置ジョブ生成部１３は、処理シンボルが表す処理Ａの前に上記の配置動作が行われるようにジョブを挿入する。
【００４１】
また、処理シンボル１０３が読み込まれると、処理ジョブ生成部１４は、処理シンボル１０３に基づいて、処理システム２００に対して、作業場所において容器に対する処理を行わせるジョブを生成する。すなわち、処理ジョブ生成部１４は、処理シンボル１０３に基づいて、メインラック７においてマイクロチューブ６に対して、条件Ａのもとで処理Ａをするジョブを生成する。
【００４２】
さらに、処理シンボル１０３が読み込まれると、移送ジョブ生成部１５は、処理シンボルの表す処理が少なくとも同一の容器に対する処理でない場合に、処理システム２００に対して、処理シンボルの表す処理が行われた後に容器を作業場所から退避場所に移送させるジョブを生成する。すなわち、移送ジョブ生成部１５は、ロボット３のアームによってマイクロチューブ６を把持し、マイクロチューブ６をメインラック７からサブラック６に移動させるジョブを生成する。移送ジョブ生成部１５は、処理シンボルが表す処理Ａの後に上記の移送動作が行われるようにジョブを挿入する。
【００４３】
このように、本実施形態に係る動作指令生成装置１によれば、処理ごとに、サブラック５に置かれたマイクロチューブ６をメインラック７に配置し、メインラック７において処理を行い、少なくとも異なる容器に対する処理を行う場合には、処理後にマイクロチューブ６をサブラック５に移送するという動作指令を自動的に生成することができる。異なる容器に対する処理を行う場合に、マイクロチューブ６をサブラック５に移送することで、コンタミネーション等が防止される。また、ロボット３の動作を確認する者は、ロボット３が異なる容器に対する処理を行う場合に、容器をメインラック７からサブラック５に移送することで、コンタミネーションを防止する動作をロボット３が行っていることを明らかに確認することができる。さらに、何らかの要因によりメインラック７に容器が配置された状態でロボット３の動作を途中停止する場合があっても、いずれの容器に対する処理が行われていたのかを明らかに判別でき、復帰が容易となる。
【００４４】
最後に、「Ｔｕｂｅ」と記載された最終シンボル１０１が、動作指令生成部１２により、処理システム２００に対して、容器に対する最終処理を行わせるジョブに変換される。ここで、「ＰＵＴ」は機器への保管を意味しており、動作指令生成部１２は、ロボット３によりマイクロチューブをサブラック５から移動し、４℃の恒温槽に保管させるジョブを生成する。
【００４５】
図５は、プロトコルチャートの第１の例に基づいて生成されるジョブにおけるロボット３の動作を説明する図である。同図では、処理シンボル１０３に基づいて生成される３つのジョブについての、ロボット３の動作を３つの矢印によって示している。同図は、ロボット３側から見た場合（図５の紙面下側にロボット３が配置されている場合）における作業台の一部の様子を示している。サブラック５の１２箇所ある格納場所のうち、紙面左下の格納場所には、マイクロチューブ６が配置されている。
【００４６】
矢印Ｖ−１は、マイクロチューブ６を退避場所であるサブラック５から移動させ、作業場所であるメインラック７に配置するジョブにおけるロボット３の動作を示す。本例では、メインラック７及びサブラック５は、ともに、６箇所の格納場所を含む列が２列並び、合計１２箇所の格納場所をもつものとして示している。ここで、マイクロチューブ６は、メインラック７の１２箇所ある格納場所のうち、紙面左下の格納場所に配置される。すなわち、サブラック５におけるマイクロチューブ６の格納場所と、メインラック７におけるマイクロチューブ６の格納場所が対応するように、マイクロチューブ６を配置する。
【００４７】
矢印Ｖ−２は、作業場所であるメインラック７において、マイクロチューブ６に対して条件Ａのもと処理Ａを行うジョブにおけるロボット３の動作を示す。また、矢印Ｖ−３は、マイクロチューブ６を作業場所であるメインラック７から退避場所であるサブラック５に移送するジョブにおけるロボット３の動作を示す。ここで、マイクロチューブ６は、サブラック５の１２箇所ある格納場所のうち、紙面左下の格納場所に配置される。すなわち、マイクロチューブ６は、矢印Ｖ−１で表される容器の準備動作が行われる前に配置されていた元の位置に戻される。
【００４８】
本実施形態に係る動作指令生成装置１では、作業場所設定部３４により、第１の格納場所であるメインラック７を作業場所として設定し、退避場所設定部３３により、第２の格納場所であるサブラック５を退避場所として設定している。また、本実施形態に係る処理システム２００に含まれるメインラック７とサブラック５は、どちらも１２個のマイクロチューブを格納できる格納場所である。しかしながら、作業場所として設定される第１の格納場所と、退避場所として設定される第２の格納場所との容器格納可能数は異なっていてもよい。動作指令生成装置１の利用者は、退避場所設定部３３及び作業場所設定部３４により、退避場所及び作業場所をそれぞれ任意に設定することができ、プロトコルごとに作業場所及び退避場所の設定をそれぞれ変更することもできる。また、１つのチューブ棚の１つの列を作業場所として設定し、作業場所として設定された列とは異なる列を退避場所として設定することとしてもよい。
【００４９】
図６は、本発明の実施形態に係る動作指令生成装置１により取得されるプロトコルチャートの第２の例を示す図である。また、図７は、プロトコルチャートの第２の例に基づいて生成されるジョブにおけるロボット３の動作を説明する図である。
【００５０】
第２の例では、「Ｔｕｂｅ１」と記載された初期シンボル１００及び最終シンボル１０１並びに両者を接続する順序線１０２と、「Ｔｕｂｅ２」と記載された初期シンボル１００及び最終シンボル１０１並びに両者を接続する順序線１０２とが、第２の方向にオフセットした位置に配置される。第２の例が示すプロトコルは、「Ｔｕｂｅ１」（第１のマイクロチューブ）について条件Ａのもとで処理Ａを行い、「Ｔｕｂｅ２」（第２のマイクロチューブ）について条件Ｂのもとで処理Ｂを行い、それぞれのマイクロチューブを４℃の恒温槽に保管することを表す。ここで、第１のマイクロチューブについての処理Ａを表す処理シンボル１０３は、第２のマイクロチューブについての処理Ｂを表す処理シンボル１０３よりも初期シンボル１００側（紙面上側）に配置される。かかる配置関係は、処理が実行される順序を表す。すなわち、第２の例のプロトコルチャートは、第１のマイクロチューブについての処理Ａを行った後、第２のマイクロチューブについての処理Ｂを行うことを表す。本例に示すプロトコルチャートでは、異なる初期シンボル１００により示される容器は、互いに異なる処理対象を収容した異なる容器を示すものとして理解される。ここで、コンタミネーションを防止する観点、及び人が観察した場合に容器の追跡を容易とする観点からは、容器に対する処理が終わった後、異なる処理対象を収容した容器をメインラック７に配置する前に、処理が終わった容器をサブラック５に移送することが望ましい。
【００５１】
本実施形態に係る同一容器判断部１６は、複数の処理シンボル１０３が、同一の容器に対する処理を表すものであるか否かを判断する。本例の場合、複数の処理シンボル１０３（処理Ａを表す処理シンボル１０３と処理Ｂを表す処理シンボル１０３）は異なる容器（第１のマイクロチューブと第２のマイクロチューブ）に対するものである。そのため、同一容器判断部１６は、複数の処理シンボル１０３が、同一の容器に対するものでないと判断する。
【００５２】
配置ジョブ生成部１３は、同一容器判断部１６により、複数の処理シンボル１０３が、同一の容器に対するものでないと判断される場合に、処理システム２００に対して、容器を退避場所であるサブラック５から作業場所であるメインラック７に配置させるジョブを、容器ごとに生成する。具体的に、配置ジョブ生成部１３は、ロボット３に第１のマイクロチューブをメインラック７に配置させるジョブを生成し、第１のマイクロチューブに対する処理Ａが行われて第１のマイクロチューブがサブラック５に移送された後に第２のマイクロチューブをメインラック７に配置させるジョブを生成する。
【００５３】
処理ジョブ生成部１４は、同一容器判断部１６により、複数の処理シンボル１０３が、同一の容器に対するものでないと判断される場合に、処理シンボル１０３に基づいて、処理システム２００に対して、容器に対する処理を行わせるジョブを、容器ごとに生成する。具体的に、処理ジョブ生成部１４は、ロボット３に第１のマイクロチューブについてメインラック７において処理Ａをさせるジョブを生成し、第１のマイクロチューブがサブラック５に移送された後に第２のマイクロチューブについてメインラック７において処理Ｂをするジョブを生成する。
【００５４】
移送ジョブ生成部１５は、同一容器判断部１６により、複数の処理シンボル１０３が、同一の容器に対するものでないと判断される場合に、処理システム２００に対して、処理シンボルが表す処理が行われた後に容器を作業場所であるメインラック７から退避場所であるサブラック５に移送させるジョブを、容器ごとに生成する。具体的に、移送ジョブ生成部１５は、第１のマイクロチューブに対して処理Ａが行われた後に第１のマイクロチューブをサブラック５に移送するジョブを生成し、第２のマイクロチューブに対して処理Ｂが行われた後に第２のマイクロチューブをサブラック５に退避するジョブを生成する。
【００５５】
図７に示すように、当初、第１のマイクロチューブはサブラック５の左下の格納場所に配置され、第２のマイクロチューブはサブラック５の下側であって左から２番目の格納場所に配置されている。ロボット３は、配置ジョブ生成部１３により生成されたジョブにより動作し、第１のマイクロチューブをサブラック５の左下の格納場所からメインラック７の左下の格納場所に配置する（矢印ＶＩＩ−１）。そして、ロボット３は、処理ジョブ生成部１４により生成されたジョブにより動作し、第１のマイクロチューブに対して処理Ａを行う（矢印ＶＩＩ−２）。さらに、ロボット３は、移送ジョブ生成部１５により生成されたジョブにより動作し、第１のマイクロチューブをサブラック５の左下の格納場所に移送させる（矢印ＶＩＩ−３）。ここでメインラック７は、容器が格納されていない状態に戻る。その後、ロボット３は、配置ジョブ生成部１３により生成されたジョブにより動作し、第２のマイクロチューブをサブラック５の下側であって左から２番目の格納場所からメインラック７の下側であって左から２番目の格納場所に配置する（矢印ＶＩＩ−４）。そして、ロボット３は、処理ジョブ生成部１４により生成されたジョブにより動作し、第２のマイクロチューブに対して処理Ａを行う（矢印ＶＩＩ−５）。さらに、ロボット３は、移送ジョブ生成部１５により生成されたジョブにより動作し、第２のマイクロチューブをサブラック５の下側であって左から２番目の格納場所に移送させる（矢印ＶＩＩ−６）。
【００５６】
以上のように、本実施形態に係る動作指令生成装置１は、複数の処理シンボルが異なる容器に対する処理を表す場合、容器ごとに、容器の作業場所への配置、容器に対する処理、及び容器の退避場所への移送を行うジョブを生成する。本実施形態に係る動作指令生成装置１によれば、容器に対する処理が終わった後、異なる処理対象を収容した容器をメインラック７に配置する前に、処理が終わった容器をサブラック５に移送するジョブが生成される。従って、コンタミネーションが防止され、人が観察した場合に容器の追跡が容易であるジョブが自動的に生成される。
【００５７】
図８は、本実施形態に係る動作指令作成装置１により取得されるプロトコルチャートの第３の例を示す図である。また、図９は、プロトコルチャートの第３の例に基づいて生成されるジョブにおけるロボット３の動作を説明する図である。第３の例が示すプロトコルは、マイクロチューブについて、条件Ａのもとで処理Ａを行い、その後条件Ｂのもとで処理Ｂを行い、当該マイクロチューブを４℃の恒温槽に保管することを表す。本例のプロトコルは、同一の容器について連続した処理を行う場合を表す。本実施形態に係る動作指令作成装置１によれば、このように同一の容器について連続した処理が行われる場合には、異なる処理対象が混入することを防止しつつ、作業時間を短縮することが可能である。以下、このような場合について詳細に説明する。
【００５８】
本実施形態に係る同一容器判断部１６は、複数の処理シンボル１０３が、同一の容器に対する処理を表すものであるか否かを判断する。本例の場合、複数の処理シンボル１０３（処理Ａを表す処理シンボル１０３と処理Ｂを表す処理シンボル１０３）は同一の容器（単一のマイクロチューブ）に対するものである。そのため、同一容器判断部１６は、複数の処理シンボル１０３が、同一の容器に対するものであると判断する。
【００５９】
配置ジョブ生成部１３は、同一容器判断部１６により、複数の処理シンボル１０３が、同一の容器に対する処理を表すものであると判断される場合に、処理システム２００に対して、容器を退避場所であるサブラック５から作業場所であるメインラック７に配置させる少なくとも１つのジョブを生成する。具体的に、配置ジョブ生成部１３は、ロボット３により、マイクロチューブ６をメインラック７に配置する１つのジョブを生成する。
【００６０】
処理ジョブ生成部１４は、同一容器判断部１６により、複数の処理シンボル１０３が、同一の容器に対する処理を表すものであると判断される場合に、複数の処理シンボル１０３に基づいて、処理システム２００に対して、複数の処理シンボル１０３が表す処理を容器に連続して行わせるジョブを生成する。具体的に、処理ジョブ生成部１４は、ロボット３により、マイクロチューブ６についてメインラック７において処理Ａ及び処理Ｂを連続して行うジョブを生成する。
【００６１】
移送ジョブ生成部１５は、同一容器判断部１６により、複数の処理シンボル１０３が、同一の容器に対する処理を表すものであると判断される場合に、処理システム２００に対して、少なくとも、複数の処理シンボル１０３が表す処理のうち最後の処理が行われた後に容器を作業場所であるメインラック７から退避場所であるサブラック５に移送させるジョブを生成する。具体的に、移送ジョブ生成部１５は、ロボット３により、最後の処理である処理Ｂが行われた後に、マイクロチューブ６をサブラック５に移送するジョブを生成する。
【００６２】
図９に示すように、当初、マイクロチューブ６はサブラック５の左下の格納場所に配置されている。ロボット３は、配置ジョブ生成部１３により生成されたジョブにより動作し、マイクロチューブ６をサブラック５の左下の格納場所から移動させ、メインラック７の左下の格納場所に配置する（矢印ＩＸ−１）。そして、ロボット３は、処理ジョブ生成部１４により生成されたジョブにより動作し、マイクロチューブ６に対して処理Ａ及び処理Ｂを連続して行う（矢印ＩＸ−２、及び矢印ＩＸ−３）。さらに、ロボット３は、移送ジョブ生成部１５により生成されたジョブにより動作し、マイクロチューブ６をサブラック５の左下の格納場所に移送させる（矢印ＩＸ−４）。
【００６３】
以上のように、本実施形態に係る動作指令生成装置１は、複数の処理シンボルが同一の容器に対する処理を表す場合、処理ごとに容器を退避場所に戻すことなく、連続して処理を行うジョブを生成する。従って、同一の容器について処理が行われるにもかかわらず、処理ごとに容器を退避場所に戻すという無駄な動作が行われることを防止でき、効率的な動作を実現するジョブが自動的に生成される。
【００６４】
図１０は、本実施形態に係る動作指令作成装置１により取得されるプロトコルチャートの第４の例を示す図である。同図には、初期シンボル１００に重ねて容器数シンボル１０４が配置されている。容器数シンボル１０４は、初期シンボル１００に重ねて配置されることにより、初期シンボル１００と順序線１０２で結ばれた処理シンボル１０３に関連付けられている。容器数シンボル１０４は、「×３」の文字により、処理シンボル１０３が表す処理を同種類の容器について３回繰り返すことを表す。また、図１１は、プロトコルチャートの第４の例に基づいて生成されるジョブにおけるロボット３の動作を説明する図である。第４の例が示すプロトコルは、第１〜３のマイクロチューブについて、条件Ａのもとで処理Ａを行い、当該３つのマイクロチューブを４℃の恒温槽に保管することを表す。このとき、初期シンボル１００及び容器数シンボル１０４で示される３つの容器は、同一又は同種の処理対象が収容されているものと理解でき、また各々になされる処理も同一である。従って、これら３つの容器を同時に作業場所に配置して処理を行っても、異なる処理対象が混入するおそれは少ないと考えられる。
【００６５】
本実施形態に係る容器数抽出部１７は、処理シンボル１０３に関連付けられた容器数を抽出する。本例の場合、容器数は３である。また、本実施形態に係る配置設定部１８は、作業場所における容器の配置を、容器数抽出部１７により抽出された容器数分重複無く設定する。本例の場合、配置設定部１８は、作業場所であるメインラック７における３つのマイクロチューブの配置を、重複無く設定する。具体的に、配置設定部１８は、第１のマイクロチューブをメインラック７の左下の格納場所に配置し、第２のマイクロチューブをメインラック７の下側であって左から２番目の格納場所に配置し、第３のマイクロチューブをメインラック７の下側であって左から３番目の格納場所に配置するよう設定する。
【００６６】
配置ジョブ生成部１３は、配置設定部１８の設定に基づき、処理システム２００に対して、容器数抽出部１７により抽出された容器数分、容器を退避場所であるサブラック５から移動させ、作業場所であるメインラック７に配置させるジョブを生成する。具体的に、配置ジョブ生成部１３は、ロボット３により、第１〜３のマイクロチューブを、それぞれメインラック７の下側であって左から１〜３番目の格納場所に配置する３つのジョブを生成する。
【００６７】
処理ジョブ生成部１４は、処理シンボル１０３に基づいて、処理システム２００に対して、容器数抽出部１７により抽出された容器数分、容器に対する処理を繰り返させるジョブを生成する。具体的に、処理ジョブ生成部１４は、ロボット３により、第１〜３のマイクロチューブそれぞれについて、メインラック７において処理Ａを繰り返す３つのジョブを生成する。
【００６８】
移送ジョブ生成部１５は、処理システム２００に対して、容器数抽出部１７により抽出された容器数分、容器を作業場所であるメインラック７から退避場所であるサブラック５に移送させるジョブを生成する。具体的に、移送ジョブ生成部１５は、ロボット３により、第１〜３のマイクロチューブを、それぞれサブラック５の下側であって左から１〜３番目の格納場所に移送する３つのジョブを生成する。
【００６９】
図１１に示すように、当初、第１〜３のマイクロチューブは、それぞれサブラック５の下側であって左から１〜３番目の格納場所に配置されている。ロボット３は、配置ジョブ生成部１３により生成されたジョブにより動作し、第１〜３のマイクロチューブをそれぞれサブラック５の下側であって左から１〜３番目の格納場所から移動させ、メインラック７の下側であって左から１〜３番目の格納場所に配置する（矢印ＸＩ−１、矢印ＸＩ−２、及び矢印ＸＩ−３）。そして、ロボット３は、処理ジョブ生成部１４により生成されたジョブにより動作し、第１〜３のマイクロチューブに対して処理Ａを繰り返し行う（矢印ＸＩ−４、矢印ＸＩ−５、及び矢印ＸＩ−６）。さらに、ロボット３は、移送ジョブ生成部１５により生成されたジョブにより動作し、第１〜３のマイクロチューブをそれぞれサブラック５の下側であって左から１〜３番目の格納場所に移送する（矢印ＸＩ−７、矢印ＸＩ−８、及び矢印ＸＩ−９）。
【００７０】
以上のように、本実施形態に係る動作指令生成装置１は、処理シンボルが複数の容器に対する処理を表す場合、処理ごとに容器を退避場所に戻すことなく、連続して処理を行うジョブを生成する。従って、複数の同種類の容器について同じ処理が繰り返されるにもかかわらず、処理ごとに容器を退避場所に戻すという無駄な動作が行われず、効率的な動作を実現するジョブが自動的に生成される。
【００７１】
図１２は、本実施形態に係る動作指令作成装置１により取得されるプロトコルチャートの第５の例を示す図である。同図には、初期シンボル１００に重ねて容器数シンボル１０４が配置されている。容器数シンボル１０４は、初期シンボル１００に重ねて配置されることにより、初期シンボル１００と順序線１０２で結ばれた処理シンボル１０３に関連付けられている。容器数シンボル１０４は、「×８」の文字により、処理シンボル１０３が表す処理を同種類の容器について８回繰り返すことを表す。また、図１３Ａは、プロトコルチャートの第５の例に基づいて生成されるジョブにおけるロボットの動作のうち前半部分を説明する図である。図１３Ｂは、プロトコルチャートの第５の例に基づいて生成されるジョブにおけるロボットの動作のうち後半部分を説明する図である。第５の例が示すプロトコルは、第１〜８のマイクロチューブについて、条件Ａのもとで処理Ａを行い、当該８つのマイクロチューブを４℃の恒温槽に保管することを表す。ここで、ロボット３が、容器単体に対する処理を行っているのか、又は容器に収容された処理対象を別の容器に移送する移送処理を行っているのかを判別しやすくするためには、容器に対する処理は、メインラック７の第１の範囲である手前側の列（ロボット３側の列、すなわち紙面下側の列、以下第１列７ａと称する。）に容器を配置して行い、メインラック７の第２の範囲である奥側の列（ロボット３と反対側の列、すなわち紙面上側の列、以下第２列７ｂと称する。）は、移送処理を行う場合に用いることが望ましい。そのようにメインラック７の列を使い分けることにより、移送処理以外の処理と移送処理が明確に区別され、ロボット３がプロトコルを実行する様子を人が観察した場合に、移送処理以外の処理と移送処理を明確に区別することができる。
【００７２】
本実施形態に係る容器数抽出部１７は、処理シンボル１０３に関連付けられた容器数を抽出する。本例の場合、容器数は８である。また、本実施形態に係る配置可否判断部１９は、容器数抽出部１７により抽出された容器数分の容器すべてがメインラック７の第１列７ａに配置できるか否かを判断する。本例の場合、メインラック７の第１列７ａには６つの格納場所がある。そのため、配置可否判断部１９は、８つの容器すべてがメインラック７の第１列７ａに配置できないと判断する。
【００７３】
配置ジョブ分割部１３ａは、配置可否判断部１９により、容器すべてがメインラック７の第１列７ａに配置できないと判断される場合に、処理システム２００に対して、容器を配置させるジョブを、第１列７ａに配置できる数の容器を第１列７ａに配置させる２以上のジョブに分割する。具体的に、配置ジョブ分割部１３ａは、第１〜８のマイクロチューブをメインラック７に配置させるジョブを分割して、第１〜６のマイクロチューブを、それぞれメインラック７の第１列７ａの左から１〜６番目の格納場所に配置させる６つのジョブと、第７〜８のマイクロチューブを、それぞれメインラック７の第１列７ａの左から１〜２番目の格納場所に配置させる２つのジョブと、に分割する。
【００７４】
処理ジョブ分割部１４ａは、配置可否判断部１９により、容器すべてがメインラック７の第１列７ａに配置できないと判断される場合に、処理シンボル１０３に基づいて、処理システム２００に対して、処理シンボル１０３が表す処理を行わせるジョブを、第１列７ａに配置できる数の容器ごとに行われる２以上のジョブに分割する。具体的に、処理ジョブ分割部１４ａは、第１〜８のマイクロチューブに対して処理Ａを行わせるジョブを分割して、第１〜６のマイクロチューブそれぞれについて、メインラック７において処理Ａを繰り返させる６つのジョブと、第７〜８のマイクロチューブそれぞれについて、メインラック７において処理Ａを繰り返させる２つのジョブと、に分割する。
【００７５】
移送ジョブ分割部１５ａは、配置可否判断部１９により、容器すべてがメインラック７の第１列７ａに配置できないと判断される場合に、処理システム２００に対して容器を退避させるジョブを、処理ジョブ分割部１４ａによる分割に基づいて、２以上のジョブに分割する。具体的に、移送ジョブ分割部１５ａは、第１〜８のマイクロチューブをサブラック５に移送させるジョブを処理ジョブ分割部１４ａと同様に分割して、第１〜６のマイクロチューブを、それぞれサブラック５の下側であって左から１〜６番目の格納場所に移送させる６つのジョブと、第７〜８のマイクロチューブを、それぞれサブラック５の上側であって左から１〜２番目の格納場所に移送させる２つのジョブと、に分割する。
【００７６】
なお、配置ジョブ分割部１３ａ、処理ジョブ分割部１４ａ、移送ジョブ分割部１５ａは、必ずしもメインラック７の第１列７ａの格納場所すべてを用いるようにジョブを分割しなくてもよい。すなわち、本例の場合に他の一例を挙げるならば、第１〜８のマイクロチューブについての配置、処理、及び移送のジョブを、第１〜４のマイクロチューブについての配置、処理、及び移送のジョブと、第５〜８のマイクロチューブについての配置、処理、及び移送のジョブとに分割してもよい。もっとも、配置ジョブ分割部１３ａ、処理ジョブ分割部１４ａ、移送ジョブ分割部１５ａは、それぞれジョブを同じ数に分割しなければならない。
【００７７】
図１３Ａに示すように、当初、第１〜６のマイクロチューブは、それぞれサブラック５の下側であって左から１〜６番目の格納場所に配置されている。また、第７〜８のマイクロチューブは、それぞれサブラック５の上側であって左から１〜２番目の格納場所に配置されている。ロボット３は、配置ジョブ分割部１３ａにより分割されたジョブにより動作し、第１〜６のマイクロチューブをそれぞれサブラック５の下側であって左から１〜６番目の格納場所から移動させ、メインラック７の第１列７ａであって左から１〜６番目の格納場所に配置する（矢印ＸＩＩＩ−１、矢印ＸＩＩＩ−２、矢印ＸＩＩＩ−３、矢印ＸＩＩＩ−４、矢印ＸＩＩＩ−５、及び矢印ＸＩＩＩ−６）。そして、ロボット３は、処理ジョブ分割部１４ａにより分割されたジョブにより動作し、第１〜６のマイクロチューブに対して処理Ａを繰り返し行う（矢印ＸＩＩＩ−７、矢印ＸＩＩＩ−８、矢印ＸＩＩＩ−９、矢印ＸＩＩＩ−１０、矢印ＸＩＩＩ−１１、及び矢印ＸＩＩＩ−１２）。さらに、ロボット３は、移送ジョブ分割部１５ａにより分割されたジョブにより動作し、第１〜６のマイクロチューブをそれぞれサブラック５の下側であって左から１〜６番目の格納場所に移送する（矢印ＸＩＩＩ−１３、矢印ＸＩＩＩ−１４、矢印ＸＩＩＩ−１５、矢印ＸＩＩＩ−１６、矢印ＸＩＩＩ−１７、及び矢印ＸＩＩＩ−１８）。
【００７８】
さらに、図１３Ｂに示すように、ロボット３は、配置ジョブ分割部１３ａにより分割されたジョブにより動作し、第７〜８のマイクロチューブをそれぞれサブラック５の上側であって左から１〜２番目の格納場所から移動させ、メインラック７の第１列７ａであって左から１〜２番目の格納場所に配置する（矢印ＸＩＩＩ−１９、及び矢印ＸＩＩＩ−２０）。そして、ロボット３は、処理ジョブ分割部１４ａにより分割されたジョブにより動作し、第７〜８のマイクロチューブに対して処理Ａを繰り返し行う（矢印ＸＩＩＩ−２１、及び矢印ＸＩＩＩ−２２）。さらに、ロボット３は、移送ジョブ分割部１５ａにより分割されたジョブにより動作し、第７〜８のマイクロチューブをそれぞれサブラック５の上側であって左から１〜２番目の格納場所に移送する（矢印ＸＩＩＩ−２３、及び矢印ＸＩＩＩ−２４）。
【００７９】
以上のように、本実施形態に係る動作指令生成装置１は、メインラック７の第１列７ａに容器が収まりきらない場合に、容器が第１列７ａに収まるように、容器のメインラック７の第１列７ａへの配置、容器に対する処理、容器のサブラック５への移送のジョブをそれぞれ分割する。これにより、メインラック７の第１列７ａに容器を配置して容器に対する処理を行うことで後述する移送処理との区別を明確化しつつ、複数の容器について同じ処理を繰り返し行う場合に効率的なジョブが生成される。
【００８０】
本実施形態に係る動作指令生成装置１は、図１２に示すプロトコルチャートの第５の例に基づいて、図１３Ａ，Ｂに示すものと異なるジョブを生成することもできる。本実施形態に係る容器数抽出部１７は、処理シンボル１０３に関連付けられた容器数を抽出する。本例の場合、既に述べたように容器数は８である。また、本実施形態に係る配置可否判断部１９は、容器数抽出部１７により抽出された容器数分の容器すべてがメインラック７の第１列７ａに配置できるか否かを判断する。本例の場合、メインラック７の第１列７ａには６つの格納場所がある。そのため、配置可否判断部１９は、８つの容器すべてがメインラック７の第１列７ａに配置できないと判断する。
【００８１】
配置ジョブ生成部１３は、配置可否判断部１９により、容器すべてがメインラック７の第１列７ａに配置できないと判断される場合に、処理システム２００に対して、少なくとも、第１列７ａに配置しきれない容器を、退避場所であるサブラック５からメインラック７の第２列７ｂに配置させるジョブを生成する。具体的に、配置ジョブ生成部１３は、ロボット３により、第１〜６のマイクロチューブを、それぞれメインラック７の第１列７ａの左から１〜６番目の格納場所に配置する６つのジョブと、第７〜８のマイクロチューブを、それぞれメインラック７の第２列７ｂの左から１〜２番目の格納場所に配置する２つのジョブと、を生成する。
【００８２】
処理ジョブ生成部１４は、処理シンボル１０３に基づいて、処理システム２００に対して、メインラック７の第１列７ａ及び第２列７ｂにおいて容器に対する処理を行わせるジョブを生成する。具体的に、処理ジョブ生成部１４は、ロボット３により、第１〜８のマイクロチューブそれぞれについて、メインラック７において処理Ａを繰り返す８つのジョブを生成する。
【００８３】
移送ジョブ生成部１５は、処理システム２００に対して、処理シンボル１０３の表す処理が行われた後に容器をメインラック７の第１列７ａ及び第２列７ｂから退避場所であるサブラック５に移送させるジョブを生成する。具体的に、移送ジョブ生成部１５は、ロボット３により、第１〜６のマイクロチューブを、それぞれサブラック５の下側であって左から１〜６番目の格納場所に移送する６つのジョブと、第７〜８のマイクロチューブを、それぞれサブラック５の上側であって左から１〜２番目の格納場所に移送する２つのジョブと、を生成する。
【００８４】
以上のように、本実施形態に係る動作指令生成装置１は、メインラック７の第１列７ａに容器が収まりきらない場合に、メインラック７の第２列７ｂの格納場所を使用するジョブを生成することもできる。本実施形態に係る動作指令生成装置１の利用者は、メインラック７の第２列７ｂの格納場所を使用するジョブを生成することを選択することで、作業時間の短縮化等の作業効率向上を図ることができる。
【００８５】
図１４は、本発明の実施形態に係る動作指令生成装置１により取得されるプロトコルチャートの第６の例を示す図である。また、図１５は、プロトコルチャートの第６の例に基づいて生成されるジョブにおけるロボット３の動作を説明する図である。第６の例のプロトコルチャートには、「Ｔｕｂｅ１」の初期シンボル１００に接続された順序線１０２から、「Ｔｕｂｅ２」の初期シンボル１００に接続された順序線１０２に向かって、移送シンボル１０５が配置されている。移送シンボル１０５は、容器に収容された処理対象を指定された量だけ移送する処理を表す。第６の例が示すプロトコルは、「Ｔｕｂｅ１」（第１のマイクロチューブ）に収容された処理対象１００μｌを、「Ｔｕｂｅ２」（第２のマイクロチューブ）に移送し、それぞれのマイクロチューブを４℃の恒温槽に保管することを表す。
【００８６】
移送処理を行う場合には、移送元容器をメインラック７の移送元範囲（本例では第１列７ａ）に配置し、移送先容器をメインラック７の移送先範囲（本例では第２列７ｂ）であって移送元容器と対応する位置に配置して処理対象の移送を行う。移送元容器と移送先容器とが一対一に対応するように配置することで、ロボット３の動作を確認する者が、移送元と移送先の容器を取り違えるミスを抑止することができる。本例では、説明を簡明にするため１つの容器から１つの容器に処理対象を移送する場合を示すが、移送元容器の数と移送先容器の数は２以上であってもよい。また、移送元容器の数と移送先容器の数は一致しなくてもよい。移送元容器の数と移送先容器の数が一致しない場合、移送元容器と移送先容器とは、多対１、１対多、又は多対多に対応するように配置される。そのような場合であっても、移送元容器をメインラック７の第１列７ａに配置し、移送先容器をメインラック７の第２列７ｂに配置する。なお、本例では、メインラック７の第１の範囲と移送元範囲とを同じ範囲とし、メインラック７の第２の範囲と移送先範囲とを同じ範囲としている。しかし、メインラック７の第１の範囲と移送元範囲、及びメインラック７の第２の範囲と移送先範囲は一致していなくともよい。もっとも、両者は一致するように設定されるのが通常であるから、一致するように設定することで、人がロボット３の動作を観察した時にプロトコルが理解しやすくなると考えられる。
【００８７】
容器準備ジョブ生成部２０は、処理システム２００に対し、処理対象を収容した第１の容器を移送元範囲であるメインラック７の第１列７ａに配置させ、第２の容器を移送先範囲であるメインラック７の第２列７ｂに配置させるジョブを生成する。具体的に、容器準備ジョブ生成部２０は、ロボット３により、第１のマイクロチューブをメインラック７の第１列７ａのうち最も左側の格納場所に配置するジョブを生成し、第２のマイクロチューブをメインラック７の第２列７ｂのうち最も左側の格納場所に配置するジョブを生成する。
【００８８】
移送ジョブ生成部２１は、プロトコルチャートに含まれる移送シンボル１０５に基づいて、処理システム２００に対し、第１の容器である第１のマイクロチューブから第２の容器である第２のマイクロチューブに処理対象を移送させるジョブを生成する。具体的に、移送ジョブ生成部２１は、ロボット３により、第１のマイクロチューブに収容された処理対象をピペット４により１００μｌ吸い上げ、第２のマイクロチューブに移送するジョブを生成する。
【００８９】
容器移送ジョブ生成部２２は、処理システム２００に対して、移送処理の後に行われるジョブであって、第１の容器である第１のマイクロチューブをメインラック７の第１列７ａから退避場所であるサブラック５の左下の格納場所に移送させるジョブを生成し、第２の容器である第２のマイクロチューブをメインラック７の第２列７ｂから退避場所であるサブラック５の下側であって左から２番目の格納場所に移送させるジョブを生成する。具体的に、容器移送ジョブ生成部２２は、ロボット３により、第１のマイクロチューブをサブラック５の左下の格納場所に移送するジョブを生成し、第２のマイクロチューブをサブラック５の下側であって左から２番目の格納場所に移送するジョブを生成する。
【００９０】
図１５に示すように、当初、第１のマイクロチューブはサブラック５の左下の格納場所に配置され、第２のマイクロチューブはサブラック５の下側であって左から２番目の格納場所に配置されている。ロボット３は、容器準備ジョブ生成部２０により生成されたジョブにより動作し、第１のマイクロチューブをサブラック５の左下の格納場所から移動させ、メインラック７の第１列７ａの最も左側の格納場所に配置し（矢印ＸＶ−１）、第２のマイクロチューブをサブラック５の下側であって左から２番目の格納場所から移動させ、メインラック７の第２列７ｂの最も左側の格納場所に配置する（矢印ＸＶ−２）。そして、ロボット３は、移送ジョブ生成部２１により生成されたジョブにより動作し、第１のマイクロチューブから第２のマイクロチューブに処理対象を移送する処理を行う（矢印ＸＶ−３）。さらに、ロボット３は、容器移送ジョブ生成部２２により生成されたジョブにより動作し、第１のマイクロチューブをサブラック５の左下の格納場所に移送し（矢印ＸＶ−４）、第２のマイクロチューブをサブラック５の下側であって左から２番目の格納場所に移送する（矢印ＸＶ−５）。
【００９１】
以上のように、本実施形態に係る動作指令生成装置１によれば、メインラック７の第１列７ａに配置された容器から第２列７ｂに配置された容器へ処理対象を移送するというジョブが自動的に生成される。従って、人がロボット３により実行される移送処理を観察する時、移送元容器と移送先容器とが対応していることを容易に確認でき、プロトコルの理解が容易となり、また容器を取り違えることが防止される。
【００９２】
図１６は、本実施形態に係る動作指令作成装置１により取得されるプロトコルチャートの第７の例を示す図である。また、図１７は、プロトコルチャートの第７の例に基づいて生成されるジョブにおけるロボット３の動作を説明する図である。第７の例が示すプロトコルは、マイクロチューブについて、処理シンボル１０３において「ＶＯＲＴＥＸ」と表された撹拌機８により、「ＭＩＸ」と表された撹拌処理を行い、当該マイクロチューブを４℃の恒温槽に保管することを表す。ここで、撹拌機８のような周辺機器を用いる処理を行う場合、処理対象を収容した容器をメインラック７から周辺機器に移動させて処理を行う準備を行い、容器に対して周辺機器を用いた処理を行い、処理後に容器を周辺機器からメインラック７に退避させるという一連の動作を行うことにより、コンタミネーション等が防止される。また、１つの容器について周辺機器を用いた処理を行うことにより、ロボット３の動作を人が観察する場合にプロトコルが理解しやすくなる。
【００９３】
機器配置ジョブ生成部１４ｂは、処理システム２００に対して、処理シンボル１０３が表す処理の前に行われるジョブであって、容器を作業場所であるメインラック７から周辺機器である撹拌機８に配置させるジョブを生成する。具体的に、機器配置ジョブ生成部１４ｂは、ロボット３により、マイクロチューブ６をメインラック７から撹拌機８に配置して、撹拌機８を始動させて、撹拌機８による処理を行う準備をするジョブを生成する。
【００９４】
機器処理ジョブ生成部１４ｃは、処理シンボル１０３に基づいて、処理システム２００に対して、容器に対して周辺機器である撹拌機８を用いた処理をさせるジョブを生成する。具体的に、機器処理ジョブ生成部１４ｃは、ロボット３により、マイクロチューブ６に対して撹拌機８を用いた撹拌処理を行うジョブを生成する。なお、プロトコルチャートにおいて撹拌処理を行う時間が指定される場合、当該指定時間に従った撹拌処理を行うジョブを生成する。
【００９５】
機器移送ジョブ生成部１４ｄは、処理シンボルが表す処理が、少なくとも同一の容器に対する処理でない場合に、処理システム２００に対して、処理シンボル１０３の表す処理が行われた後に容器を周辺機器から作業場所であるメインラック７に移送させるジョブを生成する。具体的に、機器移送ジョブ生成部１４ｄは、ロボット３により、マイクロチューブ６を撹拌機８からメインラック７の格納場所のうち、マイクロチューブ６が当初格納されていた格納場所に移送するジョブを生成する。
【００９６】
図１７に示すように、はじめに、マイクロチューブ６はメインラック７の左下の格納場所に配置されている。ロボット３は、機器配置ジョブ生成部１４ｂにより生成されたジョブにより動作し、マイクロチューブ６をメインラック７の左下の格納場所から撹拌機８に配置する（矢印ＸＶＩＩ−１）。そして、ロボット３は、機器処理ジョブ生成部１４ｃにより生成されたジョブにより動作し、マイクロチューブ６に対して撹拌機８を用いた撹拌処理を行う（矢印ＸＶＩＩ−２）。さらに、ロボット３は、機器移送ジョブ生成部１４ｄにより生成されたジョブにより動作し、マイクロチューブ６を撹拌機８からメインラック７の左下の格納場所に移送する（矢印ＸＶＩＩ−３）。
【００９７】
以上のように、本実施形態に係る動作指令生成装置１は、処理シンボルが周辺機器を用いた処理を表す場合、作業場所から周辺機器に容器を配置して、周辺機器を用いた処理を行い、少なくとも異なる容器に対する処理が後に行われる場合に、容器を作業場所に移送するジョブを生成する。これにより、周辺機器に異なる容器が配置されないこととなり、コンタミネーションが防止される。また、人によるロボット３の動作の追跡が容易となり、ロボット３がコンタミネーションを防止するように動作していることが容易に確認できる。
【００９８】
図１８は、本実施形態に係る動作指令作成装置１により取得されるプロトコルチャートの第８の例を示す図である。また、図１９は、プロトコルチャートの第８の例に基づいて生成されるジョブにおけるロボット３の動作を説明する図である。第８の例が示すプロトコルは、マイクロチューブについて、１つ目の処理シンボル１０３において「ＶＯＲＴＥＸ」と表された撹拌機８により、「ＭＩＸ」と表された撹拌処理を行い、続いて２つ目の処理シンボル１０３において「ＣＥＮＴＲＩＦＵＧＥ」と表された遠心分離処理を遠心分離器９により１０分間（「１０ ［ｍｉｎ］」）行い、当該マイクロチューブを４℃の恒温槽に保管することを表す。ここで、第１及び第２の周辺機器を用いた処理を行う場合、容器を第１の周辺機器から第２の周辺機器へ直接移送することで作業時間が短縮化されると考えられる。
【００９９】
機器配置ジョブ生成部１４ｂは、処理システム２００に対して、１つ目の処理シンボル１０３が表す処理の前に行わせるジョブであって、容器を作業場所であるメインラック７から移動させ、第１の周辺機器である撹拌機８に配置させるジョブを生成する。具体的に、機器準備ジョブ生成部１４ｂは、ロボット３により、マイクロチューブ６をメインラック７から撹拌機８に配置し、撹拌機８を始動させて、撹拌機８による処理を行う準備をするジョブを生成する。
【０１００】
機器処理ジョブ生成部１４ｃは、処理シンボル１０３に基づいて、処理システム２００に対して、容器に対して第１の周辺機器である撹拌機８を用いた処理をさせるジョブを生成する。具体的に、機器処理ジョブ生成部１４ｃは、ロボット３により、マイクロチューブ６に対して撹拌機８を用いた撹拌処理を行うジョブを生成する。また、機器処理ジョブ生成部１４ｃは、処理シンボル１０３に基づいて、処理システム２００に対して、容器に対して第２の周辺機器である遠心分離器９を用いた処理をさせるジョブを生成する。具体的に、機器処理ジョブ生成部１４ｃは、ロボット３により、マイクロチューブ６に対して遠心分離器９を用いた遠心分離処理を行うジョブを生成する。
【０１０１】
機器間移送ジョブ生成部１４ｅは、処理システム２００に対して、複数の処理シンボル１０３が表す第１の周辺機器である撹拌機８及び第２の周辺機器である遠心分離器９を用いた処理の間に行わせるジョブであって、容器を第１の周辺機器である撹拌機８から第２の周辺機器である遠心分離器９に移送させるジョブを生成する。具体的に、機器間移送ジョブ生成部１４ｅは、ロボット３により、撹拌機８を用いた処理と遠心分離器９を用いた処理との間に、容器を撹拌機８から遠心分離器９に移送するジョブを生成する。
【０１０２】
機器移送ジョブ生成部１４ｄは、処理システム２００に対して、２つ目の処理シンボル１０３が表す処理の後に行わせるジョブであって、容器を第２の周辺機器である遠心分離器９から作業場所であるメインラック７に移送させるジョブを生成する。具体的に、機器退避ジョブ生成部１４ｄは、ロボット３により、マイクロチューブ６を遠心分離器９からメインラック７の格納場所のうち、マイクロチューブ６が当初格納されていた格納場所に移送するジョブを生成する。
【０１０３】
図１９に示すように、はじめに、マイクロチューブ６はメインラック７の左下の格納場所に配置されている。ロボット３は、機器配置ジョブ生成部１４ｂにより生成されたジョブにより動作し、マイクロチューブ６をメインラック７の左下の格納場所から移動させ、撹拌機８に配置する（矢印ＸＩＸ−１）。そして、ロボット３は、機器処理ジョブ生成部１４ｃにより生成されたジョブにより動作し、マイクロチューブ６に対して撹拌機８を用いた撹拌処理を行う（矢印ＸＩＸ−２）。その後、ロボット３は、機器間移送ジョブ生成部１４ｅにより生成されたジョブにより動作し、マイクロチューブ６を撹拌機８から遠心分離器９に移送する（矢印ＸＩＸ−３ｃ）。そして、ロボット３は、機器処理ジョブ生成部１４ｃにより生成されたジョブにより動作し、マイクロチューブ６に対して遠心分離器９を用いた遠心分離処理を行う（矢印ＸＩＸ−４）。さらに、ロボット３は、機器移送ジョブ生成部１４ｄにより生成されたジョブにより動作し、マイクロチューブ６を遠心分離器９からメインラック７の左下の格納場所に移送する（矢印ＸＩＸ−５）。
【０１０４】
破線で示された矢印ＸＩＸ−３ａ、及び矢印ＸＩＸ−３ｂは、機器を用いた処理ごとに容器をメインラック７に移送する場合のロボット３の動作を示している。その場合、ロボット３は、撹拌機８による撹拌処理（矢印ＸＩＸ−２）を終えた後、マイクロチューブ６を撹拌機８からメインラック７の左下の格納場所に移送し（矢印ＸＩＸ−３ａ）、マイクロチューブ６をメインラック７から遠心分離器９に配置する（矢印ＸＩＸ−３ｂ）。撹拌機８から遠心分離器９へ容器を直接移送する場合と、容器を一旦メインラック７に退避させる場合とで、行われる処理の内容に変化はない。しかし、容器を直接移送する場合の方が作業時間は短くなる。動作指令生成装置１の利用者は、作業時間を優先するか、周辺機器を用いた処理ごとに容器をメインラック７に戻すという原則通りの動作を行わせるか、いずれかを選択できることとしてもよい。
【０１０５】
以上のように、本実施形態に係る動作指令生成装置１は、複数の処理シンボルが第１及び第２の周辺機器を用いた処理を表す場合、第１の周辺機器を用いた処理の後、容器を第１の周辺機器から第２の周辺機器へ移送するジョブを生成することができる。これにより、周辺機器を用いた処理ごとに容器をメインラック７に退避させる場合よりも、作業時間が短縮したジョブを生成することができる。
【０１０６】
図２０は、本実施形態に係る動作指令生成部１２の動作を示す第１のフローチャートである。
【０１０７】
動作指令生成部１２は、まず、ステップＳＴ１０にてプロトコルチャート取得部１１により取得されたプロトコルチャートを読み込む。その後、ステップＳＴ１１にて、読み込んだプロトコルチャートに処理シンボル又は移送シンボルのいずれが記載されているかを判断する。プロトコルチャートは容器に対する処理を記述するものであるから、プロトコルチャートには処理シンボル又は移送シンボルのいずれか一方が記載されており、いずれも記載されていないプロトコルチャートは何らのプロトコルをも表さないものである。従って、プロトコルチャートに処理シンボル又は移送シンボルのいずれも記載されていない場合には、エラー表示をしてもよい。なお、プロトコルチャートに処理シンボル及び移送シンボルの両方が記載されている場合、順序線に従って順に読み込むこととする。また、処理シンボル、及び移送シンボルは複数記載されていてもよい。
【０１０８】
プロトコルチャートに処理シンボルが記載されている場合、ステップＳＴ１２にて、当該処理シンボルは周辺機器を用いた処理を表すか否かが判断される。仮に、処理シンボルが周辺機器を用いた処理を表す場合、ＳＴ１３にて、当該処理シンボルに容器数シンボルが関連付けられているか否かが判断される。
【０１０９】
処理シンボルに容器数シンボルが関連付けられていない場合（処理シンボルが単一の容器に対する処理を表す場合）、ステップＳＴ１４にて、同一容器判断部１６により、処理シンボルは同一の容器に対する処理を表すか否かが判断される。ここで、処理シンボルが１つしか無い場合には、処理シンボルは同一の容器に対する処理であると直ちに判断できる。一方、処理シンボルが複数ある場合には、同一容器判断部１６による判断が必要となる。
【０１１０】
同一容器判断部１６により、１又は複数の処理シンボルが、同一の容器に対するものであると判断される場合、ステップＳＴ１５にて、配置ジョブ生成部１３により、容器をメインラック７に配置するジョブが少なくとも１つ生成される。また、ステップＳＴ１６にて、処理ジョブ生成部１４により、容器に対する処理をするジョブが生成される。ここで、処理シンボルが複数ある場合には、容器に対して連続して処理を行うジョブが生成される。さらに、ステップＳＴ１７にて、移送ジョブ生成部１５により、少なくとも異なる容器に対する処理を行う前に、容器をサブラック５に移送するジョブが生成される。
【０１１１】
ステップＳＴ１４にて、同一容器判断部１６により、複数の処理シンボルが同一の容器に対するものでないと判断される場合、ステップＳＴ１８にて、配置ジョブ生成部１３により、容器をメインラック７に配置するジョブが容器ごとに生成される。また、ステップＳＴ１９にて、処理ジョブ生成部１４により、容器に対する処理をするジョブが容器ごとに生成される。ここで、同一の容器について複数の処理シンボルが記載されている場合には、当該容器に対して連続して処理を行うジョブが生成されてもよい。さらに、ステップＳＴ２０にて、移送ジョブ生成部１５により、容器をサブラック５に移送するジョブが容器ごとに生成される。
【０１１２】
図２１は、本実施形態に係る動作指令生成部１２の動作を示す第２のフローチャートである。第２のフローチャートは、図２０に示したステップＳＴ１１にて、プロトコルチャートに移送シンボルが記載されていると判断される場合に行われる処理を示すものである。
【０１１３】
動作指令生成部１２は、まず、ステップＳＴ３０にて、移送配置ジョブ生成部２０により、第１の容器をメインラック７の第１列７ａに配置し、第２の容器をメインラック７の第２列７ｂに配置するジョブが生成される。また、ステップＳＴ３１にて、移送ジョブ生成部２１により、第１の容器から第２の容器に処理対象を移送するジョブが生成される。さらに、ステップＳＴ３２にて、容器移送ジョブ生成部２２により、第１及び第２の容器をサブラック５に移送するジョブが生成される。
【０１１４】
図２２は、本実施形態に係る動作指令生成部１２の動作を示す第３のフローチャートである。第３のフローチャートは、図２０に示したステップＳＴ１２にて、処理シンボルが周辺機器を用いた処理を表すと判断される場合に行われる処理を示すものである。
【０１１５】
動作指令生成部１２は、まず、ステップＳＴ４０にて、処理シンボルが表す処理が、複数の周辺機器を用いるものであるか否かを判断する。仮に、処理シンボルが表す処理が、複数の周辺機器を用いるものであった場合、ステップＳＴ４１にて、作業時間の短縮化を優先するか否かが判断される。仮に、作業時間の短縮化を優先しない場合（周辺機器を用いた処理ごとに容器をメインラック７に戻すという原則通りの動作を行わせる場合）、ステップＳＴ４２にて、機器配置ジョブ生成部１４ｂにより、容器をメインラック７から周辺機器に配置するジョブが生成される。また、ステップＳＴ４３にて、機器処理ジョブ生成部１４ｃにより、容器に対して周辺機器を用いた処理を行うジョブが生成される。さらに、ステップＳＴ４４にて、機器移送ジョブ生成部１４ｄにより、容器を周辺機器からメインラック７に移送するジョブが生成される。そして、ステップＳＴ４５にて、複数機器を用いる処理を表す処理シンボルが全てジョブ化されたか否かが判断される。ジョブ化されていない処理シンボルが残っている場合、ステップＳＴ４２〜４４の処理を繰り返す。ジョブ化されていない処理シンボルが無い場合、動作指令生成部１２による処理は終了する。なお、プロトコルチャートに記載された処理シンボル等を順序線に沿って順次ジョブ化していく場合、図２０に示すフローに戻ることとしてよい。
【０１１６】
ステップＳＴ４０にて、処理シンボルが表す処理が、複数の周辺機器を用いるものでないと判断された場合、ステップＳＴ４２〜４４の処理が行われ、動作指令生成部１２による処理は終了する。なお、プロトコルチャートに記載された処理シンボル等を順序線に沿って順次ジョブ化していく場合、図２０に示すフローに戻ることとしてよい。
【０１１７】
ステップＳＴ４０にて、処理シンボルが表す処理が、複数の周辺機器を用いるものであると判断され、かつ、ステップＳＴ４１にて、作業時間の短縮化を優先すると判断される場合、ステップＳＴ４６にて、機器配置ジョブ生成部１４ｂにより、容器をメインラック７から周辺機器に配置するジョブが生成される。また、ステップＳＴ４７にて、機器処理ジョブ生成部１４ｃにより、容器に対して周辺機器を用いた処理を行うジョブが生成される。さらに、ステップＳＴ４８にて、複数機器を用いる処理を表す処理シンボルが全てジョブ化されたか否かが判断される。ジョブ化されていない処理シンボルが残っている場合、ステップＳＴ４９にて、機器間移送ジョブ生成部１４ｅにより、容器を直前の処理が行われた周辺機器から次の処理を行う周辺機器へ移送するジョブが生成される。そして、ステップＳＴ４７及びステップＳＴ４８の処理を繰り返す。ステップＳＴ４８にて、ジョブ化されていない処理シンボルが無いと判断される場合、ステップＳＴ４８にて、機器移送ジョブ生成部１４ｄにより、容器を周辺機器からメインラック７に移送するジョブが生成される。その後、動作指令生成部１２による処理は終了する。なお、プロトコルチャートに記載された処理シンボル等を順序線に沿って順次ジョブ化していく場合、図２０に示すフローに戻ることとしてよい。
【０１１８】
図２３は、本実施形態に係る動作指令生成部１２の動作を示す第４のフローチャートである。第４のフローチャートは、図２０に示したステップＳＴ１３にて、処理シンボルに容器数シンボルが関連付けられている場合に行われる処理を示すものである。
【０１１９】
動作指令生成部１２は、まず、ステップＳＴ６０にて、配置可否判断部１９により、容器数抽出部により抽出された容器数分の容器すべてがメインラック７の第１列７ａに配置できるか否かが判断される。すべての容器が第１列７ａに配置できると判断される場合、ステップＳＴ６１にて、配置設定部１８により、第１列７ａにおける容器の配置が重複無く設定される。そして、ステップＳＴ６２にて、配置ジョブ生成部１３により、配置設定部１８の設定に基づき、すべての容器をメインラック７の第１列７ａに配置するジョブが生成される。続いて、ステップＳＴ６３にて、処理ジョブ生成部１４により、すべての容器に対して、処理シンボルが表す処理を繰り返すジョブが生成される。さらに、ステップＳＴ６４にて、移送ジョブ生成部１５により、すべての容器をサブラック５に移送するジョブが生成される。その後、動作指令生成装置１による処理は終了する。なお、プロトコルチャートに記載された処理シンボル等を順序線に沿って順次ジョブ化していく場合、図２０に示すフローに戻ることとしてよい。
【０１２０】
ステップＳＴ６０にて、配置可否判断部１９により、容器数抽出部により抽出された容器数分の容器すべてがメインラック７の第１列７ａに配置できないと判断される場合、ステップＳＴ６５にて、メインラック７の第２列７ｂに容器を格納するか否かが判断される。メインラック７の第２列７ｂに容器を格納しない場合、ステップＳＴ６６にて、配置設定部１８により、第１列７ａにおける容器の配置が重複無く設定され、第１列７ａに一度に配置できない容器についても、第１列７ａにおける配置が重複無く設定される。そして、ステップＳＴ６７にて、配置ジョブ生成部１３及び配置ジョブ分割部１３ａにより、配置設定部１８の設定に基づき、メインラック７の第１列７ａに格納できる数の容器を、メインラック７の第１列７ａに配置するジョブが２以上生成される。続いて、ステップＳＴ６８にて、処理ジョブ生成部１４及び処理ジョブ分割部１４ａにより、メインラック７の第１列７ａに格納できる数の容器に対して、処理シンボルが表す処理を繰り返すジョブが２以上生成される。さらに、ステップＳＴ６９にて、移送ジョブ生成部１５及び移送ジョブ分割部１５ａにより、メインラック７の第１列７ａに格納できる数の容器をサブラック５に移送するジョブが２以上生成される。その後、動作指令生成装置１による処理は終了する。なお、プロトコルチャートに記載された処理シンボル等を順序線に沿って順次ジョブ化していく場合、図２０に示すフローに戻ることとしてよい。
【０１２１】
ステップＳＴ６５にて、メインラック７の第２列７ｂに容器を格納すると判断される場合、ステップＳＴ７０にて、配置設定部１８により、第１列７ａにおける容器の配置、及び第２列７ｂにおける容器の配置が重複無く設定される。そして、ステップＳＴ７１にて、配置ジョブ生成部１３により、配置設定部１８の設定に基づき、すべての容器をメインラック７の第１列７ａ及び第２列７ｂに配置するジョブが生成される。続いて、ステップＳＴ６３にて、処理ジョブ生成部１４により、すべての容器に対して、処理シンボルが表す処理を繰り返すジョブが生成される。さらに、ステップＳＴ６４にて、移送ジョブ生成部１５により、すべての容器をサブラック５に退避するジョブが生成される。その後、動作指令生成装置１による処理は終了する。なお、プロトコルチャートに記載された処理シンボル等を順序線に沿って順次ジョブ化していく場合、図２０に示すフローに戻ることとしてよい。また、仮にすべての容器がメインラック７の第１列７ａ及び第２列７ｂを使用しても格納できないと判断される場合、配置ジョブ分割部１３ａ、処理ジョブ分割部１４ａ及び移送ジョブ分割部１５ａは、それぞれ容器の配置ジョブ、容器対して処理をするジョブ、及び容器の移送ジョブを２以上に分割してもよい。
【０１２２】
以上説明した実施形態の構成は具体例として示したものであり、本明細書にて開示される発明をこれら具体例の構成そのものに限定することは意図されていない。当業者はこれら開示された実施形態に種々の変形、例えば、機能や操作方法の変更や追加等を加えてもよく、また、第１〜４のフローチャートに示した制御は、同等の機能を奏する他の制御に置き換えてもよい。本明細書にて開示される発明の技術的範囲は、そのようになされた変形をも含むものと理解すべきである。
【符号の説明】
【０１２３】
１  動作指令生成装置、１ａ  ＣＰＵ、１ｂ  ＲＡＭ、１ｃ  外部記憶装置、１ｄ  ＧＣ、１ｅ  入力デバイス、１ｆ  Ｉ／Ｏ、１ｇ  データバス、１ｈ  モニタ、２  ロボット制御装置、３  ロボット、４  ピペット、５  サブラック、６  マイクロチューブ、７  メインラック、７ａ  第１列、７ｂ  第２列、８  撹拌機、９  遠心分離器、１０  入力部、１１  プロトコルチャート取得部、１２  動作指令生成部、１３  配置ジョブ生成部、１３ａ  配置ジョブ分割部、１４  処理ジョブ生成部、１４ａ  処理ジョブ分割部、１４ｂ  機器配置ジョブ生成部、１４ｃ  機器処理ジョブ生成部、１４ｄ  機器移送ジョブ生成部、１４ｅ  機器間移送ジョブ生成部、１５  移送ジョブ生成部、１５ａ  移送ジョブ分割部、１６  同一容器判断部、１７  容器数抽出部、１８  配置設定部、１９  配置可否判断部、２０  容器配置ジョブ生成部、２１  移送ジョブ生成部、２２  容器移送ジョブ生成部、３０  動作指令記憶部、３１  動作指令表示部、３２  動作指令出力部、３３  退避場所設定部、３４  作業場所設定部、３５  場所設定記憶部、１００  初期シンボル、１０１  最終シンボル、１０２  順序線、１０３  処理シンボル、１０４  容器数シンボル、１０５  移送シンボル、２００  処理システム。
【図１】
0006419547.tif 000002
【図２】
0006419547.tif 000003
【図３】
0006419547.tif 000004
【図４】
0006419547.tif 000005
【図５】
0006419547.tif 000006
【図６】
0006419547.tif 000007
【図７】
0006419547.tif 000008
【図８】
0006419547.tif 000009
【図９】
0006419547.tif 000010
【図１０】
0006419547.tif 000011
【図１１】
0006419547.tif 000012
【図１２】
0006419547.tif 000013
【図１３Ａ】
0006419547.tif 000014
【図１３Ｂ】
0006419547.tif 000015
【図１４】
0006419547.tif 000016
【図１５】
0006419547.tif 000017
【図１６】
0006419547.tif 000018
【図１７】
0006419547.tif 000019
【図１８】
0006419547.tif 000020
【図１９】
0006419547.tif 000021
【図２０】
0006419547.tif 000022
【図２１】
0006419547.tif 000023
【図２２】
0006419547.tif 000024
【図２３】
0006419547.tif 000025