(57)【要約】【課題】ユーザが待機時間を把握することのできる動作指令によりロボットを制御するロボットシステム、ロボットシステムの制御方法、動作指令生成装置及びプログラムを提供する。【解決手段】ロボットシステムは、ハンドを有するロボットと、１の処理を示す処理シンボルに基づいて、前記ロボットに前記１の処理を行わせる命令である単位ジョブを記憶する単位ジョブ記憶部と、前記ハンドを、第１の単位ジョブの終了位置から、前記第１の単位ジョブの後に連続して行なわれる第２の単位ジョブの開始位置へ移動させる命令である、つなぎジョブを生成するつなぎジョブ生成部と、複数の前記処理シンボルの配置に基づいて、前記単位ジョブ及び前記つなぎジョブを直列に接続して前記ロボットの動作指令を生成する動作指令生成部と、前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出する所要時間算出部と、を備える。【選択図】図１
2018069366.tif 000002
【特許請求の範囲】
【請求項１】
１又は複数のハンドを有するロボットと、
１の処理を示す処理シンボルに基づいて、前記ロボットに前記１の処理を行わせる命令である単位ジョブを記憶する単位ジョブ記憶部と、
前記１又は複数のハンドを、第１の単位ジョブの終了位置から、前記第１の単位ジョブの後に連続して行なわれる第２の単位ジョブの開始位置へ移動させる命令である、つなぎジョブを生成するつなぎジョブ生成部と、
複数の前記処理シンボルの配置に基づいて、前記単位ジョブ及び前記つなぎジョブを直列に接続して前記ロボットの動作指令を生成する動作指令生成部と、
前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出する所要時間算出部と、
前記動作指令生成部により生成された動作指令に基づいて、前記ロボットを制御するロボット制御部と、
を備えるロボットシステム。
【請求項２】
前記単位ジョブ記憶部は、前記単位ジョブを構成する複数の要素ジョブを記憶し、
前記動作指令生成部は、前記処理シンボルに示された処理条件に応じて、前記処理シンボルに対応する前記複数の要素ジョブ及び前記つなぎジョブを直列に接続して前記動作指令を生成し、
前記所要時間算出部は、前記複数の要素ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出する、
請求項１に記載のロボットシステム。
【請求項３】
前記処理シンボルに示された処理条件は、処理時間の指定を含み、
前記所要時間算出部は、前記処理時間、前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出する、
請求項１又は２に記載のロボットシステム。
【請求項４】
前記ロボット制御部は、前記動作指令に直列的に含まれる前記単位ジョブ及び前記つなぎジョブのうち、少なくとも直近で実行完了している前記単位ジョブ又は前記つなぎジョブを特定するジョブ完了情報を生成し、
前記所要時間算出部は、前記ジョブ完了情報に基づいて、未完了の前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の残りの所要時間を算出する、
請求項１〜３のいずれか１項に記載のロボットシステム。
【請求項５】
前記ロボットにより前記単位ジョブを実行するシミュレーションに基づき、前記単位ジョブを実行した場合の所要時間を算出する単位ジョブ所要時間算出部と、
前記単位ジョブの所要時間を記憶する単位ジョブ所要時間記憶部と、
をさらに備える請求項１〜４のいずれか１項に記載のロボットシステム。
【請求項６】
前記ロボットにより前記単位ジョブが実行された場合における所要時間の実績を記録する単位ジョブ実績記録部と、
前記単位ジョブが実行された場合における所要時間の実績に基づいて、前記単位ジョブ所要時間記憶部に記憶された前記単位ジョブの所要時間を更新する単位ジョブ所要時間更新部と、
をさらに備える請求項５に記載のロボットシステム。
【請求項７】
前記つなぎジョブ生成部は、前記つなぎジョブの生成に伴って、前記つなぎジョブの所要時間を算出し、
前記つなぎジョブの所要時間を記憶するつなぎジョブ所要時間記憶部をさらに備える、
請求項１〜６のいずれか１項に記載のロボットシステム。
【請求項８】
前記ロボットにより前記つなぎジョブが実行された場合における所要時間の実績を記録するつなぎジョブ実績記録部と、
前記つなぎジョブが実行された場合における所要時間の実績に基づいて、前記つなぎジョブ所要時間記憶部に記憶された前記つなぎジョブの所要時間を更新するつなぎジョブ所要時間更新部と、
をさらに備える請求項７に記載のロボットシステム。
【請求項９】
１の処理を示す処理シンボルに基づいて、１又は複数のハンドを有するロボットに前記１の処理を行わせる命令である第１の単位ジョブの終了位置から、前記第１の単位ジョブの後に連続して行なわれる第２の単位ジョブの開始位置へ、前記１又は複数のハンドを移動させる命令である、つなぎジョブを生成し、
複数の前記処理シンボルの配置に基づいて、前記単位ジョブ及び前記つなぎジョブを直列に接続して前記ロボットの動作指令を生成し、
前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出し、
前記動作指令生成部により生成された動作指令に基づいて、前記ロボットを制御する、
ロボットシステムの制御方法。
【請求項１０】
１の処理を示す処理シンボルに基づいて、１又は複数のハンドを有するロボットに前記１の処理を行わせる命令である単位ジョブを記憶する単位ジョブ記憶部と、
前記１又は複数のハンドを、第１の単位ジョブの終了位置から、前記第１の単位ジョブの後に連続して行なわれる第２の単位ジョブの開始位置へ移動させる命令である、つなぎジョブを生成するつなぎジョブ生成部と、
複数の前記処理シンボルの配置に基づいて、前記単位ジョブ及び前記つなぎジョブを直列に接続して前記ロボットの動作指令を生成する動作指令生成部と、
前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出する所要時間算出部と、
を備える動作指令生成装置。
【請求項１１】
コンピュータを、請求項１０に記載の動作指令生成装置として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットシステム、ロボットシステムの制御方法、動作指令生成装置及びプログラムに関する。
【背景技術】
【０００２】
ロボットに作業を行わせる場合、単位動作を組み合わせることで一連の動作を構成する場合がある。ロボットを制御する指令である動作指令は、単位動作に対応する単位ジョブの組み合わせで構成される場合がある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
従来、ロボットに行わせる作業の所要時間は、数秒〜数十秒の比較的短い時間である場合が多かった。そのため、ユーザは、ロボットの動作が完了するまでの待ち時間を意識すること無く、ロボットを動作させることができた。しかしながら、ロボットに行わせる作業の所要時間が長くなると、ロボットの動作が完了するまでユーザがどの程度待たなければならないのか予測が困難となり、ユーザの行動計画に支障をきたすおそれがある。
【０００４】
そこで、本発明は、ユーザが待機時間を把握することのできる動作指令によりロボットを制御するロボットシステム、ロボットシステムの制御方法、動作指令生成装置及びプログラムを提供することをその課題とする。
【課題を解決するための手段】
【０００５】
本発明の一の側面によるロボットシステムは、１又は複数のハンドを有するロボットと、１の処理を示す処理シンボルに基づいて、前記ロボットに前記１の処理を行わせる命令である単位ジョブを記憶する単位ジョブ記憶部と、前記１又は複数のハンドを、第１の単位ジョブの終了位置から、前記第１の単位ジョブの後に連続して行なわれる第２の単位ジョブの開始位置へ移動させる命令である、つなぎジョブを生成するつなぎジョブ生成部と、複数の前記処理シンボルの配置に基づいて、前記単位ジョブ及び前記つなぎジョブを直列に接続して前記ロボットの動作指令を生成する動作指令生成部と、前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出する所要時間算出部と、前記動作指令生成部により生成された動作指令に基づいて、前記ロボットを制御するロボット制御部と、を備える。
【０００６】
また、本発明の別の側面によるロボットシステムにおいて、前記単位ジョブ記憶部は、前記単位ジョブを構成する複数の要素ジョブを記憶し、前記動作指令生成部は、前記処理シンボルに示された処理条件に応じて、前記処理シンボルに対応する前記複数の要素ジョブ及び前記つなぎジョブを直列に接続して前記動作指令を生成し、前記所要時間算出部は、前記複数の要素ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出する。
【０００７】
また、本発明の別の側面によるロボットシステムにおいて、前記処理シンボルに示された処理条件は、処理時間の指定を含み、前記所要時間算出部は、前記処理時間、前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出する。
【０００８】
また、本発明の別の側面によるロボットシステムにおいて、前記ロボット制御部は、前記動作指令に直列的に含まれる前記単位ジョブ及び前記つなぎジョブのうち、少なくとも直近で実行完了している前記単位ジョブ又は前記つなぎジョブを特定するジョブ完了情報を生成し、前記所要時間算出部は、前記ジョブ完了情報に基づいて、未完了の前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の残りの所要時間を算出する。
【０００９】
また、本発明の別の側面によるロボットシステムは、前記ロボットにより前記単位ジョブを実行するシミュレーションに基づき、前記単位ジョブを実行した場合の所要時間を算出する単位ジョブ所要時間算出部と、前記単位ジョブの所要時間を記憶する単位ジョブ所要時間記憶部と、をさらに備える。
【００１０】
また、本発明の別の側面によるロボットシステムは、前記ロボットにより前記単位ジョブが実行された場合における所要時間の実績を記録する単位ジョブ実績記録部と、前記単位ジョブが実行された場合における所要時間の実績に基づいて、前記単位ジョブ所要時間記憶部に記憶された前記単位ジョブの所要時間を更新する単位ジョブ所要時間更新部と、をさらに備える。
【００１１】
また、本発明の別の側面によるロボットシステムにおいて、前記つなぎジョブ生成部は、前記つなぎジョブの生成に伴って、前記つなぎジョブの所要時間を算出し、前記つなぎジョブの所要時間を記憶するつなぎジョブ所要時間記憶部をさらに備える。
【００１２】
また、本発明の別の側面によるロボットシステムは、前記ロボットにより前記つなぎジョブが実行された場合における所要時間の実績を記録するつなぎジョブ実績記録部と、前記つなぎジョブが実行された場合における所要時間の実績に基づいて、前記つなぎジョブ所要時間記憶部に記憶された前記つなぎジョブの所要時間を更新するつなぎジョブ所要時間更新部と、をさらに備える。
【００１３】
また、本発明の別の側面によるロボットシステムの制御方法は、１の処理を示す処理シンボルに基づいて、１又は複数のハンドを有するロボットに前記１の処理を行わせる命令である第１の単位ジョブの終了位置から、前記第１の単位ジョブの後に連続して行なわれる第２の単位ジョブの開始位置へ、前記１又は複数のハンドを移動させる命令である、つなぎジョブを生成し、複数の前記処理シンボルの配置に基づいて、前記単位ジョブ及び前記つなぎジョブを直列に接続して前記ロボットの動作指令を生成し、前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出し、前記動作指令生成部により生成された動作指令に基づいて、前記ロボットを制御する。
【００１４】
また、本発明の別の側面による動作指令生成装置は、１の処理を示す処理シンボルに基づいて、１又は複数のハンドを有するロボットに前記１の処理を行わせる命令である単位ジョブを記憶する単位ジョブ記憶部と、前記１又は複数のハンドを、第１の単位ジョブの終了位置から、前記第１の単位ジョブの後に連続して行なわれる第２の単位ジョブの開始位置へ移動させる命令である、つなぎジョブを生成するつなぎジョブ生成部と、複数の前記処理シンボルの配置に基づいて、前記単位ジョブ及び前記つなぎジョブを直列に接続して前記ロボットの動作指令を生成する動作指令生成部と、前記単位ジョブの所要時間及び前記つなぎジョブの所要時間を加算して、前記動作指令の所要時間を算出する所要時間算出部と、を備える。
【００１５】
また、本発明の別の側面によるコンピュータプログラムは、コンピュータを、上述の動作指令生成装置として機能させる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係るロボットシステムの物理的な構成を示す概略図である。
【図２】本発明の実施形態に係る動作指令生成部の物理的な構成を示す構成ブロック図である。
【図３】本発明の実施形態に係る動作指令生成部及びロボット制御部の機能ブロック図である。
【図４】本発明の実施形態に係るロボットシステムに取得されるプロトコルチャートの一例を示す図である。
【図５】本発明の実施形態に係るロボットシステムにより実行される動作指令の一例を示す第１のフローチャートである。
【図６】本発明の実施形態に係るロボットシステムにより実行される動作指令の一例を示す第２のフローチャートである。
【図７】本発明の実施形態に係るロボットシステムにより実行される単位ジョブ所要時間算出の一例を示すフローチャートである。
【図８】本発明の実施形態に係るロボットシステムにより実行されるつなぎジョブ所要時間算出の一例を示すフローチャートである。
【図９】本発明の実施形態に係るロボットシステムにより実行される所要時間更新の一例を示すフローチャートである。
【発明を実施するための形態】
【００１７】
図１は、本発明の実施形態に係るロボットシステム２００の物理的な構成を示す概略図である。ロボットシステム２００は、ロボット３の動作指令を生成する動作指令生成装置１を含む。また、ロボットシステム２００は、動作指令生成装置１により生成された動作指令に基づいて、ロボット３を制御するロボット制御部２を含む。動作指令生成装置１自体は、専用の機器であってもよいが、ここでは一般的なコンピュータを使用して実現されている。すなわち、市販のコンピュータにおいて、当該コンピュータを動作指令生成装置１として動作させるコンピュータプログラムを実行することによりかかるコンピュータを動作指令生成装置１として使用する。かかるコンピュータプログラムは、一般にアプリケーションソフトウェアの形で提供され、コンピュータにインストールされて使用される。当該アプリケーションソフトウェアは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭその他のコンピュータ読み取り可能な適宜の情報記録媒体に記録されて提供されてよく、また、インターネット等の各種の情報通信ネットワークを通じて提供されてもよい。あるいは、情報通信ネットワークを通じて遠隔地にあるサーバによりその機能が提供される、いわゆるクラウドコンピューティングにより実現されてもよい。
【００１８】
ロボットシステム２００は、１又は複数のハンドを有するロボット３を含む。ロボット３は、多関節ロボットであり、本実施形態では第１アーム（ロボット３の右腕に相当するアーム）及び第２アーム（ロボット３の左腕に相当するアーム）を有する双腕ロボットであり、それぞれのアームにハンドを備え、それぞれのアーム単独で又は両アームを協働させ、処理対象に対する処理を行う。第１アーム及び第２アームは、具体的には、７軸以上の関節を有し、複数の異なる姿勢で処理対象に対する処理を行うことのできるアームである。また、本実施形態においては、処理対象は、生化学、生物及び生命工学の分野における一連の検査や培養、増幅といった処理を行う対象であり、例えば培養した細胞や薬剤を指している。もっとも、処理対象はそれ以外のものであってもよく、ロボット３による溶接やボルトの締め付け等の対象となる加工・組立分解部品や、搬送やパレタイジング等の搬送対象となる荷物であってもよい。
【００１９】
各アームの操作対象は特に限定されないが、本実施形態に係るロボット３では、主として第１アームの先端に備えられたハンドによりピペットラック１０に収容されたピペット４を把持し操作する等、図示しあるいは図示しない実験器具を操作する。また、ロボット３は、第２アームの先端に備えられたハンドによりメインラック５に格納されたマイクロチューブ６を把持し、マイクロチューブ６をメインラック５からボルテックスミキサー１１や遠心機１２等へ移動させるなど、図示しあるいは図示しない各種容器を移動させる。
【００２０】
図１に示す例では、ロボットシステム２００は、ピペット４、メインラック５、マイクロチューブ６、チップラック７、チップ８、インキュベータ９、ピペットラック１０、ボルテックスミキサー１１、遠心機１２、ダストボックス１３を含む。これらは実験を行う場合に用いられる器具の一例であり、これらの器具に加えて又は替えて、他の器具が含まれてもよい。例えば、ロボットシステム２００には、ペトリ皿を保管するラックや、マグネットラック等が含まれてもよい。また、本実施形態に係るロボット３は双腕ロボットであるが、ロボットシステム２００に含まれる１又は複数のハンドは、例えば、複数のアームに別個独立に備えられて、ロボット制御部２により協調して動作するように制御されるものであってもよい。
【００２１】
図２は、本発明の実施形態に係る動作指令生成装置１の物理的な構成を示すブロック図である。図２に示した構成は、動作指令生成装置１として用いられる一般的なコンピュータを示しており、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１ａ、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１ｂ、外部記憶装置１ｃ、ＧＣ（Ｇｒａｐｈｉｃｓ  Ｃｏｎｔｒｏｌｌｅｒ）１ｄ、入力デバイス１ｅ及びＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）１ｆがデータバス１ｇにより相互に電気信号のやり取りができるよう接続されている。ここで、外部記憶装置１ｃはＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の静的に情報を記録できる装置である。またＧＣ１ｄからの信号はフラットパネルディスプレイ等の、使用者が視覚的に画像を認識するモニタ１ｈに出力され、画像として表示される。入力デバイス１ｅはキーボードやマウス、タッチパネル等の、ユーザが情報を入力するための機器であり、Ｉ／Ｏ１ｆは動作指令生成装置１が外部の機器と情報をやり取りするためのインタフェースである。
【００２２】
図３は、本発明の実施形態に係る動作指令生成装置１及びロボット制御部２の機能ブロック図である。なお、ここで示した機能ブロックは、動作指令生成装置１等が有する機能に着目して示したものであり、必ずしも各機能ブロックに１対１に対応する物理的構成が存在するとは限らない。いくつかの機能ブロックは動作指令生成装置１のＣＰＵ１ａ等の情報処理装置が特定のソフトウェアを実行することにより実現され、またいくつかの機能ブロックは動作指令生成装置１のＲＡＭ１ｂ等の情報記憶装置に特定の記憶領域が割り当てられることにより実現されてよい。
【００２３】
動作指令生成装置１は、ユーザからの各種の入力を受け付ける入力部２０を有する。また、動作指令生成装置１は、実験のプロトコルを記述したプロトコルチャートを取得するプロトコルチャート取得部２１と、入力部２０により受けつけられた入力に基づいてロボット３の動作を制御する指令である動作指令を生成する動作指令生成部２２と、を有する。さらに、動作指令生成装置１は、生成中及び生成された動作指令の電子データを記憶する動作指令記憶部３０と、生成された動作指令をロボット３が読み取り可能な形式の電子ファイルとして出力する動作指令出力部３１と、動作指令記憶部３０に記憶された動作指令の電子データを成形しモニタ１ｈに表示する動作指令表示部３２と、を有する。
【００２４】
入力部２０は、通常は図２に示した入力デバイス１ｅにより構成されるが、動作指令生成装置１がクラウドコンピューティングに用いられるアプリケーションサーバである場合には、遠隔地にある端末上でのユーザの操作情報が入力されるＩ／Ｏ１ｆが該当することになる。プロトコルチャート取得部２１は、ユーザにより入力されたプロトコルチャートや、外部記憶装置１ｃに記憶されたプロトコルチャートを読み込む。
【００２５】
本明細書において、プロトコルチャートとは、プロトコルを視覚的に理解し得る態様で図示したものをいい、プロトコルとは生化学、生物及び生命工学等の分野において処理対象に対しなされる処理の作業手順及び条件を指すものである。プロトコルチャートは、処理対象又は処理対象を収容した容器に対する処理を表す処理シンボル１０３を少なくとも含む。また、処理対象とは、同分野において実験の対象となる材料をさす。一般には、細胞やＤＮＡ等の生体組織の一部であることが多い。また、処理対象は一般に実験に特に適した器具、例えば、マイクロチューブ６、ペトリ皿やマイクロプレート（マイクロタイタープレート）に収容されて実験に供されるが、本明細書で単に容器と言えば、実験における処理対象の収容に適したこれらの器具を指すものとする。なお、本実施形態では、生化学、生物及び生命工学等の分野を対象とした動作指令を生成する場合を例示するが、動作指令生成装置１は、それ以外の分野、例えば荷物の搬送や製品の組み立て等の処理をロボット３に行わせる動作指令を生成してもよい。
【００２６】
動作指令生成部２２には、単位ジョブ取得部２４と、要素ジョブ組合せ部２５と、つなぎジョブ生成部２６と、が含まれる。動作指令生成部２２は、複数の処理シンボル１０３の配置に基づいて、単位ジョブ及びつなぎジョブを直列に接続してロボット３の動作指令を生成する。単位ジョブ取得部２４は、１の処理を示す処理シンボル１０３に応じて、単位ジョブ記憶部１ｃａに記憶された単位ジョブを取得する。要素ジョブ組合せ部２５は、単位ジョブ記憶部１ｃａに記憶された複数の要素ジョブを組み合わせて単位ジョブを構成する。つなぎジョブ生成部２６は、１又は複数のハンドを、第１の単位ジョブの終了位置から、第１の単位ジョブの後に連続して行なわれる第２の単位ジョブの開始位置へ移動させる命令である、つなぎジョブを生成する。動作指令生成部２２は、処理シンボルに示された処理条件に応じて、処理シンボルに対応する複数の要素ジョブ及びつなぎジョブを直列に接続して動作指令を生成する。
【００２７】
なお、本明細書において、動作指令とは、単位ジョブ及びつなぎジョブが組み合わされたジョブの集合体であって、処理対象又は処理対象が収容される容器に対する一単位のものとして認識される処理を指示する指令をいうものとする。また、１の処理とは、当業者に一単位のものとして扱われる処理であり、本実施形態においては例えば、ピペット４を用いた薬液の注入、容器の移送等である。単位ジョブとは、１の処理をロボット３に行わせる命令である。異なる実施態様として例えば本発明を加工・組立分解部品の用途に適用した場合であれば、１の処理とは、その分野の当業者に一単位のものとして扱われうる処理であり、例えば、所望のボルトによる締め付け動作やギアなどの嵌合部品の嵌合操作が１の処理となりうる。
【００２８】
外部記憶装置１ｃは、単位ジョブ記憶部１ｃａと、単位ジョブ所要時間記憶部１ｃｂと、つなぎジョブ所要時間記憶部１ｃｃと、を含む。単位ジョブ記憶部１ｃａは、１の処理を示す処理シンボル１０３に基づいて、ロボット３に１の処理を行わせる命令である単位ジョブを記憶する。また、単位ジョブ記憶部１ｃａは、単位ジョブを構成する複数の要素ジョブを記憶する。単位ジョブ所要時間記憶部１ｃｂは、単位ジョブの所要時間を記憶する。また、単位ジョブ所要時間記憶部１ｃｂは、単位ジョブの所要時間を、単位ジョブを構成する要素ジョブ毎に記憶する。つなぎジョブ所要時間記憶部１ｃｃは、つなぎジョブの所要時間を記憶する。
【００２９】
動作指令生成装置１は、シミュレーション部３５、単位ジョブ所要時間算出部３６、所要時間算出部４０、単位ジョブ実績記録部４１、つなぎジョブ実績記録部４２、単位ジョブ所要時間更新部４３及びつなぎジョブ所要時間更新部４４を含む。シミュレーション部３５は、ロボット３により単位ジョブを実行するシミュレーションを行う。本実施形態に係るロボットシステム２００では、動作指令生成装置１がシミュレーション部３５を有し、動作指令生成装置１の有するＣＰＵ１ａやＲＡＭ１ｂ等のハードウェア資源を用いて、ロボットシステム２００を仮想的に再現したモデルを動作させることにより行なわれる。しかしながら、シミュレーション部３５は、必ずしも動作指令生成装置１に含まれなくてもよく、動作指令生成装置１と別体のコンピュータに含まれるものであってもよい。単位ジョブ所要時間算出部３６は、ロボット３により単位ジョブを実行するシミュレーションに基づき、単位ジョブを実行した場合の所要時間を算出する。
【００３０】
所要時間算出部４０は、単位ジョブの所要時間及びつなぎジョブの所要時間を加算して、動作指令の所要時間を算出する。動作指令は、単位ジョブ及びつなぎジョブを直列に接続して生成されているため、その所要時間は、単位ジョブの所要時間及びつなぎジョブの所要時間を単純に加算すれば算出することができる。本実施形態に係るロボットシステム２００によれば、単位ジョブとつなぎジョブを直列に接続して動作指令を生成することで、単純な加算により動作指令全体の所要時間が算出される。ユーザは、動作指令の所要時間を知ることで、待機時間を把握することができ、適切な行動計画を立てることができる。
【００３１】
単位ジョブ実績記録部４１は、ロボット３により単位ジョブが実行された場合における所要時間の実績を記録する。また、つなぎジョブ実績記録部４２は、ロボット３によりつなぎジョブが実行された場合における所要時間の実績を記録する。単位ジョブ所要時間更新部４３は、単位ジョブが実行された場合における所要時間の実績に基づいて、単位ジョブ所要時間記憶部１ｃｂに記憶された単位ジョブの所要時間を更新する。つなぎジョブ所要時間更新部４４は、つなぎジョブが実行された場合における所要時間の実績に基づいて、つなぎジョブ所要時間記憶部１ｃｃに記憶されたつなぎジョブの所要時間を更新する。
【００３２】
ロボット制御部２は、動作指令に直列的に含まれる単位ジョブ及びつなぎジョブのうち、少なくとも直近で実行完了している単位ジョブ又はつなぎジョブを特定するジョブ完了情報を生成するジョブ完了情報生成部２ａを含む。単位ジョブ実績記録部４１及びつなぎジョブ実績記録部４２は、ジョブ完了情報が生成される時刻に基づいて、単位ジョブ又はつなぎジョブの所要時間の実績を記録してよい。
【００３３】
図４は、本発明の実施形態に係るロボットシステム２００に取得されるプロトコルチャートの一例を示す図である。本例のプロトコルチャートは、処理対象を収容する容器の初期状態を示す初期シンボル１００と、その容器の最終状態を示す最終シンボル１０１を図４の上下方向に並べ、両者を初期シンボル１００から最終シンボル１０１に向かう順序線１０２で接続し、順序線１０２に沿って容器に対し行う個別の処理を示す処理シンボル１０３を配置したものである。図４に示す例では、「Ｔｕｂｅ」と記載された初期シンボル１００、最終シンボル１０１及び両者を接続する順序線１０２からなる組が記載されている。ここで、順序線１０２は、処理が行われる順序を矢線で表している。すなわち、本例のプロトコルチャートは、はじめに「Ｔｕｂｅ」と記載された初期シンボル１００が表すジョブを行い、その後順序線１０２に対して追加線１０４で接続された「ＡＤＤ」と記載された処理シンボル１０３が表すジョブを行い、次に「ＣＥＮＴＲＩＦＵＧＥ」と記載された処理シンボル１０３が表すジョブを行い、最後に「Ｔｕｂｅ」と記載された最終シンボル１０１が表すジョブを行うことを意味する。また、本例のプロトコルチャートは、「×２」と表示された容器数シンボル１０５を含む。容器数シンボル１０５は、初期シンボル１００で指定される容器を２つ用意し、以降の処理を２つの容器それぞれについて行うことを表す。
【００３４】
初期シンボル１００は、「Ｔｕｂｅ」すなわちマイクロチューブ６を、「Ｔｕｂｅ  Ｒａｃｋ」すなわちチューブラック（マイクロチューブ６の収納場所）から作業場所であるメインラック５に移送する処理を表す。「ＡＤＤ」と記載された処理シンボル１０３は、マイクロチューブ６に対して、「ｓｏｌｕｔｉｏｎ  Ａ」すなわち液剤Ａを「１００［μｌ］」加える処理を表す。「ＣＥＮＴＲＩＦＵＧＥ」と記載された処理シンボル１０３は、マイクロチューブ６を遠心機１２にセットして、「３［ｍｉｎ］」（３分間）の遠心処理を行うことを表す。また、最終シンボル１０１は、マイクロチューブ６を、メインラック５からチューブラックに移送する処理を表す。
【００３５】
図５は、本発明の実施形態に係るロボットシステム２００により実行される動作指令の一例を示す第１のフローチャートである。また、図６は、本発明の実施形態に係るロボットシステム２００により実行される動作指令の一例を示す第２のフローチャートである。第１のフローチャート及び第２のフローチャートは、図４に示すプロトコルチャートに基づいて動作指令生成装置１により生成され、ロボットシステム２００により実行される動作指令の一例を示している。また、図６に示す第２のフローチャートは、図５に示す第１のフローチャートに続いて実行される処理を示している。図５及び図６では、図中左側に各要素ジョブ及びつなぎジョブの所要時間を示している。
【００３６】
はじめに、初期シンボル１００及び容器数シンボル１０５に基づいて、２本のマイクロチューブ６をチューブラックからメインラック５に移送する単位ジョブが実行される。単位ジョブは、第１マイクロチューブ６ａを移送する要素ジョブと、第２マイクロチューブ６ｂを移送する要素ジョブと、から構成される。具体的には、第１マイクロチューブ６ａをロボット３のハンドで把持してチューブラックからメインラック５に移送し（Ｓ１０１）、第２マイクロチューブ６ｂを同様にチューブラックからメインラック５に移送するジョブが行なわれる（Ｓ１０２）。
【００３７】
単位ジョブ所要時間記憶部１ｃｂには、２本のマイクロチューブ６をチューブラックからメインラック５に移送する単位ジョブの所要時間ｔ１が記憶されている。また、単位ジョブ所要時間記憶部１ｃｂには、第１マイクロチューブ６ａをチューブラックからメインラック５に移送する要素ジョブの所要時間ｔ１ａと、第２マイクロチューブ６ｂをチューブラックからメインラック５に移送する要素ジョブの所要時間ｔ１ｂと、が記憶されている。
【００３８】
次に、初期シンボル１００により表される単位ジョブの終了位置から、「ＡＤＤ」と記載された処理シンボル１０３の開始位置へロボット３のハンドを移動させるつなぎジョブが実行される。具体的には、ロボット３のハンドを、メインラック５からピペットラック１０へ移動させるジョブが実行される（Ｓ２０１）。つなぎジョブ所要時間記憶部１ｃｃには、ロボット３のハンドを、メインラック５からピペットラック１０へ移動させるつなぎジョブの所要時間ｔ２が記憶されている。
【００３９】
その後、「ＡＤＤ」と記載された処理シンボル１０３及び容器数シンボル１０５に基づいて、２本のマイクロチューブ６それぞれに液剤Ａを１００μｌずつ加える単位ジョブが行なわれる。当該単位ジョブは、１２の要素ジョブから構成される。すなわち、ロボット３のハンドによりピペット４を把持するジョブ（Ｓ３０１）、ピペットラック１０からチップラック７にハンドを移動させるジョブ（Ｓ３０２）、ピペット４の先端にチップ８を装着するジョブ（Ｓ３０３）、チップラック７から液剤瓶にハンドを移動させるジョブ（Ｓ３０４）、ピペット４をハンドで操作して、液剤瓶から液剤Ａを吸引するジョブ（Ｓ３０５）、液剤瓶からメインラック５にハンドを移動させるジョブ（Ｓ３０６）、メインラック５に収納された第１マイクロチューブ６ａに液剤Ａを１００μｌ吐出するジョブ（Ｓ３０７）、メインラック５に収納された第２マイクロチューブ６ｂに液剤Ａを１００μｌ吐出するジョブ（Ｓ３０８）、メインラック５からダストボックス１３にハンドを移動させるジョブ（Ｓ３０９）、ピペット４に装着されたチップ８をダストボックス１３に廃棄するジョブ（Ｓ３１０）、ダストボックス１３からピペットラック１０にハンドを移動させるジョブ（Ｓ３１１）、ハンドに把持されたピペット４をピペットラック１０に返却するジョブ（Ｓ３１２）である。
【００４０】
「ＡＤＤ」と記載された処理シンボル１０３及び容器数シンボル１０５に対応する単位ジョブの所要時間ｔ３と、当該単位ジョブを構成する要素ジョブの所要時間ｔ３ａ〜ｔ３ｌは、単位ジョブ所要時間記憶部１ｃｂに記憶されている。
【００４１】
本実施形態に係る動作指令生成装置１の動作指令生成部２２は、処理シンボル１０３に示された処理条件に応じて、処理シンボル１０３に対応する複数の要素ジョブ及びつなぎジョブを直列に接続して動作指令を生成する。ここで、処理条件とは、処理シンボル１０３の引数や手技の指定であり、プロトコルチャート上で確認出来ないものも含む。本例の「ＡＤＤ」と記載された処理シンボル１０３の場合、処理条件は、液剤Ａを１００μｌ加えることである。所要時間算出部４０は、複数の要素ジョブの所要時間及びつなぎジョブの所要時間を加算して、動作指令の所要時間を算出する。処理シンボル１０３に示された処理条件が異なると、当該処理シンボル１０３に対応する単位ジョブを構成する要素ジョブが変化し、単位ジョブの所要時間が変化することになる。本実施形態に係るロボットシステム２００によれば、処理条件に応じて単位ジョブを構成する要素ジョブが変化する場合であっても、動作指令の所要時間が正確に予測される。
【００４２】
続いて、「ＡＤＤ」と記載された処理シンボル１０３により表される単位ジョブの終了位置から、「ＣＥＮＴＲＩＦＵＧＥ」と記載された処理シンボル１０３の開始位置へロボット３のハンドを移動させるつなぎジョブが実行される。具体的には、ロボット３のハンドを、ピペットラック１０からメインラック５へ移動させるジョブが実行される（Ｓ４０１）。つなぎジョブ所要時間記憶部１ｃｃには、ロボット３のハンドを、ピペットラック１０からメインラック５へ移動させるつなぎジョブの所要時間ｔ４が記憶されている。
【００４３】
次に、「ＣＥＮＴＲＩＦＵＧＥ」と記載された処理シンボル１０３及び容器数シンボル１０５に基づいて、２本のマイクロチューブ６それぞれについて遠心処理を行う単位ジョブが実行される。当該単位ジョブは、第１マイクロチューブ６ａをハンドで把持してメインラック５から遠心機１２に移送するジョブと（Ｓ５０１）、第２マイクロチューブ６ｂをハンドで把持してメインラック５から遠心機１２に移送するジョブと（Ｓ５０２）、遠心機１２を作動させて３分間の遠心処理を行うジョブ（Ｓ５０３）と、により構成される。
【００４４】
「ＣＥＮＴＲＩＦＵＧＥ」と記載された処理シンボル１０３及び容器数シンボル１０５に対応する単位ジョブの所要時間ｔ５と、当該単位ジョブを構成する要素ジョブの所要時間ｔ５ａ、ｔ５ｂ及びｔ５ｃは、単位ジョブ所要時間記憶部１ｃｂに記憶されている。
【００４５】
図４に示すプロトコルチャートの例の場合、「ＣＥＮＴＲＩＦＵＧＥ」と記載された処理シンボル１０３には、処理条件が示されており、処理条件は処理時間の指定を含む。指定された処理時間は３分間である。所要時間算出部４０は、処理時間、単位ジョブの所要時間及びつなぎジョブの所要時間を加算して、動作指令の所要時間を算出する。本例の場合、遠心機１２を作動させて遠心処理を行うジョブ（Ｓ５０３）の処理時間は、「ＣＥＮＴＲＩＦＵＧＥ」と記載された処理シンボル１０３に示された処理条件に依存して変化する。本実施形態に係るロボットシステム２００によれば、処理時間が比較的長時間であり、ロボット３に待ち時間が生じる場合であっても、動作指令の所要時間が正確に予測される。
【００４６】
最後に、最終シンボル１０１及び容器数シンボル１０５に基づいて、２本のマイクロチューブ６を遠心機１２からチューブラックに移送する単位ジョブが実行される。単位ジョブは、第１マイクロチューブ６ａを移送する要素ジョブと、第２マイクロチューブ６ｂを移送する要素ジョブと、から構成される。具体的には、第１マイクロチューブ６ａをロボット３のハンドで把持して遠心機１２からチューブラックに移送し（Ｓ６０１）、第２マイクロチューブ６ｂを同様に遠心機１２からチューブラックに移送するジョブが行なわれる（Ｓ６０２）。単位ジョブ所要時間記憶部１ｃｂには、２本のマイクロチューブ６を遠心機１２からチューブラックに移送する単位ジョブの所要時間ｔ６が記憶されている。また、単位ジョブ所要時間記憶部１ｃｂには、第１マイクロチューブ６ａを遠心機１２からチューブラックに移送する要素ジョブの所要時間ｔ６ａと、第２マイクロチューブ６ｂを遠心機１２からチューブラックに移送する要素ジョブの所要時間ｔ６ｂと、が記憶されている。以上で動作指令の実行が終了する。
【００４７】
ロボット制御部２のジョブ完了情報生成部２ａは、動作指令に直列的に含まれる単位ジョブ及びつなぎジョブのうち、少なくとも直近で実行完了している単位ジョブ又はつなぎジョブを特定するジョブ完了情報を生成する。本例の場合、例えば第１マイクロチューブ６ａ及び第２マイクロチューブ６ｂをチューブラックからメインラック５に移送する単位ジョブの実行が完了した場合に、ジョブ完了情報生成部２ａは、第１マイクロチューブ６ａ及び第２マイクロチューブ６ｂをチューブラックからメインラック５に移送する単位ジョブを特定するジョブ完了情報を生成する。所要時間算出部４０は、ジョブ完了情報に基づいて、未完了の単位ジョブの所要時間及びつなぎジョブの所要時間を加算して、動作指令の残りの所要時間を算出する。上記の例の場合、所要時間算出部４０は、第１マイクロチューブ６ａ及び第２マイクロチューブ６ｂをチューブラックからメインラック５に移送する単位ジョブを特定するジョブ完了情報に基づいて、未完了の単位ジョブの所要時間及びつなぎジョブの所要時間であるｔ２〜ｔ６を加算して、動作指令の残りの所要時間をｔ２＋ｔ３＋ｔ４＋ｔ５＋ｔ６と算出する。
【００４８】
本実施形態に係るロボットシステム２００によれば、ロボット制御部２から所要時間算出部４０へ、ロボット３の現状が伝えられることで、動作指令の残りの所要時間が算出される。ユーザは、残りの待機時間を把握することができ、適切な行動計画を立てることができる。
【００４９】
図７は、本発明の実施形態に係るロボットシステム２００により実行される単位ジョブ所要時間算出の一例を示すフローチャートである。プロトコルチャートに基づいて、動作指令生成部２２により動作指令が生成されると、シミュレーション部３５は、ロボット３に単位ジョブを行わせるシミュレーションを実行する（Ｓ１１）。ここで、シミュレーション部３５は、必ずしもつなぎジョブのシミュレーションを行う必要はなく、少なくとも動作指令に含まれる単位ジョブについてシミュレーションを行えばよい。後述するように、つなぎジョブは、つなぎジョブ生成部２６により生成され、アームの軌道や所要時間が求められているからである。
【００５０】
単位ジョブ所要時間算出部３６は、ロボット３により単位ジョブを実行するシミュレーションに基づき、単位ジョブを実行した場合の所要時間を算出する（Ｓ１２）。単位ジョブ所要時間算出部３６は、単位ジョブの所要時間を単位ジョブを構成する要素ジョブ毎に算出する。単位ジョブ所要時間記憶部１ｃｂは、単位ジョブ所要時間算出部３６により算出された単位ジョブの所要時間を記憶する。単位ジョブ所要時間記憶部１ｃｂは、単位ジョブの所要時間を、単位ジョブを構成する要素ジョブ毎に記憶する。
【００５１】
本実施形態に係るロボットシステム２００によれば、単位ジョブを実際に実行せずとも単位ジョブの所要時間を把握することができ、動作指令全体の所要時間を把握することができる。
【００５２】
図８は、本発明の実施形態に係るロボットシステム２００により実行されるつなぎジョブ所要時間算出の一例を示すフローチャートである。つなぎジョブ生成部２６は、連続する２つの単位ジョブの終了位置から開始位置にハンドを移動させるつなぎジョブを生成する（Ｓ２１）。また、つなぎジョブ生成部２６は、つなぎジョブの生成に伴って、つなぎジョブの所要時間を算出する（Ｓ２２）。つなぎジョブ生成部２６によるつなぎジョブの生成は、ハンドと周辺機器との干渉が起こらないように計算された自動パス生成により行なわれてよく、つなぎジョブの所要時間は、生成されたつなぎジョブにおけるハンドの軌道や移動速度から算出される。つなぎジョブ所要時間記憶部１ｃｃは、つなぎジョブ生成部２６により算出されたつなぎジョブの所要時間を記憶する（Ｓ２３）。
【００５３】
本実施形態に係るロボットシステム２００によれば、つなぎジョブを実際に実行せずともつなぎジョブの所要時間を把握することができ、動作指令全体の所要時間を把握することができる。
【００５４】
図９は、本発明の実施形態に係るロボットシステム２００により実行される所要時間更新の一例を示すフローチャートである。単位ジョブ実績記録部４１は、ロボット３により単位ジョブが実行された場合における所要時間の実績を記録する（Ｓ３１）。また、つなぎジョブ実績記録部４２は、ロボット３によりつなぎジョブが実行された場合における所要時間の実績を記録する（Ｓ３１）。所要時間の実績は、ロボット制御部２により生成されるジョブ完了情報の発行間隔に基づいて定めてよい。
【００５５】
単位ジョブ所要時間更新部４３は、単位ジョブが実行された場合における所要時間の実績に基づいて、単位ジョブ所要時間記憶部１ｃｂに記憶された単位ジョブの所要時間を更新する（Ｓ３２）。また、つなぎジョブ所要時間更新部４４は、つなぎジョブが実行された場合における所要時間の実績に基づいて、つなぎジョブ所要時間記憶部１ｃｃに記憶されたつなぎジョブの所要時間を更新する（Ｓ３２）。
【００５６】
本実施形態に係るロボットシステム２００によれば、単位ジョブの所要時間を実績に応じて補正することができ、動作指令の所要時間の予測をより正確に行うことができる。また、つなぎジョブの所要時間を実績に応じて補正することができ、動作指令の所要時間の予測をより正確に行うことができる。
【００５７】
なお、以上説明した動作指令の例では、ロボット３が２以上の処理を並行して行うことがなく、ロボット３が処理を１つずつ実行していく場合を示した。動作指令は、例えばロボット３の第１アームにより第１の単位ジョブを行なわせ、第２アームにより第２の単位ジョブを行なわせる等、ロボット３に２以上の処理を並行して行わせるものであってもよい。動作指令がロボット３に２以上の処理を並行して行わせるものである場合、所要時間算出部４０は、並行して実行される２以上の単位ジョブの所要時間を比較し、最も長い所要時間を、並行して実行される２以上の単位ジョブの所要時間として採用してよい。
【００５８】
以上説明した実施形態の構成は具体例として示したものであり、本明細書にて開示される発明をこれら具体例の構成そのものに限定することは意図されていない。詳述した実施形態は生化学、生物及び生命工学等の分野において処理対象に対しなされる処理に本発明を適用した一例については説明しているが、上述の通りロボットによって処理実行させられる作業はこれに限らず、当業者はこれら開示された実施形態に種々の変形、例えば、機能や操作方法の変更や追加等を加えてもよく、また、フローチャートに示した制御は、同等の機能を奏する他の制御に置き換えてもよい。本明細書にて開示される発明の技術的範囲は、そのようになされた変形をも含むものと理解すべきである。
【符号の説明】
【００５９】
１  動作指令生成装置、１ａ  ＣＰＵ、１ｂ  ＲＡＭ、１ｃ  外部記憶装置、１ｃａ  単位ジョブ記憶部、１ｃｂ  単位ジョブ所要時間記憶部、１ｃｃ  つなぎジョブ所要時間記憶部、１ｄ  ＧＣ、１ｅ  入力デバイス、１ｆ  Ｉ／Ｏ、１ｇ  データバス、１ｈ  モニタ、２  ロボット制御部、２ａ  ジョブ完了情報生成部、３  ロボット、４  ピペット、５  メインラック、６  マイクロチューブ、６ａ  第１マイクロチューブ、６ｂ  第２マイクロチューブ、７  チップラック、８  チップ、９  インキュベータ、１０  ピペットラック、１１  ボルテックスミキサー、１２  遠心機、１３  ダストボックス、２０  入力部、２１  プロトコルチャート取得部、２２  動作指令生成部、２４  単位ジョブ取得部、２５  要素ジョブ組合せ部、２６  つなぎジョブ生成部、３０  動作指令記憶部、３１  動作指令出力部、３２  動作指令表示部、３５  シミュレーション部、４０  所要時間算出部、４１  単位ジョブ実績記録部、４２  つなぎジョブ実績記録部、４３  単位ジョブ所要時間更新部、４４  つなぎジョブ所要時間更新部、１００  初期シンボル、１０１  最終シンボル、１０２  順序線、１０３  処理シンボル、１０４  追加線、１０５  容器数シンボル。
【図１】
2018069366.tif 000003
【図２】
2018069366.tif 000004
【図３】
2018069366.tif 000005
【図４】
2018069366.tif 000006
【図５】
2018069366.tif 000007
【図６】
2018069366.tif 000008
【図７】
2018069366.tif 000009
【図８】
2018069366.tif 000010
【図９】
2018069366.tif 000011