(57)【特許請求の範囲】
【請求項１】
ロボットアームと人とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアームの先端部の位置情報、及び、前記人の位置情報を検出するセンシング装置と、
前記センシング装置により検出された情報を記録する検出履歴データベースと、
前記ロボットアームの本体根元部の位置情報と移動速度情報が記録されている属性データベースと、
前記人と前記ロボットアームとが協調して行う複数の作業工程を含む作業のうちの前記人と前記ロボットアームのそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とを記録する作業手順データベースと、
前記センシング装置により検出された前記情報を基に、前記作業手順データベースに記録された作業手順の進捗の情報を管理する作業進捗管理手段と、
前記検出履歴データベースを参照して、前記人が前記取扱物品を把持したことを判定する物品把持判定手段と、
前記検出履歴データベースから得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベースに記録されかつ前記作業進捗管理手段により管理された前記作業手順を参照し、前記人が前記取扱物品を把持して前記環境内の物品退避場所に置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアームがアクセス困難な状況となるか否かを判定するアクセス判定手段と、
前記アクセス判定手段によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記属性データベースに記録された前記ロボットアームの本体根元部の位置情報と移動速度情報を基に、算出する困難解消時間算出部と、
前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人に、前記困難解消時間算出手段により算出された困難解消時間の情報を提供する情報出力装置と、
を備えたことを特徴とする物品管理システム。
【請求項２】
前記ロボットアームの長さを前記属性データベースに予め記録するとともに、
前記アクセス判定手段は、前記属性データベースに記録された前記ロボットアームの本体根元部の位置情報と長さの情報と前記物品退避場所の位置情報とに基づき、前記ロボットアームの前記先端部が前記物品退避場所にアクセス困難な状況となるか否かを判定する、
ことを特徴とする請求項１に記載の物品管理システム。
【請求項３】
前記作業手順データベースに、前記センシング装置により検出された情報を基に、各工程に使用する前記取扱物品の移動先の位置情報を記録し、
前記アクセス判定手段は、前記検出履歴データベースの情報と前記作業手順データベースの情報をそれぞれ参照して、前記取扱物品を置いた場所が、現在の作業の後の工程で他の取扱物品の移動先となるか否かにより、アクセス困難な状況となるか否かを判定する、
ことを特徴とする請求項１又は２に記載の物品管理システム。
【請求項４】
前記作業手順データベースには、各工程における作業場所の位置情報を記録し、
前記人の手の長さ及び前記ロボットアームの長さを前記属性データベースに記録するとともに、
前記困難解消時間算出部は、アクセス困難な状況を解消するために前記取扱物品を移動させるための、前記人及び前記ロボットアームの移動、把持、及び運搬に要する時間から困難解消時間を算出する、
ことを特徴とする請求項１〜３のいずれか１つに記載の物品管理システム。
【請求項５】
前記作業手順データベースに、各工程の所要時間と、各工程が中断可能か否かを記録し、
前記困難解消時間算出部における困難解消時間の算出において、該当工程が中断不可であった場合、工程が終了するまでの所要時間を加算して算出する、
ことを特徴とする請求項４に記載の物品管理システム。
【請求項６】
前記作業手順データベースに、複数の工程の作業順序とその確率を記録し、
前記困難解消時間算出部における困難解消時間の算出において、前記作業順序の前記確率を用いて重み付けをする、
ことを特徴とする請求項２〜５のいずれか１つに記載の物品管理システム。
【請求項７】
前記環境内の見取り図が記録されている環境マップデータベースと、
前記環境マップデータベース中の前記取扱物品が置かれる領域を複数の場所に分割して、各場所の位置情報を前記困難解消時間算出手段に与え、前記時間算出手段が算出した困難解消時間を取得し、前記環境マップ中の場所に算出した前記困難解消時間を対応付けるマップ管理手段と、
をさらに備えたことを特徴とする請求項１〜６のいずれか１つに記載の物品管理システム。
【請求項８】
前記マップ管理手段は、前記取扱物品が置かれる前記領域を複数の場所に分割するときの各場所のサイズを調整可能である、
ことを特徴とする請求項７に記載の物品管理システム。
【請求項９】
前記情報出力装置は、前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記ロボットアームの長さと前記物品退避場所の位置情報とにより、前記ロボットアームの可動範囲内と可動範囲外とに区別して前記困難解消時間の情報を表示する、
ことを特徴とする請求項１〜８のいずれか１つに記載の物品管理システム。
【請求項１０】
前記情報出力装置は、前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人の手の長さと前記物品退避場所の位置情報とにより、前記人の手が届く範囲のみの前記困難解消時間の情報を表示する、
ことを特徴とする請求項１〜９のいずれか１つに記載の物品管理システム。
【請求項１１】
ロボットアームと人とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアームの先端部の位置情報、及び、前記人の位置情報をセンシング装置で検出し、
前記センシング装置により検出された情報を検出履歴データベースに記録し、
前記人と前記ロボットアームとが協調して行う複数の作業工程を含む作業のうちの前記人と前記ロボットアームのそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とが記録された作業手順データベースから取得した作業手順の進捗の情報を、前記センシング装置により検出された前記情報を基に、作業進捗管理手段で管理し、
前記検出履歴データベースを参照して、前記人が前記取扱物品を把持したことを物品把持判定手段で判定し、
前記検出履歴データベースから得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベースに記録されかつ前記作業進捗管理手段により管理された前記作業手順を参照し、前記人が前記取扱物品を把持して前記環境内の物品退避場所に置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアームがアクセス困難な状況となるか否かをアクセス判定手段で判定し、
前記アクセス判定手段によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記ロボットアームの本体根元部の位置情報と移動速度情報が記録されている属性データベースに記録された情報を基に、困難解消時間算出部で算出し、
前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人に、前記困難解消時間算出手段により算出された困難解消時間の情報を情報出力装置で提供する、
ことを特徴とする物品管理方法。
【請求項１２】
ロボットアームと人とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアームの先端部の位置情報、及び、前記人の位置情報をセンシング装置で検出された情報を検出履歴データベースに記録し、
前記人と前記ロボットアームとが協調して行う複数の作業工程を含む作業のうちの前記人と前記ロボットアームのそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とが記録された作業手順データベースから取得した作業手順の進捗の情報を、前記センシング装置により検出された前記情報を基に、作業進捗管理手段で管理し、
前記検出履歴データベースを参照して、前記人が前記取扱物品を把持したことを物品把持判定手段で判定し、
前記検出履歴データベースから得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベースに記録されかつ前記作業進捗管理手段により管理された前記作業手順を参照し、前記人が前記取扱物品を把持して前記環境内の物品退避場所に置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアームがアクセス困難な状況となるか否かをアクセス判定手段で判定し、
前記アクセス判定手段によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記ロボットアームの本体根元部の位置情報と移動速度情報が記録されている属性データベースに記録された情報を基に、困難解消時間算出部で算出し、
前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人に、前記困難解消時間算出手段により算出された困難解消時間の情報を情報出力装置で提供するといった手順をコンピュータに実行させるための物品管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人とロボット（例えばロボットアーム）が協調して作業を行う際に、取り扱う物品の配置を管理する物品管理システム及び物品管理方法及び物品管理プログラムに関するものである。
【背景技術】
【０００２】
従来の物品の配置を管理するシステムとして、特許文献１に示すような倉庫の荷物を管理するものがある。これは、出庫までの滞留時間が短い物品は、出庫口に近い入庫棚から空き状況を検索して収納し、出庫までの滞留時間が長い物品は、出庫口から遠い入庫棚から空き状況を検索して収納するとともに、入庫済み物品についての滞留時間を所定期間毎に算出し、出庫口に近い入庫棚から空き状況を検索して、所定時間以下の入庫済み物品の配置替えをするものである。これにより、出庫間近の物品は、出庫口付近に集中することになり、出庫作業を効率的に進めるための物品の配置が制御されている。また、特許文献２では、製造日時と入庫日時が古い物品から先入れ先出しにより、出荷を行うようにしている。
【０００３】
【特許文献１】特開昭６１−２２９７０５号公報
【特許文献２】特開２００１−４８３１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、従来の技術は、倉庫という制御された空間において、与えられた出庫順に従って配置を制御するものなので、人が介在する作業における曖昧性に対して、対応が不可能である。
【０００５】
つまり、人は、最初に与えられた手順とは異なる手順で作業したり、毎回異なる場所に物品を移動したりするので、これにより、後の作業の実行に悪影響を及ぼしてしまうという課題を有する。ここで、悪影響とは、人が物品（ここでは、以下、「障害物品」という。）を任意の場所に置いたことにより、ロボットが、その障害物品の陰になってしまった物品を取ろうとしたときに、その障害物品が邪魔になり、まず、邪魔な障害物品を移動させるという無駄な時間が発生してしまうことを指す。又は、人が障害物品を置いた所が、ロボットの可動範囲外であったときには、ロボットにはその障害物品を扱うことができないので、人が、その障害物品を取りに行かなければならないこともある。
【０００６】
図３１に課題となる具体的な状況を示している。人とロボットが協調して調理をする場面である。
【０００７】
（１）まず、人が玉葱を切り、切った玉葱をボウルに入れる。
（２）次に、人が他の作業をするために、人がボウルを人の脇に置く。このとき、人が何も意識せずにいると、そのときの人の気分や気まぐれによって、ボウルを置く場所は一定ではない。ここでは、人の右側に置かれている、油の入った入れ物（油入れ）の前に置いたとする。すると、このボウルが前記した障害物品となる。
（３）作業が進み、人がコンロの前で炒め作業をするために、ロボットに油入れを取ってもらうように命令する。
（４）すると、先ほど置いたボウルが邪魔となり、ロボットは油入れを取ることができない。そのため、作業を進めるためには、次の（５）又は（５‘）を行わなければならない。
（５）ロボットが、邪魔なボウルを、邪魔にならない場所まで移動する。
（５‘）人が、邪魔なボウルを、邪魔にならない場所まで移動する。
（６）前記（５）又は（５‘）を行った結果、ロボットが油入れを取ることができるようになり、ロボットが油入れを取って人に渡すことができる。
以上のように、前記（２）の場面で不適切な場所に人がボウルを置いたことによって、以降の（５）又は（５‘）という無駄な作業時間が発生してしまう。逆に言えば、このとき、人が不適切な場所（油入れの前）にボウル置かないように情報を人に提供すれば、これを防ぐことができる。
【０００８】
本発明は、前記従来の課題を解決するもので、無駄な時間の発生を防ぐために、物品を移動するとそれ以降の作業に悪影響を及ぼしてしまう場所（例えば、物品を置きたくない場所、物品の移動を避けたい場所）の情報を提示することで、効率的に作業を実行できるようにした物品管理システム及び物品管理方法及び物品管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
前記従来の課題を解決するために、本発明の物品管理システムは以下のように構成する。
【００１０】
本発明の第１態様によれば、ロボットアームと人とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアームの先端部の位置情報、及び、前記人の位置情報を検出するセンシング装置と、
前記センシング装置により検出された情報を記録する検出履歴データベースと、
前記ロボットアームの本体根元部の位置情報と移動速度情報が記録されている属性データベースと、
前記人と前記ロボットアームとが協調して行う複数の作業工程を含む作業のうちの前記人と前記ロボットアームのそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とを記録する作業手順データベースと、
前記センシング装置により検出された前記情報を基に、前記作業手順データベースに記録された作業手順の進捗の情報を管理する作業進捗管理手段と、
前記検出履歴データベースを参照して、前記人が前記取扱物品を把持したことを判定する物品把持判定手段と、
前記検出履歴データベースから得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベースに記録されかつ前記作業進捗管理手段により管理された前記作業手順を参照し、前記人が前記取扱物品を把持して前記環境内の物品退避場所に置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアームがアクセス困難な状況となるか否かを判定するアクセス判定手段と、
前記アクセス判定手段によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記属性データベースに記録された前記ロボットアームの本体根元部の位置情報と移動速度情報を基に、算出する困難解消時間算出部と、
前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人に、前記困難解消時間算出手段により算出された困難解消時間の情報を提供する情報出力装置と、
を備えたことを特徴とする物品管理システムを提供する。
【００１１】
本発明の第１１態様によれば、ロボットアームと人とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアームの先端部の位置情報、及び、前記人の位置情報をセンシング装置で検出し、
前記センシング装置により検出された情報を検出履歴データベースに記録し、
前記人と前記ロボットアームとが協調して行う複数の作業工程を含む作業のうちの前記人と前記ロボットアームのそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とが記録された作業手順データベースから取得した作業手順の進捗の情報を、前記センシング装置により検出された前記情報を基に、作業進捗管理手段で管理し、
前記検出履歴データベースを参照して、前記人が前記取扱物品を把持したことを物品把持判定手段で判定し、
前記検出履歴データベースから得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベースに記録されかつ前記作業進捗管理手段により管理された前記作業手順を参照し、前記人が前記取扱物品を把持して前記環境内の物品退避場所に置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアームがアクセス困難な状況となるか否かをアクセス判定手段で判定し、
前記アクセス判定手段によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記ロボットアームの本体根元部の位置情報と移動速度情報が記録されている属性データベースに記録された情報を基に、困難解消時間算出部で算出し、
前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人に、前記困難解消時間算出手段により算出された困難解消時間の情報を情報出力装置で提供する、
ことを特徴とする物品管理方法を提供する。
【００１２】
本発明の第１２態様によれば、ロボットアームと人とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアームの先端部の位置情報、及び、前記人の位置情報をセンシング装置で検出された情報を検出履歴データベースに記録し、
前記人と前記ロボットアームとが協調して行う複数の作業工程を含む作業のうちの前記人と前記ロボットアームのそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とが記録された作業手順データベースから取得した作業手順の進捗の情報を、前記センシング装置により検出された前記情報を基に、作業進捗管理手段で管理し、
前記検出履歴データベースを参照して、前記人が前記取扱物品を把持したことを物品把持判定手段で判定し、
前記検出履歴データベースから得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベースに記録されかつ前記作業進捗管理手段により管理された前記作業手順を参照し、前記人が前記取扱物品を把持して前記環境内の物品退避場所に置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアームがアクセス困難な状況となるか否かをアクセス判定手段で判定し、
前記アクセス判定手段によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記ロボットアームの本体根元部の位置情報と移動速度情報が記録されている属性データベースに記録された情報を基に、困難解消時間算出部で算出し、
前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人に、前記困難解消時間算出手段により算出された困難解消時間の情報を情報出力装置で提供するといった手順をコンピュータに実行させるための物品管理プログラムを提供する。
【００１３】
本構成によって、人が物品を把持したときに、その物品の置き場所について、想定される障害物品除去時間を算出し、算出結果に基づいて情報提供を行うことができる。
【発明の効果】
【００１４】
本発明によれば、人が物品を把持したときに、その物品の置き場所について、想定される障害物品除去時間を算出し、算出結果に基づいて情報提供を行うことにより、人が提供された情報に従って物品の置き場所を選択する（例えば、物品を置きたくない場所、物品の移動を避けたい場所を避ける）という最小限の手間で無駄な時間の発生を防ぐことができ、効率的に作業を実行できる。
【発明を実施するための最良の形態】
【００１５】
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
【００１６】
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
【００１７】
本発明の第１態様によれば、ロボットアームと人とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアームの先端部の位置情報、及び、前記人の位置情報を検出するセンシング装置と、
前記センシング装置により検出された情報を記録する検出履歴データベースと、
前記ロボットアームの本体根元部の位置情報と移動速度情報が記録されている属性データベースと、
前記人と前記ロボットアームとが協調して行う複数の作業工程を含む作業のうちの前記人と前記ロボットアームのそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とを記録する作業手順データベースと、
前記センシング装置により検出された前記情報を基に、前記作業手順データベースに記録された作業手順の進捗の情報を管理する作業進捗管理手段と、
前記検出履歴データベースを参照して、前記人が前記取扱物品を把持したことを判定する物品把持判定手段と、
前記検出履歴データベースから得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベースに記録されかつ前記作業進捗管理手段により管理された前記作業手順を参照し、前記人が前記取扱物品を把持して前記環境内の物品退避場所に置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアームがアクセス困難な状況となるか否かを判定するアクセス判定手段と、
前記アクセス判定手段によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記属性データベースに記録された前記ロボットアームの本体根元部の位置情報と移動速度情報を基に、算出する困難解消時間算出部と、
前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人に、前記困難解消時間算出手段により算出された困難解消時間の情報を提供する情報出力装置と、
を備えたことを特徴とする物品管理システムを提供する。
【００１８】
本発明の第２態様によれば、前記ロボットアームの長さを前記属性データベースに予め記録するとともに、
前記アクセス判定手段は、前記属性データベースに記録された前記ロボットアームの本体根元部の位置情報と長さの情報と前記物品退避場所の位置情報とに基づき、前記ロボットアームの前記先端部が前記物品退避場所にアクセス困難な状況となるか否かを判定する、
ことを特徴とする第１の態様に記載の物品管理システムを提供する。
【００１９】
本発明の第３態様によれば、前記作業手順データベースに、前記センシング装置により検出された情報を基に、各工程に使用する前記取扱物品の移動先の位置情報を記録し、
前記アクセス判定手段は、前記検出履歴データベースの情報と前記作業手順データベースの情報をそれぞれ参照して、前記取扱物品を置いた場所が、現在の作業の後の工程で他の取扱物品の移動先となるか否かにより、アクセス困難な状況となるか否かを判定する、
ことを特徴とする第１又は２の態様に記載の物品管理システムを提供する。
【００２０】
本発明の第４態様によれば、前記作業手順データベースには、各工程における作業場所の位置情報を記録し、
前記人の手の長さ及び前記ロボットアームの長さを前記属性データベースに記録するとともに、
前記困難解消時間算出部は、アクセス困難な状況を解消するために前記取扱物品を移動させるための、前記人及び前記ロボットアームの移動、把持、及び運搬に要する時間から困難解消時間を算出する、
ことを特徴とする第１〜３のいずれか１つの態様に記載の物品管理システムを提供する。
【００２１】
本発明の第５態様によれば、前記作業手順データベースに、各工程の所要時間と、各工程が中断可能か否かを記録し、
前記困難解消時間算出部における困難解消時間の算出において、該当工程が中断不可であった場合、工程が終了するまでの所要時間を加算して算出する、
ことを特徴とする第４の態様に記載の物品管理システムを提供する。
【００２２】
本発明の第６態様によれば、前記作業手順データベースに、複数の工程の作業順序とその確率を記録し、
前記困難解消時間算出部における困難解消時間の算出において、前記作業順序の前記確率を用いて重み付けをする、
ことを特徴とする第２〜５のいずれか１つの態様に記載の物品管理システムを提供する。
【００２３】
本発明の第７態様によれば、前記環境内の見取り図が記録されている環境マップデータベースと、
前記環境マップデータベース中の前記取扱物品が置かれる領域を複数の場所に分割して、各場所の位置情報を前記困難解消時間算出手段に与え、前記時間算出手段が算出した困難解消時間を取得し、前記環境マップ中の場所に算出した前記困難解消時間を対応付けるマップ管理手段と、
をさらに備えたことを特徴とする第１〜６のいずれか１つの態様に記載の物品管理システムを提供する。
【００２４】
本発明の第８態様によれば、前記マップ管理手段は、前記取扱物品が置かれる前記領域を複数の場所に分割するときの各場所のサイズを調整可能である、
ことを特徴とする第７の態様に記載の物品管理システムを提供する。
【００２５】
本発明の第９態様によれば、前記情報出力装置は、前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記ロボットアームの長さと前記物品退避場所の位置情報とにより、前記ロボットアームの可動範囲内と可動範囲外とに区別して前記困難解消時間の情報を表示する、
ことを特徴とする第１〜８のいずれか１つの態様に記載の物品管理システムを提供する。
【００２６】
本発明の第１０態様によれば、前記情報出力装置は、前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人の手の長さと前記物品退避場所の位置情報とにより、前記人の手が届く範囲のみの前記困難解消時間の情報を表示する、
ことを特徴とする第１〜９のいずれか１つの態様に記載の物品管理システムを提供する。
【００２７】
本発明の第１１態様によれば、ロボットアームと人とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアームの先端部の位置情報、及び、前記人の位置情報をセンシング装置で検出し、
前記センシング装置により検出された情報を検出履歴データベースに記録し、
前記人と前記ロボットアームとが協調して行う複数の作業工程を含む作業のうちの前記人と前記ロボットアームのそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とが記録された作業手順データベースから取得した作業手順の進捗の情報を、前記センシング装置により検出された前記情報を基に、作業進捗管理手段で管理し、
前記検出履歴データベースを参照して、前記人が前記取扱物品を把持したことを物品把持判定手段で判定し、
前記検出履歴データベースから得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベースに記録されかつ前記作業進捗管理手段により管理された前記作業手順を参照し、前記人が前記取扱物品を把持して前記環境内の物品退避場所に置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアームがアクセス困難な状況となるか否かをアクセス判定手段で判定し、
前記アクセス判定手段によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記ロボットアームの本体根元部の位置情報と移動速度情報が記録されている属性データベースに記録された情報を基に、困難解消時間算出部で算出し、
前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人に、前記困難解消時間算出手段により算出された困難解消時間の情報を情報出力装置で提供する、
ことを特徴とする物品管理方法を提供する。
【００２８】
本発明の第１２態様によれば、ロボットアームと人とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアームの先端部の位置情報、及び、前記人の位置情報をセンシング装置で検出された情報を検出履歴データベースに記録し、
前記人と前記ロボットアームとが協調して行う複数の作業工程を含む作業のうちの前記人と前記ロボットアームのそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とが記録された作業手順データベースから取得した作業手順の進捗の情報を、前記センシング装置により検出された前記情報を基に、作業進捗管理手段で管理し、
前記検出履歴データベースを参照して、前記人が前記取扱物品を把持したことを物品把持判定手段で判定し、
前記検出履歴データベースから得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベースに記録されかつ前記作業進捗管理手段により管理された前記作業手順を参照し、前記人が前記取扱物品を把持して前記環境内の物品退避場所に置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアームがアクセス困難な状況となるか否かをアクセス判定手段で判定し、
前記アクセス判定手段によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記ロボットアームの本体根元部の位置情報と移動速度情報が記録されている属性データベースに記録された情報を基に、困難解消時間算出部で算出し、
前記物品把持判定手段により前記人が前記取扱物品を把持したと判定されたとき、前記人に、前記困難解消時間算出手段により算出された困難解消時間の情報を情報出力装置で提供するといった手順をコンピュータに実行させるための物品管理プログラムを提供する。
【００２９】
以下、図面を参照して本発明における第１実施形態を詳細に説明する。
【００３０】
本発明の１つの実施形態にかかる物品管理システム、その物品管理システムで実行される物品管理方法、及び、その物品管理システムを実行可能な物品管理プログラムについて、以下に説明する。
【００３１】
《物品管理システムの利用シーンの一例》
図１Ａには、本発明の前記１つの実施形態にかかる物品管理システムの利用シーンの一例を示している。ここでは、ロボットアーム１０２と人１０６とが協調して作業を行う例として、前記物品管理システムをキッチンルーム１００での調理作業に利用する例について説明する。キッチンルーム１００には、システムキッチン１０１と、ロボットの一例として機能するロボットアーム１０２と、情報出力装置１０３と、センサ１０４と、ガス台１０７と、調理台１０８と、シンク１０９と、電子レンジ１１０と、食器洗浄器１１１と、システムキッチン１０１の上方に配置された収納棚１１２とが配置されており、その他に、調理作業に用いられる物品１０５と、調理作業を行う人１０６とが存在している。
【００３２】
ロボットアーム１０２は、制御手段３０２の制御の下に、各関節の駆動モータ(具体的には、図１Ｂの肘関節駆動モータ１３１と肩関節駆動モータ１３２)及び先端部のハンド部１０２ａの開閉に使用するハンド駆動モータ１３０により駆動されて、人１０６と協調して、人１０６の行う調理作業の支援を行うものである。例えば、ロボットアーム１０２の先端部にレードルを装着して、レードルで鍋の中身を自動的にかき混ぜる機能と、ロボットアーム１０２の先端部にスポンジを装着して、スポンジで拭き掃除を行う機能と、重い鍋を人とロボットアーム１０２とが一緒に持って搬送する機能と、調理用具をロボットアーム１０２が取って人に手渡しする機能と、次に人１０６が使用する調理用具をロボットアーム１０２が使用場所付近に準備する機能などを行うことが考えられる。
【００３３】
情報出力装置１０３の例としては、この例では、液晶プロジェクタが設置されている。
【００３４】
センサ１０４の例としては、この例では、キッチンルーム１００を撮像する画像センサ（カメラ）が設置されている。
【００３５】
図１Ａにおいて、ロボットアーム１０２は、その本体根元部１０２ｂがシステムキッチン１０１上の奥側（人１０６に対して正面の壁側）に固定されているが、図２Ａに示すように、システムキッチン１０１上の奥側（人１０６に対して正面の壁側）にレール２０１を設置し、ロボットアーム１０２の本体根元部１０２ｂが自走装置１０２Ａに取り付けられてロボットアーム１０２の全体がレール２０１上を自走装置１０２Ａで移動できるようにしても良い。また、図１Ａ及び図２Ａの代わりに、図２Ｂに示すように、システムキッチン１０１の上側の収納棚１１２に配置されていてもよい。又は、図２Ｃに示すように、システムキッチン１０１の壁１０１Ａ側に配置されていてもよい。又は、図２Ｄに示すように、システムキッチン１０１上の例えば調理台１０８の手前側に配置されていても良い。システムキッチン１０１の上側や壁側に配置すれば、ロボットアーム１０２にとって、システムキッチン１０１上に置いた物品が邪魔にならなくなる。また、システムキッチン１０１の手前側に設置すれば、ロボットアーム１０２が電子レンジ１１０にも届くようになり、ロボットアーム１０２により電子レンジ１１０を利用する作業も可能になる。
【００３６】
《作業手順》
本発明の前記実施形態において、人１０６とロボット（例えばロボットアーム１０２）が協調して行う作業は、作業手順が作業手順データベース３０６に予め記録されて用意されている。前記キッチンルーム１００における調理作業のロボットによる支援においては、調理する献立のレシピが、作業手順に相当する。前記作業手順には、各工程において何の物品（調理器具や食材）を使用するか、どの場所で操作するか、などが作業する順番に従って作業手順データベース３０６に記録されている。詳細は後述する。
【００３７】
《利用シーン》
本発明の前記実施形態にかかる物品管理システムは、例えば、次のような場面で特に有効である。
【００３８】
多数の食材を用い、調理工程が多い等の手の込んだ料理を作るという作業では、食材や調理用具などの運搬や、ロボットアーム１０２の調理支援操作の工程が繰り返し発生する。
【００３９】
このとき、人１０６と協調して作業するロボットアーム１０２の機能として、ロボットアーム１０２による鍋のかき混ぜのような単調作業の実行や、ロボットアーム１０２による重量物の協調搬送とともに、ロボットアーム１０２による人１０６への調理用具の手渡しや、次の作業のために使いやすい場所に調理用具をロボットアーム１０２により予め準備しておくこと等が考えられる。このような機能を実現するために、ロボットアーム１０２が調理用具を把持することは、最低限、必要な動作である。
【００４０】
図１Ｂに、具体的なロボットアーム１０２を示す。ロボットアーム１０２は、本体根元部１０２ｂの肩関節と、本体根元部１０２ｂと先端部のハンド部１０２ａとの間の肘関節とを有する。また、ロボットアーム１０２は、ロボットアーム先端部のハンド部１０２ａ及び関節（肩関節及び肘関節）の現在の位置を取得するエンコーダ１３３をそれぞれ有する。
【００４１】
このようなロボットアーム１０２の動作は、制御手段３０２の制御の下に各関節の駆動モータ（具体的には、肘関節駆動モータ１３１、肩関節駆動モータ１３２）及び先端部のハンド部１０２ｂの開閉に使用するハンド駆動モータ１３０により駆動されて行われる。
【００４２】
一方、人１０６は、調理用具を使った後、その調理用具を手近な場所に何の気なしに置いてしまうことが良くある。次に、ロボットアーム１０２がその調理用具を手渡ししようとしたとき、ロボットアーム１０２の可動範囲外にその調理用具が置かれてしまっていると、その調理用具をロボットアーム１０２が把持することができず、結局、人がその調理用具を取りに行かなければならない、という無駄な作業（時間）が発生してしまうことになる。そこで、本発明の前記実施形態にかかる物品管理システムでは、人１０６が物品を移動するとき、それ以降の作業に悪影響を及ぼしてしまう場所（移動不適切場所）の情報を提示する。人は、その情報に従って、移動しようとする物品の置き場所を選ぶようにする、という最小限の手間で、無駄な作業（時間）の発生を事前に防ぐことができるようになる。
【００４３】
人が任意に物品を動かし、特に、キッチンルームのように決して広いとは言えない環境においては、作業の手順通りに、使用する予定の物品を予め並べて用意して置くことは困難であり、その場（例えば、作業の進行状況）に応じて、物品の位置情報や作業の進捗などから状況を判定し、後の作業を実行するときに無駄な作業が発生しないように情報を人１０６に提供する、という本発明の前記実施形態にかかる物品管理システムは有効である。
【００４４】
《物品管理システムの構成》
図３Ａには、人１０６とロボットアーム１０２とが協調して複数の作業工程を含む作業を行うことができる環境において使用可能な、本発明の前記実施形態における物品管理システムの機能ブロック図を示している。物品管理システムは、時刻取得手段（時刻取得部）３０１と、制御手段（制御部）３０２と、センシング装置３０３と、検出履歴データベース３０４と、物品把持判定手段（物品把持判定部）３０５と、作業手順データベース３０６と、作業進捗管理手段（作業進捗管理部）３０７と、作業手順データベース更新手段３０８と、アクセス判定手段（アクセス判定部）３１０と、困難解消時間算出部（困難解消時間算出部）の一例として機能する障害物品除去時間算出手段（障害物品除去時間算出部）３１１と、環境マップデータベース３１２と、マップ管理手段（マップ管理部）３１３と、情報出力装置３１４と、属性データベース３１５と、記録情報データベース３１６とを備えるように構成されるものである。
【００４５】
以下、それぞれの構成要素について説明する。
【００４６】
《時刻取得手段》
時刻取得手段３０１は、現在時刻を取得し、制御手段３０２とセンシング装置３０３と作業進捗管理手段３０７とに出力するものである。なお、検出履歴データベース３０４への時刻の記録は、センシング装置３０３から出力された時刻を記録することにより行う。
【００４７】
《制御手段》
制御手段３０２は、全ての手段又は装置と接続されてそれらの手段又は装置に対してそれらの動作をそれぞれ制御して、制御手段３０２の制御下で前記物品管理システムを動作させるものである。制御手段３０２の制御下での前記物品管理システムの全体の処理フローは後述する。
【００４８】
《記録情報データベース》
記録情報データベース３１６は、センシング装置３０３において、人及び物品を検出するために予め記録しておく画像の情報や予め記録しておくＩＤの情報（識別情報）などの情報を保持するものである。例えば、キッチンルーム１００において人や検出したい物品が無い状態である背景画像や、顔認識技術を利用するための人の顔画像や、テンプレートマッチング処理をするための物品のテンプレート画像などを記録情報データベース３１６に予め記録して保持する。さらに、顔画像やテンプレート画像は、その人やその物品の名前や、無線ＩＣタグに記録されているＩＤなどと対応付けられて記録情報データベース３１６に記録保持されている。なお、これらの情報は、キーボード、マウス、音声入力装置、タッチパネル、又は、ディスプレイなどの入出力手段３１７により、記録情報データベース３１６に、あらかじめ記録しておいても良い。
【００４９】
《センシング装置》
センシング装置３０３は、人のＩＤや位置情報（例えば位置座標）、及び、物品ＩＤや位置情報（例えば位置座標）を検出し、その検出結果（検出情報）を検出履歴データベース３０４に記録する。このとき、検出した時刻を時刻取得手段３０１から取得し、ここで検出した検出結果と対応付けて、その時刻情報を検出履歴データベース３０４に記録する
さらに、ロボットアーム１０２の先端部の現在位置情報（手先位置）及びロボットアーム１０２の根元部位置情報を制御手段３０２から取得して、その時刻情報とともに、検出履歴データベース３０４に記録する。すなわち、ロボットアーム１０２の本体根元部１０２ｂの動作時の位置座標は検出履歴データベース３０４で管理する。なお、ロボットアーム１０２の先端部の現在位置情報は、一例として、エンコーダ１３３より制御手段３０２を通じて取得する。
【００５０】
センシング装置３０３に用いられるセンサとしては、例えば、画像センサ、超音波タグセンサ、床圧力センサ、無線ＩＣタグセンサ、又は、重量センサなどが考えられる。以下、各センサの具体的な動作の例を説明する。なお、図１Ａでは、センサ１０４がセンシング装置３０３の一例として機能する。
【００５１】
画像センサを用いる場合、図４に示すように、人１０６や物品４０４を検出したい領域４０１（例えば、図１Ａのキッチンルーム１００）を撮影できるように、カメラ４０２（例えば、図１Ａのセンサ１０４）を設置する。領域４０１内に人１０６や検出したい物品４０４が無い状態の画像を、図５Ａに示すように、背景画像５０１として予め保持しておく（システムキッチン１０１）。人１０６が領域４０１内に入ったときの人検出画像５０２（図５Ｂ参照）と前記背景画像５０１との差を画像処理手段４０３（図３Ｂ参照）で求めることにより、差分画像５０３（図５Ｃ参照）が得られる。図３Ｂには、センシング装置３０３の構成の一例を示しており、カメラ４０２と、カメラ４０２に接続されてカメラ４０２で撮像した画像情報を処理する画像処理手段４０３とにより、センシング装置３０３を構成している。
【００５２】
差分画像５０３で抽出された斜線部の領域５０４の下端が、検出された人１０６の床面上の位置である。図５Ａ〜図５Ｃは、それぞれ、順に、処理画像、すなわち、背景画像、人検出画像、差分画像の例を示している。
【００５３】
また、人１０６のＩＤ又は名前と対応付けられた人１０６の顔画像を記録情報データベース３１６に予め記録しておき、予め記録された画像と、撮影した画像とを顔認識技術を利用して画像処理手段４０３で比較することにより、その人が誰であるかを識別することができる（例えば、特開２００５−３１６８８８号公報、特開２００６−１７８６５１号公報を参照）。
【００５４】
キッチンルーム１００に人１０６が入室するとき等、人１０６の顔を正面から撮影できるときにこの識別処理を行い、以降は、その人１０６の移動を追跡することで、人１０６がキッチンルーム１００内のどこにいても、人１０６を識別することが可能である。
【００５５】
また、図６に示すように、取り扱う物品６００のテンプレート画像６０１を予め記録しておき、差分画像で抽出された領域とのマッチング処理により、その物品が何であるかを識別できる。図６はテンプレート画像の一例を示している。可能なかぎり、色々な角度から見た画像を記録することが、マッチング処理精度を向上させる点で好ましい。
【００５６】
超音波タグセンサを用いる場合、図７に示すように、人１０６を検出したい領域７０１の天井７０１ｃに複数の超音波受信機７０２を設置し、人１０６に超音波発信器７０３を携帯させる。人１０６が携帯する超音波発信器７０３が発信する超音波を、複数の超音波受信機７０２が受信し、前記超音波の到達時間の差により超音波発信器７０３の３次元位置を求めることができ、この位置を床面上に投影した２次元座標を人１０６の位置とする。また、超音波発信器７０３（又は記録情報データベース３１６）に人１０６のＩＤを予め記録しておくことにより、検出した人１０６が誰であるかを超音波受信機７０２により識別することもできる。
【００５７】
床圧力センサを用いる場合、図８Ａに示すように、人１０６を検出したい領域８０１の床面８０１ｃに床圧力センサの一例として機能する圧力感知素子８０２を敷き詰めておく。人１０６が歩いたときの圧力が検知された圧力感知素子８０２から、人１０６の位置を求めることができる。また、人１０６が歩いた軌跡から歩行パターンを圧力データ処理手段８０３（図８Ｂ参照）で求め、その人１０６が誰であるかを識別することができる（例えば、「センシングフロアによる人の識別・追跡」、日本機械学会ロボティクス・メカトロニクス講演会‘０３講演論文集１Ａ１−１Ｆ−Ａ２を参照）。図８Ｂには、センシング装置３０３の構成の一例を示しており、圧力感知素子８０２と、圧力感知素子８０２に接続されて圧力感知素子８０２で感知した情報を処理する圧力データ処理手段８０３とにより、センシング装置３０３を構成している。
【００５８】
無線ＩＣタグセンサを用いる場合、図９Ａに示すように、物品を検出したい領域９０１が検出範囲となるように読み取りアンテナ９０２を設置し、物品９０４には無線ＩＣタグ９０３を貼り付ける。読み取りアンテナ９０２の検出範囲内に、無線ＩＣタグ９０３が貼り付けられた物品９０４が置かれると、これを読み取りアンテナ９０２で読み取ることで、物品９０４の位置を検出することができる。ただし、読み取りアンテナ９０２の検出範囲内のどこにあるかまでは分からないので、検出位置の精度は、読み取りアンテナ９０２の検出範囲のサイズに依存する。また、無線ＩＣタグ９０３に取り扱う物品のＩＤを記録情報データベース３１６に予め記録しておくことにより、検出した物品が何であるかを無線ＩＣタグデータ処理手段９０４（図９Ｂ参照）で識別することができる。図９Ｂには、センシング装置３０３の構成の一例を示しており、読み取りアンテナ９０２と、読み取りアンテナ９０２に接続されて読み取りアンテナ９０２で読み取られた情報を処理する無線ＩＣタグデータ処理手段９０４とにより、センシング装置３０３を構成している。
【００５９】
また、通常の無線ＩＣタグセンサの耐久性は５０〜６０℃程度であるので、読み取りアンテナ９０２の設置位置や無線ＩＣタグ９０３の貼付位置を、５０〜６０℃以上の高温にならない箇所にする必要がある。
【００６０】
重量センサを用いる場合、図１０Ａに示すように、物品１００３を検出したい領域１００１内に重量検出センサ１００２を３カ所に設置する。その領域１００１内に物品１００３が置かれると、各重量検出センサ１００２は、現在の重量値と物品１００３が置かれる前の重量値との差を重量データ処理手段１００４（図１０Ｂ参照）で算出し、その重心位置を物品１００３の位置とする。ただし、複数の物品を同時に置いた場合には、それぞれの物品を区別して位置を求めることはできない。図１０Ｂには、センシング装置３０３の構成の一例を示しており、重量検出センサ１００２と、重量検出センサ１００２に接続されて重量検出センサ１００２で読み取られた重量情報を処理する重量データ処理手段１００４とにより、センシング装置３０３を構成している。
【００６１】
また、取り扱う物品１００３の重量値を記録情報データベース３１６に予め記録しておき、検出された物品１００３の重量値を全ての重量検出センサ１００２の重量変化の合計値と重量データ処理手段１００４で比較することで、その物品１００３が何であるかを識別することができる。ただし、物品同士の重量値の差が、重量センサの検出精度以下の場合には、その区別はできないが、直前に操作された物品の情報（物品のＩＤ情報）や、これらの重量の合計値などから推定することができる。
【００６２】
また、物品の中でも、玉葱や人参などの食材については、包丁で切るなどの加工をすることにより、食材自体に無線ＩＣタグを貼り付け続けることはできなくなり、食材の外観や重量も変化するので、画像センサや重量センサによっても食材の検出は困難になる。そこで、国際公開公報ＷＯ／２００６／０３５７１４（特願２００４−２８０８７３号）に示されるような方法によって、加工した食材を検出するようにしても良い。前記国際公開公報には、加工した食材を、その食材を入れた容器と関連づけて管理する方法が示されているので、このような操作をする限りにおいては、加工した食材を検出することが可能となる。
【００６３】
《検出履歴データベース》
検出履歴データベース３０４は、センシング装置３０３により検出された時刻情報と人１０６のＩＤや位置の情報と物品のＩＤや位置の情報とを記録するものである。検出履歴データベース３０４への記録のタイミングは、一定時間（例えば１秒）間隔で行う。また、検出履歴データベース３０４への記録のタイミングは、一定距離（例えば１０センチメートル）だけ変化する毎に行うようにしてもよい。すなわち、人１０６や物品の位置が、現在の位置から一定距離（例えば１０センチメートル）だけ変化したとき（すなわち、現在の位置から一定距離（例えば１０センチメートル）だけ変化したことをセンシング装置３０３で検出したとき）に、人１０６のＩＤ又は位置の情報と物品のＩＤ又は位置との情報を時刻取得手段３０１から取得した時刻情報と対応付けて検出履歴データベース３０４に記録し、さらに記録した時点での人１０６又は物品の位置から、再度、一定距離だけ変化したとき（すなわち、記録した時点での位置から一定距離（例えば１０センチメートル）だけ変化したことをセンシング装置３０３で検出したとき）に、時刻情報と人１０６のＩＤ又は位置の情報と物品のＩＤ又は位置とを検出履歴データベース３０４に記録する、というように、繰り返して前記情報を記録するようにしても良い。
【００６４】
図１１に記録される情報の例を示す。
【００６５】
図１１において、人検出履歴情報１１０１は、少なくとも、人１０６のＩＤの情報１１０２（以下、単に「ＩＤ１１０２」と称する。）、人の位置の情報１１０３（二次元座標）（以下、単に「位置１１０３」と称する。）、時刻の情報１１０４（以下、単に「時刻１１０４」と称する。）の項目を持っている。
【００６６】
人検出履歴情報１１０１において、ＩＤ１１０２は、例えば、人１０６のＩＤの情報を記録しておく。センシング装置３０３によって人１０６のＩＤの情報が識別されなかった場合には、空欄（情報無し）にしておく。位置１１０３は、図４に示したような予め決めたＸＹ座標系（床面上での直交する２つのＸＹ軸による２次元座標系）に従って、前記センシング装置３０３によって検出された位置座標を記録する。時刻１１０４は、前記センシング装置３０３から出力される時刻であって、かつ、センシング装置３０３によってＩＤ１１０２を検出した時刻を人検出履歴情報１１０１として検出履歴データベース３０４に蓄積（記録）する。
【００６７】
人１０６の移動軌跡が分かるように、同じＩＤの情報を時刻の順に並べておくと良い。なお、同じＩＤの情報を時刻順に並べる際に、ＩＤが空欄のデータは、例えば図１１の「太郎」か「花子」のどちらの表に記憶すべきかを決定する必要があります。そのときは、例えば、ＩＤが検出されなかった時刻の前後の時刻のデータにおいて、検出されたＩＤの位置と近い方の表に格納すればよい。また、人１０６がキッチンルーム１００内からキッチンルーム１００外に移動して、前記センシング装置３０３が人１０６を検出できなくなった場合には、人検出履歴情報１１０１に、人１０６がキッチンルーム１００内に存在していないことを示す情報を記録する。例えば、位置１１０３の項目に、監視領域外の位置座標（例えば、監視領域外の位置座標を示す（−１［ｃｍ］，−１［ｃｍ］）の位置座標）を記録することで、これ（人１０６がキッチンルーム１００内に存在していないことを示す情報）を表現する。
【００６８】
同様に、物品検出履歴情報１１０５には、少なくとも物品のＩＤ１１０６と物品の位置１１０７（座標）と時刻１１０８との項目を持つ。ＩＤ１１０６としては、物品のＩＤの情報を記録しておく。位置１１０７としては、図４に示したような予め決めたＸＹ座標系（床面上での直交する２つのＸＹ軸による２次元座標系）に従って、前記センシング装置３０３によって検出された位置座標を記録する。物品の場合、同じ２次元座標でも、例えば、調理台１０８の上と収納棚１１２の中のように異なる所にあることもあり得るので、これを区別できるように、３次元座標系（床面上での直交する２つのＸＹ軸及びＸＹ軸に直交するＺ軸による３次元座標系）の方が好ましい。時刻１１０８としては、前記センシング装置３０３が検出した時刻を記録する。
【００６９】
前記人検出履歴情報１１０１と同様に、物品の移動軌跡が分かるように、同じＩＤの情報を時刻の順に並べておくと良い。また、物品がキッチンルーム１００内からキッチンルーム１００外に持ち出されて、前記センシング装置３０３が物品を検出できなくなった場合、物品検出履歴情報１１０５に、物品がキッチンルーム１００内に存在していないことを示す情報を記録する。例えば、位置１１０７の項目に、監視領域外の位置座標（例えば、監視領域外の位置座標を示す（−１［ｃｍ］，−１［ｃｍ］，−１［ｃｍ］）の位置座標）を記録することで、これ（物品がキッチンルーム１００内に存在していないことを示す情報）を表現する。
【００７０】
さらに、制御手段３０２から取得したロボットアーム１０２の先端部の現在位置情報（手先位置）及びロボットアーム１０２の根元部位置情報は、例えば、図１１の１１０９に示すように、それぞれの位置情報と時刻情報を記録する。
【００７１】
《物品把持判定手段》
物品把持判定手段３０５は、センシング装置３０３で検出されて検出履歴データベース３０４に記録された情報を基に、システムキッチン１０１の上面に置かれていた物品を人１０６が把持したことを判定するものである。この判定結果を基に、情報を出力するタイミングを情報出力装置３１４で決定する。つまり、システムキッチン１０１の上面の物品を人１０６が把持した後、人１０６は何らかの操作を行い、その操作終了後に、人１０６が物品をシステムキッチン１０１の上面などに置くのが一般的である。そこで、本発明の前記実施形態にかかる物品管理システムでは、この物品を把持してシステムキッチン１０１の上面から持ち上げたタイミングで、人１０６に対して情報を情報出力装置３１４から出力し、物品の移動不適切場所情報（物品を移動するのに不適切な場所の情報）を人１０６に提示する。
【００７２】
前記センシング装置３０３として、物品を検出するために超音波タグセンサを用いている場合、超音波タグセンサによる検出結果から物品のＩＤ情報と３次元位置とが得られるので、物品が鉛直方向の上向きに移動したことを超音波タグセンサで検出したら、人１０６が物品を把持したこと及びその物品のＩＤ情報を物品把持判定手段３０５で判定できる。
【００７３】
また、センシング装置３０３として、物品を検出するために重量センサを用いている場合、物品が人１０６により持ち上げられると、重量センサが検出する重量値は減少するので、人１０６が物品を把持したことを物品把持判定手段３０５で判定することができる。ただし、この場合、物品のＩＤ情報までは重量センサでは検出できないので、物品のＩＤ情報を検出可能な他のセンサと組み合わせて使用することになる。
【００７４】
《作業手順データベース》
作業手順データベース３０６は、人１０６とロボットアーム１０２とが協調して行う協調作業の各工程の内容とその順番の情報を予め記録したものである。図１２Ａ〜図１２Ｃに、作業手順データベース３０６に記録された情報の例を示す。
【００７５】
図１２Ａにおいて、作業手順データベース３０６に記録された作業手順データ１２０１は、各工程を実行する順に記録したものであり、人１０６の作業とロボットアーム１０２との協調作業がそれぞれどのような順序で実行され、どのタイミングで協調作業を行うかが対応付けられて記述されている。各工程の詳細な内容は、例えば、図１２Ｂの工程データ１２０２又は図１２Ｃの工程データ１２１２のように記録されている。何も作業を行わない時間は、待機時間とする。人１０６とロボットアーム１０２との協調作業は、同じ時間に並べて記述する。
【００７６】
より具体的には、図１２Ａの作業手順データ１２０１は、人１０６は、「工程Ａ」→「工程Ｂ」→「工程Ｃ」→「工程Ｄ」の順に作業し、ロボットアーム１０２は「工程ｉ」→「工程ｉｉ」の順に作業することを示している。また、ロボットアーム１０２は、人１０６が「工程Ａ」と「工程Ｂ」の作業中は何も作業を行わずに待機しているとともに、人１０６が「工程Ｃ」の作業中も何も作業を行わずに待機している。同様に、人１０６は、ロボットアーム１０２が「工程ｉ」の作業中は、何も作業を行わずに待機している。「工程Ｄ」と「工程ｉｉ」は人１０６とロボットアーム１０２の協調作業を表しており、同じ時間に作業するので、両者を接続している（両工程を接続することを指示する情報が記録されている）。
【００７７】
作業手順データ１２０１の人１０６の作業又はロボットアーム１０２の作業の中で、入れ替え可能な工程が存在する場合には、例えば、図１３Ａに示した人１０６の作業の作業手順データ１３０１のように、実行される可能性のある複数の作業手順に分岐できるように記述する。例えば、人１０６の工程において、図１３Ａの作業手順データ１３０１では、「工程Ｅ」と「工程Ｆ」が入れ替え可能であり、「工程Ｄ」→「工程Ｅ」→「工程Ｆ」→「工程Ｇ」の順に作業するか、又は、「工程Ｄ」→「工程Ｆ」→「工程Ｅ」→「工程Ｇ」の順に作業するかのいずれかであることを示している。このような工程Ｅ及び工程Ｆの具体例としては、包丁で玉葱を切る工程と、包丁で人参を切る工程とがある（図１３Ｂ参照）。
【００７８】
作業手順データ１２０１の工程Ａの工程データ１２０２としては、図１２Ｂに示すように、工程のＩＤの情報１２０３と、種別の情報１２０４と、操作物品の情報１２０５と、移動先の情報１２０６と、所要時間の情報１２０７と、作業場所の情報１２０８との項目を少なくとも持つことを示している。ＩＤの情報１２０３には、工程を識別するためのＩＤを記録しておく。図１２Ｂでは、ＩＤとして「Ａ」が記録されている。種別の情報１２０４には、この工程が人１０６によって行われるか、ロボットアーム１０２によって行われるかの種別の情報を記録しておく。図１２Ｂでは、種別の情報として「人」が記録されている。操作物品の情報１２０５には、この工程によって取り扱われる（操作対象となる）物品のＩＤ情報を記録しておく。図１２Ｂでは、操作物品の情報として「フライパン」（のＩＤ情報）が記録されている。移動先の情報１２０６には、前記操作物品の情報１２０５にかかる物品がこの工程によってどこに移動されるか、つまり、この工程が行われた後に置かれる場所の情報（例えば位置座標など）を記録しておく。図１２Ｂでは、移動先の情報として「コンロ」（のＩＤ情報）が記録されている。所要時間の情報１２０７の項目には、この工程を行うのにかかる時間を記録しておく。図１２Ｂでは、所要時間の情報として「４０秒」が記録されている。作業場所の情報１２０８には、この工程を行う場所の位置座標を記録しておく。この工程中に人１０６の移動を伴う場合には代表点の位置座標、例えば移動範囲の中心位置の位置座標を作業場所の情報１２０８として記録しておけばよい。図１２Ｂでは、作業場所の情報として「（Ｘ１，Ｙ１）」が記録されている。
【００７９】
図１２Ｂに示した工程データ１２０２は、さらに、作業順序の情報１２０９と、協調作業の情報１２１０と、中断の情報１２１１との項目を追加しても良い。作業順序の情報１２０９には、図１３Ａに示したような入れ替え可能な工程が存在した場合に、その順序と確率を作業手順データベース３０６に記録しておく。図１３Ｂに工程データの例１３０２を示しており、順序情報は図１３Ｃを参照しており、工程Ｅ→工程Ｆへの作業順序の確率は７０％であり、工程Ｆ→工程Ｅへの作業順序の確率は３０％であることを意味している。協調作業の情報１２１０には、人１０６とロボットアーム１０２が協調して行う協調作業工程のとき、その対応を記録しておく。例えば、図１２Ｃに示した、作業手順データ１２０１の工程ｉｉの工程データ１２１２の例のように、ロボットアーム１０２の「工程ｉｉ」の協調作業の情報１２１０の項目には、対応する人１０６の「工程Ｄ」が記録されている。中断の情報１２１１には、その工程を行っている途中で、中断が可能か否かを記録しておく。中断が不可能な工程とは、例えば、天ぷらを揚げる等のように途中で手を離すことができない工程である（図１２Ｃの工程ｉｉ参照）。また、中断可能な工程とは、例えば、包丁で野菜を切る工程であり、途中で手を止めて包丁を置き、物品の運搬などが可能な工程である（図１３Ｃの工程Ｅ及び工程Ｆ参照）。
【００８０】
《作業進捗管理手段》
作業進捗管理手段３０７は、前記物品把持判定手段３０５の結果と前記作業手順データベース３０６を参照して、時刻取得手段３０１から取得した現在時刻を基に、現在の作業が、前記作業手順データ１２０１の中のどの工程まで進捗しているか（言い換えれば、工程データの作業完了項目などの作業手順の進捗の情報）を判定するものである。また、時刻取得手段３０１から取得する時刻を基に、各工程の作業に要した時間を作業進捗管理手段３０７で算出し、以降の作業において、人１０６とロボットアーム１０２の行う工程の対応を作業進捗管理手段３０７で管理する（言い換えれば、作業工程又は作業手順の進捗の情報を管理する）ものである。すなわち、作業進捗管理手段３０７では、その工程の完了の有無と、各工程が実際にかかった時間が予定時間から大幅に前後する場合は、以下に図１４Ａなどを使って説明するように、以降の工程（特に人１０６とロボットアーム１０２が協調して行う工程）の開始時間を調整する。
【００８１】
図１４Ａに示した工程データの例１４０１のように、工程データに、作業完了の情報１４０２の項目を作業進捗管理手段３０７で追加して作業手順データベース３０６に記録する。作業完了の情報１４０２の項目には、作業進捗管理手段３０７により、最初に「０」を記録しておき、その工程が完了したら、「０」の代わりに「１」を作業進捗管理手段３０７により作業手順データベース３０６に記録する。工程の完了は、センシング装置３０３により検出されて検出履歴データベース３０４に記録された検出情報に基づき、その工程で利用される物品が、すべて、人１０６の手を離れてシステムキッチン１０１上に置かれたと作業進捗管理手段３０７で判定したとき、工程が完了したと作業進捗管理手段３０７で判定する。すべての物品がシステムキッチン１０１上に置かれたことの作業進捗管理手段３０７による判定は、前記物品把持判定手段３０５と同じように判定する。
【００８２】
すなわち、前記センシング装置３０３として、物品を検出するために超音波タグセンサを用いている場合、物品の３次元位置が得られるので、高さ方向の位置座標値がシステムキッチン１０１の上面と一致したことを作業進捗管理手段３０７で検出したら、人１０６が物品を置いたことにより工程が完了したと、作業進捗管理手段３０７により判定して作業手順データベース３０６に記録する。
【００８３】
また、センシング装置３０３として、物品を検出するために重量センサを用いている場合、物品がシステムキッチン１０１の上面に置かれると重量センサが検出する重量値は増加するので、その増加を作業進捗管理手段３０７で検出すれば、人１０６が物品をシステムキッチン１０１の上面に置いたことにより、工程が完了したと、作業進捗管理手段３０７により判定して作業手順データベース３０６に記録する。
【００８４】
作業進捗管理手段３０７は、前記物品把持判定手段３０５によって得られた、把持された物品のＩＤ情報を基に、作業手順データベース３０６の前記作業手順データ１２０１の中から現在の工程を求める。これは、作業進捗管理手段３０７により、作業手順データベース３０６内の作業手順データのうち、作業完了の情報１４０２の項目が「０」である工程データを、早い時間順（図１２Ａの工程データ１２０１を例にすると左から右の順）に探索し、操作物品の情報（すなわち、その工程で操作する物品のＩＤ情報）１２０５が、前記把持された物品のＩＤ情報と一致する工程を、現在の工程とするものである。
【００８５】
前記操作物品の情報１２０５にかかる前記把持された物品が、把持されてから置かれるまでの時間を作業進捗管理手段３０７で算出し、これを現在の工程の所要時間とする。現在の工程データ１２０１に記録されている所要時間の情報１２０７にかかる所要時間と、今回求めた現在の工程の所要時間が異なるか否かを作業進捗管理手段３０７で判断し、異なると作業進捗管理手段３０７で判断した場合、必要に応じて、このずれを作業進捗管理手段３０７により修正し、人１０６とロボットアーム１０２の行う工程が、どのタイミングで並行して行われるかを作業進捗管理手段３０７により正しく対応付けることができる。すなわち、前記説明したように、作業進捗管理手段３０７では、以下に説明するように、ずれを修正する場合には待機時間を作るなどして、以降の工程（特に人１０６とロボットアーム１０２が協調して行う工程）の開始時間を調整する。工程が前後しない程度の短時間（例えば、１秒以下の時間）のずれであると作業進捗管理手段３０７が判断すれば、障害物品除去時間算出手段３１１における障害物品を除去する時間の算出結果に影響しないので、作業進捗管理手段３０７により前記ずれを修正する必要はない。
ただし、人１０６とロボットアーム１０２の協調作業である工程は、同じ時間に行われなければならないので、作業進捗管理手段３０７により修正して異なる時間に行われるようにずらすことはできない。
【００８６】
作業進捗管理手段３０７により前記ずれを修正する具体的な手法について説明する。図１５Ａ〜図１５Ｄに、作業手順データベース３０６に記録されている情報の例を示す。作業手順データベース３０６において、図１５Ａの作業手順データ１５０１に対して、図１５Ｂの工程データ１５０２が記録されていたとする。人１０６は、「工程Ａ」→「工程Ｂ」→「工程Ｃ」→‥‥→「工程Ｄ」→「工程Ｅ」の順に作業し、ロボットアーム１０２は「工程ｉ」→「工程ｉｉ」の順に作業する。「工程Ｅ」と「工程ｉｉ」は人１０６とロボットアーム１０２の協調作業であるので、同じ時間に作業が行われる。
【００８７】
このとき、「工程Ａ」の実際の所要時間が１５０秒であったとすると、「工程Ａ」の所要時間の増加分（この例では、予め設定された所要時間は１２０秒であるため、増加分は、１５０−１２０＝３０秒）だけ、「工程Ｂ」以降の人１０６の作業の時間とロボットアーム１０２の作業の時間がずれることになってしまう。ここで、「工程Ｅ」と「工程ｉｉ」は協調作業であるので、これらの工程は同時に行われなければならない。従って、「工程Ｅ」と「工程ｉｉ」の開始時間を合わせるため、図１５Ｃの作業手順データ１５０３のように、「工程Ａ」の所要時間の増加分を作業進捗管理手段３０７により求めたのち、この増加分だけ、ロボットアーム１０２の作業の「待機１」の時間を３０秒だけ、作業進捗管理手段３０７により増加する。
【００８８】
また、協調作業以前の工程（「工程Ｃ」や「工程ｉ」など）が、人１０６の作業とロボットアーム１０２の作業の時間がずれても問題が無ければ（協調作業以前の工程において、人１０６の作業とロボットアーム１０２の作業の時間がずれても問題が無いという情報が作業手順データベース３０６に予め記録されておれば）、図１５Ｄの作業手順データ１５０４のように、「工程Ａ」の所要時間の増加分だけ、作業進捗管理手段３０７により「待機３」の時間を３０秒増加するようにしても良い。
【００８９】
さらに、前記したように「工程Ａ」の所要時間の増加分が３０秒であるとき、作業進捗管理手段３０７により、「待機１」の時間を１５秒増加し、かつ、「待機３」の時間を１５秒増加する、というように複数の待機時間に分けて、トータルで増加時間が等しくなるようにしても良い。元の作業手順データに、待機する工程が存在しなかった場合は、作業を行う工程の間に、増加時間分だけ、待機する工程を作業進捗管理手段３０７により追加するようにしてもよい。
【００９０】
《作業手順データベース更新手段》
作業手順データベース更新手段３０８は、センシング装置３０３により検出されたセンシング情報に基づいて作業手順データベース３０６に記録されている工程データ１２０２の項目の情報をそれぞれ更新するものである。
【００９１】
例えば、図１４Ａに示した工程データの例１４０１のように、工程データに実行回数の情報１４０３の項目を作業手順データベース更新手段３０７により追加して作業手順データベース３０６に記録する（図１４Ｂ参照）。これは、具体的には、この実行回数の情報１４０３の項目には、工程が実行された回数を作業手順データベース更新手段３０７により記録しておく。作業手順データベース更新手段３０７は、工程が実行されると、実行された工程の実行回数の情報１４０３の数値に「１」を加える。実行回数は、人ＩＤごとに集計する。実行回数は、「作業順序の確率」の計算に使う。例えば、図１４Ａの作業順序の確率を再計算する際に使用する。すなわち、人が「工程Ｅ」→「工程Ｆ」の順で作業をするか、「工程Ｆ」→「工程Ｅ」の順で作業をするかは、人毎に異なるためである。作業順序の確率は、以下の手順で計算する。すなわち、工程ＩＤがＥ（「工程Ｅ」）の実行回数＝１０、「工程Ｅ」→「工程Ｆ」の順序の確率＝７０％、「工程Ｆ」→「工程Ｅ」の順序の確率＝３０％のとき、次に、「工程Ｅ」→「工程Ｆ」の順序ならば、確率は８／１１、３／１１となる。複数の工程が存在しないデータについては、実行回数の管理は不要である。
【００９２】
また、作業手順データベース更新手段３０８は、工程データ１２０２に記録されている操作物品の情報１２０５にかかる物品が、把持されてから置かれるまでの時間を算出し、これを工程の所要時間とする。作業手順データベース更新手段３０８により、すでに記録されている所要時間の情報１２０７にかかる所要時間と、今回算出した所要時間を足し合わせて２で割ることにより、平均の所要時間を算出し、算出した平均の所要時間を新たな所要時間の情報１２０７として、作業手順データベース更新手段３０８により作業手順データベース３０６に記録する。
【００９３】
ここで、前記物品が置かれたことは、前記物品把持判定手段３０５と同様の処理により、作業手順データベース更新手段３０８で判定できる。例えば、センシング装置３０３として、物品を検出するために重量センサを用いている場合、重量センサが配置された領域に物品が置かれると、重量センサが検出する重量値は増加するので、重量センサからの重量値の増加情報を基に、人１０６が物品を置いたことを作業手順データベース更新手段３０８で判定することができる。
【００９４】
また、工程の作業を実行しているときの人１０６の位置を作業手順データベース更新手段３０８で求め、この求められた位置の座標を工程の作業場所とする。この工程中に人１０６の移動を伴う場合には、代表点（例えば、移動範囲の中心位置）の座標を作業場所とする。作業手順データベース更新手段３０８により、すでに記録されている作業場所の情報１２０８にかかる位置座標と、今回求めた作業場所の位置座標を足し合わせて２で割ることにより、平均座標を求め、求めた平均座標を新たな作業場所の情報１２０８として、作業手順データベース更新手段３０８により作業手順データベース３０６に記録する。
【００９５】
また、図１３Ａ，図１３Ｂに示したような入れ替え可能な工程Ｅ，Ｆが存在した場合に、実際に工程が行われた方の工程について、図１４Ｂのように実行回数を作業手順データベース３０６に記録する。作業手順データベース更新手段３０８により、この実行回数を使って、作業順序の確率を再計算し、作業手順データベース３０６に記録する。具体的には、図１４Ｂのように、ＩＤ  E→Ｆ（「工程Ｅ」→「工程Ｆ」）の実行回数＝１０、順序Ｅ→Ｆ（「工程Ｅ」→「工程Ｆ」）の確率＝７０％、順序Ｆ→Ｅ（「工程Ｆ」→「工程Ｅ」）確率＝３０％、のとき、次に順序Ｅ→Ｆ（「工程Ｅ」→「工程Ｆ」）ならば、確率は８/１1、３/１１と計算し、作業手順データベース更新手段３０８により図１４Ｂの作業順序を記録する。
【００９６】
《属性データベース》
属性データベース３１５は、人１０６とロボットアーム１０２とが協調して複数の作業工程を含む作業を行うことができる前記環境内の各種データ（情報）（前記環境内に存在する物品、ロボット、及び人の固有の情報（作業により変化しない、属性に関する情報）を記録するものである。図１６Ａ〜図１６Ｃに示すように、属性データベース３１５としては、一例として、物品データ２３０１と、ロボットデータ２３０２と、人データ２３０３とを有している。
【００９７】
物品データ２３０１は、少なくとも各物品のサイズデータを有している。サイズデータとは、物品の外接直方体の縦、横、高さの寸法値で表された情報である。例えば、図１６Ａでは、サラダ油入れは、縦７ｃｍ、横７ｃｍ、高さ２０ｃｍのサイズデータを有する物品データ２３０１として記録されている。
【００９８】
ロボットデータ２３０２は、少なくとも、本体根元部１０２ｂの初期の位置座標（０，０，０）と、各ロボットアーム１０２の本体根元部１０２ｂの移動速度データと（ロボットアーム１０２の本体根元部１０２ｂが移動する場合に必要。）、アームの全長サイズデータと、アームのハンド部１０２ａの動作速度データと、ロボットアーム１０２のハンド部１０２ａが物品を把持するのに要する把持所要時間データと、を有している。また、後述するロボットアーム１０２と物品との干渉判定のため、ロボットアーム１０２の関節の数と、ロボットアーム１０２のリンクのサイズ（長さ、太さ）も有する（図示は省略）。例えば、図１６Ｂでは、ＩＤ番号が００００１のロボットアーム１０２は、本体の移動速度３５ｃｍ／ｓと、アームの全長サイズ６０ｃｍと、アームのハンド部の動作速度２５ｃｍ／ｓと、把持所要時間３ｓとを有するロボットデータ２３０２として記録されている。
【００９９】
人データ２３０３は、前記環境内に入る可能性がある複数の人１０６について、少なくとも各人の手の長さデータと、各人の移動速度データと、各人の手の移動速度データとを有している。例えば、図１６Ｃでは、人１０６の一例である「花子さん」は、手の長さ６８ｃｍ、移動速度６０ｃｍ／ｓ、手の移動速度３０ｃｍ／ｓを有する人データ２３０３として記録されている。
【０１００】
これらのデータは、各物品、ロボットアーム１０２、人１０６に応じて属性データベース３１５に入出力手段３１７により予め記録しておく。
【０１０１】
《環境マップ》
環境マップデータベース３１２は、前記環境の中の、特に作業に用いられる物品が置かれる領域について、その見取り図がマップ情報として記録されている。また、マップ管理手段３１３は、後述の障害物品除去時間算出手段３１１によって算出された障害物品除去時間を障害物品除去時間算出手段３１１から取得し、取得した障害物品除去時間を各場所（物品が置かれると想定されるとして指定された場所）に対応付けて環境マップデータベース３１２に記録する。すなわち、分割した全ての場所について障害物品除去時間を算出する。具体的には、図１７Ｂのように、分割した全ての場所についての障害物品除去時間を算出し、図１７Ｃの環境マップデータベース３１２で管理する。図１７Ａに、キッチンルーム１００における環境マップデータベース３１２に記録されたマップ情報の例を示す。図１７Ｃの環境マップデータベース３１２には、障害物品除去時間と各場所とが、どのように対応付けられているかがわかる例を示す。図１７Ｃの環境マップデータベース３１２では、矩形に分割した場所を識別するＩＤ毎に障害物品除去時間を管理している。なお、この環境マップデータベース３１２の場所の情報は、一例として、分割した矩形の対角位置の情報を格納している。なお、これらの情報は、入出力手段３１７により、環境マップデータベース３１２に、あらかじめ記録しておいても良い。
【０１０２】
《マップ管理手段》
マップ管理手段３１３は、前記環境マップデータベース３１２に記録されかつ物品が置かれると想定する領域を、複数個の場所に分割して、分割された各場所の位置情報（例えば２次元又は３次元位置座標情報）を、作業手順データベース３０６の工程データに基づきロボットアーム１０２により把持した物品を置く位置として、後述のアクセス判定手段３１０に与える。例えば、各分割領域の中心点の座標を各場所の位置情報として、マップ管理手段３１３からアクセス判定手段３１０に与える。さらに、後述の障害物品除去時間算出手段３１１が算出した障害物品除去時間をマップ管理手段３１３が取得したのち、マップ管理手段３１３から前記環境マップデータベース３１２に与えて、障害物品除去時間を各場所の位置情報に対応付けて記録できるようにするものである。この処理は、前記物品把持判定手段３０５において、人１０６が物品を把持したと判定されたときに行われる。
【０１０３】
マップ管理手段３１３は、前記分割した複数個の各場所のサイズを調整することができる。粗く分割する（すなわち、各場所のサイズを大きくする）ことで、おおまかな状況しか把握できないが、分割された場所の数が少なくなるため、高速に処理できる。また、細かく分割する（すなわち、各場所サイズを小さくする）ことで、分割された場所の数が多くなるため、処理に時間を要するが、詳細な状況を把握できる。マップ管理手段３１３は、物品のサイズに合わせて場所のサイズを決定しても良い。例えば、物品のサイズが小さければ、場所のサイズも小さくする一方、物品のサイズが大きければ、場所のサイズも大きくすることができる。
【０１０４】
《アクセス判定手段》
アクセス判定手段３１０は、前記マップ管理手段３１３により分割されて位置情報が与えられた複数の場所のうちの１つの場所に、人１０６が前記把持した物品を置いたと想定したとき、アクセス困難な状況となるか否かを判定するものである。
【０１０５】
ここで、アクセス困難な状況とは、人１０６が物品（すなわち、障害物品）を任意の場所に置いたことにより、ロボットアーム１０２がその障害物品の陰になってしまった位置にある物品を取ろうとしたときに、障害物品が邪魔になってしまうこと、又は、人１０６が障害物品を置いた位置がロボットアーム１０２の可動範囲外であることを指している。これにより、前者の場合、まず、邪魔な物品（すなわち、障害物品）をロボットアーム１０２により移動させるという無駄な時間が発生してしまい、後者の場合にも、ロボットアーム１０２にはその障害物品を扱うことができないので、人１０６がその障害物品を取りに行かなければならないことになり、無駄な時間が発生してしまう。
【０１０６】
アクセス判定手段３１０により、ロボットアーム１０２の本体根元部１０２ｂの固定位置の位置座標（具体的には、図１１の検出履歴データベース３０４のロボットアーム１０２の本体根元部１０２ｂの位置）と前記属性データベース３１５に記録されたロボットアーム１０２の全長サイズデータを参照して、人１０６が障害物品を置いた位置がロボットアーム１０２の可動範囲内か否かを判定する。例えば、図１８Ａに示した物品１７０１は可動範囲外である。すなわち、図１８Ａにおいて、ロボットアーム１０２の可動範囲を斜線の半円領域で示しており、物品１７０１が置かれた位置は、斜線の半円領域外であるため、アクセス判定手段３１０により、人１０６が障害物品を置いた位置がロボットアーム１０２の可動範囲外であると判定する。なお、ロボットアーム１０２の可動範囲を想定するときのロボットアーム１０２の本体の固定位置の位置座標のロボットアーム位置検出履歴情報の一例を図１１の１１０９に示す。ここでは、ロボットアーム位置検出履歴情報１１０９として、ロボットアーム１０２の先端部のハンド部１０２ａの位置に加えて、ロボットアーム１０２の本体の固定位置の位置座標（ロボットアーム１０２の本体根元部１０２ｂの位置）を時刻毎に示している。
【０１０７】
また、アクセス判定手段３１０により、前記作業手順データベース３０６を参照して、人１０６が前記物品をある場所に置いたとき、その場所が、以降の工程でロボットアーム１０２が動かすべき物品の移動先となっているか否か（物品を置いた場所の位置情報と物品の移動先の位置情報とが一致しているか否か）を判定する。例えば、図１８Ｂに示すように、ロボットアーム１０２のハンド部１０２ａが把持した物品１７０４を、場所１７０５に移動しようとすると、物品１７０６が邪魔となる。これは、以降の工程でロボットアーム１０２が動かすべき物品の移動先の位置情報をアクセス判定手段３１０により前記作業手順データベース３０６を参照して取得するとともに、取得した物品の移動先の位置情報と、人１０６が前記物品をある場所に置いたときの場所の位置情報をアクセス判定手段３１０により検出履歴データベース３０４を参照して取得し、それぞれ取得した物品の移動先の位置情報と物品をある場所に置いたときの場所の位置情報とをアクセス判定手段３１０により一致するか否かを判定する。この結果、両者の位置情報が一致すると判定し、ロボットアーム１０２のハンド部１０２ａが把持した物品１７０４を、場所１７０５に移動しようとすると、物品１７０６が邪魔となることがアクセス判定手段３１０により判定できる。
【０１０８】
また、図１８Ｃに示すように、アクセス判定手段３１０により、前記作業手順データベース３０６を参照して、以降の工程でロボットアーム１０２が把持する予定の物品を、ロボットアーム１０２で把持するために、ロボットアーム１０２を作動するとき、前記物品がロボットアーム１０２と干渉するか否かを、アクセス判定手段３１０により、属性データベース３１５に記録された物品データ２３０１とロボットデータ２３０２と検出履歴データベース３０４に記録されたロボットアーム１０２が把持する予定の物品の位置座標とロボットアーム１０２の位置座標とを参照して求めることもできる。以下に詳細に説明する。
【０１０９】
図１９に、アクセス判定手段３１０による干渉判定のフローを示す。
【０１１０】
また、図２０にロボットアーム１０２が物品を動かそうとするときの様子を示す。ロボットアーム１０２は、その本体根元部１０２ｂが座標（０，０，０）にあり、間接１０２ｃの数が２、リンク１０２ｄの長さがそれぞれ２０ｃｍであるとする。これらの情報は、属性データベース３１５にロボットデータ２３０２として予め記録されている。また、一例として、ロボットアーム１０２により把持して移動させようとする対象物品３００２は、簡単のため、以下の障害物品３００３のサイズよりも極小さな物品（例えば、サイズが１ｃｍ×１ｃｍ×１ｃｍの立方体の物品）であるとし、座標（０，３２，０）の位置に置かれているとする。また、障害物品３００３は、サイズが１６ｃｍ×１６ｃｍ×１６ｃｍの立方体の物品で座標（０，１６，０）の位置（障害物品３００３の平均座標の位置）に置かれているとする。対象物品３００２と障害物品３００３のそれぞれの位置情報はセンシング装置３０３で検出されて検出履歴データベース３０４に記録されており、対象物品３００２と障害物品３００３のそれぞれのサイズは、属性データベース３１５に物品データ２３０１として予め記録されている。そして、前記作業手順データベース３０６を参照して、以降の工程でロボットアーム１０２が物品を把持する予定であることをアクセス判定手段３１０により判定したとき、前記属性データベース３１５に予め記録された物品データ２３０１とロボットデータ２３０２と検出履歴データベース３０４に予め記録された対象物品３００２と障害物品３００３のそれぞれの位置情報とをアクセス判定手段３１０により参照してそれぞれ取得する。
【０１１１】
まず、ステップＳ２９０１で、アクセス判定手段３１０により作業手順データベース３０６及び検出履歴データベース３０４を参照して、ロボットアーム１０２の先端部（ハンド部）の目標位置の座標（把持対象物の座標と）を求める。具体的には、アクセス判定手段３１０により作業手順データベース３０６を参照して、把持する対象物品３００２のＩＤ情報を取得し、取得したＩＤ情報にかかる対象物品３００２の現在の位置をアクセス判定手段３１０により検出履歴データベース３０４を参照して取得する。ここでは、検出履歴データベース３０４からアクセス判定手段３１０が、把持する対象物品３００２の位置の座標として（０，３２，０）を得たとする。
【０１１２】
次いで、ステップＳ２９０２で、アクセス判定手段３１０により検出履歴データベース３０４を参照して、センシング装置３０３で検出されて検出履歴データベース３０４に予め記録されているロボットアーム１０２の先端部の現在位置の座標を取得する。次いで、把持する対象物品３００２の位置の座標と、取得したロボットアーム１０２の先端部の現在位置の座標との間のずれベクトルをアクセス判定手段３１０により算出する。具体的には、ロボットアーム１０２の先端部の現在位置の座標を（０，０，４０）とすると、ずれベクトル＝（把持する対象物品３００２の位置の座標）−（ロボットアーム１０２の先端部の現在位置の座標）＝（０，３２，０）−（０，０，４０）＝（０−０，３２−０，０−４０）＝（０，３２，−４０）がアクセス判定手段３１０により得られる。なお、ロボットアーム１０２の先端部１１０２ａの現在位置の座標は、センシング装置３０３が制御手段３０２から取得している。
【０１１３】
次いで、ステップＳ２９０３で、前記で求めた、ずれベクトルから、逆運動学により軌道ｑ（ｔ）をアクセス判定手段３１０により決定する（図２１Ｂ参照）。軌道ｑ（ｔ）は、各時間におけるロボットアーム１０２の各関節角度をベクトルとして表したものである。図２１Bは、ロボットアーム１０２の先端部１０２ａの現在位置から目標位置までを直線で繋いだ軌道を示す図である。逆運動学とは、ロボットアーム１０２の先端部の位置が与えられたとき、それを実現するための各関節の角度を求めるものである。前記軌道ｑ（ｔ）は、例えば、ロボットアーム１０２の先端部の現在位置から目標位置までを直線で繋ぐことで得ることができる。
【０１１４】
例えば、ロボットアーム１０２の先端部（ハンド部）１０２ａが対象物品３００２を丁度把持するときの先端部（ハンド部）１０２ａの軌道の様子を図２１Ａに示す。図２１Ａは、ｘ＝０における断面（ｙ−ｚ平面）を表しており、これより、α＝ａｒｃｃｏｓ（１６／２０）＝３６．９°と求まる。よって、１つ目の間接（本体根元部１０２ｂとそれに隣接する基端側のリンク１０２ｄの基端部との関節）の角度θ１＝９０−α＝５３．１°、２つ目の関節（前記基端側のリンク１０２ｄの先端部とその基端側のリンク１０２ｄに隣接する先端側のリンク１０２ｄの基端部との関節）の角度θ２＝２＊α＝７３．８°となる。
【０１１５】
次いで、ステップＳ２９０４で、アクセス判定手段３１０により、時間を微少時間Δｔだけ進める。
【０１１６】
次いで、ステップＳ２９０５で、アクセス判定手段３１０により、前記軌道ｑ（ｔ）に基づいて得られたロボットアーム１０２の各関節角度から、順運動学によりロボットアーム１０２の現在の姿勢を求める。順運動学とは、各関節の角度からロボットアーム１０２の先端部の位置を求めるものである。
【０１１７】
例えば、前記図２１Ａに示した例では、アクセス判定手段３１０により、θ１＝５３．１°とθ２＝７３．８°よりロボットアーム１０２の先端部の位置を求める。まず、図２１Ａに示した位置Ｐ１の座標をアクセス判定手段３１０により求め、次に、先端部の位置Ｐの座標の順にアクセス判定手段３１０により求める。位置Ｐ１の座標は（０，Ｌ１＊ｓｉｎθ１，Ｌ１＊ｃｏｓθ１）＝（０，１６，１２）となり、位置Ｐの座標は（０，１６＋Ｌ２＊ｓｉｎ（θ１＋θ２），１２＋ｃｏｓ（θ１＋θ２））＝（０，３２，０）となる。
【０１１８】
次いで、ステップＳ２９０６で、アクセス判定手段３１０により、衝突検出計算を行う。これは、例えば、属性データベース３１５にそれぞれ格納された、ロボットアーム１０２の３次元形状と、障害物品３００３の３次元形状を、オープンソースの物理計算シミュレータであるＯＤＥ（Ｏｐｅｎ  Ｄｙｎａｍｉｃｓ  Ｅｎｇｉｎｅ）の衝突検出機能によって３次元形状同士が干渉しているかどうかを判定することで、求めることができる。
【０１１９】
ロボットアーム１０２の３次元形状は、リンクと関節の組み合わせで表現する。各リンクは、例えば、円柱によって表現され、円柱の半径と長手軸方向の長さ（円柱の高さ）を指定することで定義できる。
【０１２０】
同様に、障害物品３００３の３次元形状は、例えば、直方体で表現され、縦、横、高さを指定することで定義できる。
【０１２１】
前記衝突検出機能は、２つの物体の接触情報を生成するものである。２つの物体として、ロボットアーム１０２と障害物品３００３を指定し、接触情報として、接触数＝０が返されれば、衝突が検出されていないことになり、接触数として０以外の値が返されれば、衝突が検出されたことになる。
【０１２２】
次いで、ステップＳ２９０７で、アクセス判定手段３１０により、前記衝突検出機能を使用してロボットアーム１０２と障害物品３００３との間で衝突が検出されたか否かを判定し、アクセス判定手段３１０で衝突が検出されれば、ロボットアーム１０２が物品と干渉するとアクセス判定手段３１０により判定して、干渉判定のフローを終了する。アクセス判定手段３１０で衝突が検出されなければ、次のステップＳ２９０８へ進む。
【０１２３】
ステップＳ２９０８で、ロボットアーム１０２の先端部が目標位置へ到達したか否か（検出履歴データベース３０４に記録されたロボットアーム１０２の先端部の現在の位置座標と、ステップＳ２９０１で求められた目標位置の位置座標とが一致しているか否か）をアクセス判定手段３１０により判定し、目標位置へ到達していないとアクセス判定手段３１０により判定されれば、ステップＳ２９０４から繰り返す。目標位置へ到達しているとアクセス判定手段３１０により判定されれば、ロボットアーム１０２は物品と干渉しないとアクセス判定手段３１０により判定して、干渉判定のフローを終了する。
【０１２４】
ここでは、簡単のためにロボットアーム１０２の本体根元部１０２ｂの位置は固定されているとして考えたが、ロボットアーム１０２が移動可能な場合には、それぞれの場所において判定する必要がある。
【０１２５】
図２２にアクセス判定手段３１０による、アクセス困難な状況となるか否かの処理フローを示す。
【０１２６】
指定された場所を「場所ａ」とし、ロボットアーム１０２により把持して、これから置こうとしている物品を「物品Ａ」とする。指定された場所とは、前記マップ管理手段３１３により与えられる場所である。
【０１２７】
まず、ステップＳ１６０１で、作業手順データベース３０６の工程データ及び属性データベース３１５のロボットデータ２３０２に基づきロボットアーム１０２により把持した物品を置く位置としてマップ管理手段３１３で指定された置き場所（図１７Cの全ての場所を順番に指定した置き場所）が、ロボットアーム１０２の可動範囲内か否かをアクセス判定手段３１０により判定する。アクセス判定手段３１０により可動範囲内であると判定されればステップＳ１６０３へ進み、アクセス判定手段３１０により可動範囲外であると判定されればステップＳ１６０２へ進む。
【０１２８】
ステップＳ１６０２で、前記作業手順データベース３０６をアクセス判定手段３１０により参照して、前記ロボットアーム１０２に把持した「物品Ａ」が、以降の工程でロボットアーム１０２に把持されるか否かをアクセス判定手段３１０により判定する。以降に把持される工程が存在しなければ、アクセス困難な状況はないとアクセス判定手段３１０により判定して、この処理フローを終了する。以降に把持される工程が存在すれば、可動範囲外に置かれたことによる、アクセス困難な状況があるとアクセス判定手段３１０により判定して、この処理フローを終了する。
【０１２９】
ステップＳ１６０３で、前記作業手順データベース３０６をアクセス判定手段３１０により参照して、以降の工程で、ロボットアーム１０２が把持する物品をアクセス判定手段３１０により抽出し（このときの工程を「工程Ｋ」とし、物品を「物品Ｂ」とする。）、その「物品Ｂ」を把持するためにロボットアーム１０２を、制御手段３０２の制御の下に各関節の駆動モータ及び先端部のハンドの開閉モータにより駆動されるとき、先の干渉判定のフローを使用して先に置いた「物品Ａ」がロボットアーム１０２と干渉するか否かをアクセス判定手段３１０により判定する。干渉が有るとアクセス判定手段３１０により判定されれば、ステップＳ１６０４へ進む。干渉が無いとアクセス判定手段３１０により判定されれば、ステップＳ１６０５へ進む。
【０１３０】
ステップＳ１６０４で、前記作業手順データベース３０６をアクセス判定手段３１０により参照して、前記干渉が発生する「工程Ｋ」の以前に、前記ロボットアーム１０２により把持した「物品Ａ」を、もう一度使う工程が存在するか否かをアクセス判定手段３１０により判定する。そのような、もう一度使う工程が存在するとアクセス判定手段３１０により判定されたならば、ステップＳ１６０５へ進む。そのような工程が存在しないとアクセス判定手段３１０により判定されれば、邪魔な物品によるアクセス困難な状況があるとアクセス判定手段３１０により判定して、この処理フローを終了する。
【０１３１】
ステップＳ１６０５で、前記作業手順データベース３０６をアクセス判定手段３１０により参照して、以降の工程で、ロボットアーム１０２が把持した物品の移動先が「場所ａ」である工程をアクセス判定手段３１０により検索し、そのような工程が存在するとアクセス判定手段３１０により判定されれば（この工程を「工程Ｌ」とし、物品を「物品Ｃ」とする。）、ステップＳ１６０６へ進む。そのような工程が存在しないとアクセス判定手段３１０により判定されれば、アクセス困難な状況はないとアクセス判定手段３１０により判定して、この処理フローを終了する。
【０１３２】
ステップＳ１６０６で、前記作業手順データベース３０６をアクセス判定手段３１０により参照して、前記移動先が「場所ａ」である工程Ｌ以前に、前記ロボットアーム１０２により把持した「物品Ａ」をもう一度使う工程が、存在するか否かをアクセス判定手段３１０により判定する。そのような工程が存在するとアクセス判定手段３１０により判定されたならば、アクセス困難な状況はないとアクセス判定手段３１０により判定して、この処理フローを終了する。そのような工程が存在しないとアクセス判定手段３１０により判定されれば、邪魔な物品によるアクセス困難な状況があるとアクセス判定手段３１０により判定して、この処理フローを終了する。
【０１３３】
《障害物品除去時間算出手段》
障害物品除去時間算出手段３１１は、前記アクセス判定手段３１０においてアクセス困難な状況が発生すると判定された場合、そのアクセス困難な状況を解消するために要する障害物品除去時間を算出するものである。ここで、障害物品除去時間とは、ロボットアーム１０２の可動範囲外によるアクセス困難な状況の場合には、人１０６がその物品を取りに行ったのち、邪魔な物品を移動させるのに要する時間を意味し、又は、邪魔な物品（障害物品）によるアクセス困難な状況の場合には、人１０６又はロボットアーム１０２が邪魔な物品を移動させるのに要する時間を意味する。
【０１３４】
前者の場合には、人１０６が障害物品を取りに行き、障害物品を邪魔にならない場所に置き直し、元の位置に戻るまでに要する時間を求める。より詳細には、人１０６が、現在位置（開始位置）と、人１０６が障害物品を取ることが可能な位置と、障害物品を邪魔にならない場所に置く位置との間で移動するときの距離を、人１０６の移動速度で割って、これらの位置を移動する時間ｔ１を算出する。さらに、人１０６が、障害物品を邪魔にならない場所に置くとき、手を伸ばして障害物品を置くとき、手を伸ばす距離を手の移動速度で割って、手の移動時間ｔ２を算出する。そして、これらの時間の合計（ｔ１＋ｔ２）が障害物品除去時間となる。
【０１３５】
後者の場合には、人１０６又はロボットアーム１０２が障害物品を取りに行く距離と、障害物品を邪魔にならない場所に置く距離との合計距離を、人１０６の手又はロボットアーム１０２の移動速度で割れば、障害物品除去時間を算出することができる。
【０１３６】
ここで、障害物品除去時間を障害物品除去時間算出手段３１１により算出するために、人１０６又はロボットアーム１０２が、邪魔な物品を移動する先を、退避スペース（物品退避場所の一例。）として、予め確保しておく。例えば、図２３の領域２８０１のように、他の作業の邪魔になりにくい場所を退避スペースとし、退避スペースの中心の座標を、前記環境マップデータベース３１２にマップ管理手段３１３により記録しておく。
【０１３７】
そして、障害物品除去時間算出手段３１１は、各場所で算出された障害物品除去時間の情報をマップ管理手段３１３に出力する。
【０１３８】
以下、図２４から図２８を参照しながら具体例を示す。
【０１３９】
図２４は、この実施形態の一例として、調理作業の一部を示した作業手順データの例であり、このときの工程データを図２６に示している。物品の移動を伴わない工程（この例では、工程Ｄと工程Ｈと工程Ｊと工程Ｋ）については、操作物品と移動先の項目が不要であり、代わりに、ここに作業内容を記述している。
【０１４０】
以下、作業の内容を簡単に説明する。
【０１４１】
人１０６は、「工程Ａ」で、肉を冷蔵庫（図示せず）から取り出して調理台１０８に置く。
【０１４２】
「工程Ａ」に次いで、人１０６は、「工程Ｂ」で、玉葱を野菜置き場（図示せず）から取り出して調理台１０８に置く。
【０１４３】
「工程Ｂ」に次いで、人１０６は、「工程Ｃ」で、じゃが芋を野菜置き場から取り出して調理台１０８に置く。ここで、「工程Ａ」と「工程Ｂ」と「工程Ｃ」は、実際には作業順序を入れ替えても問題ない工程であるが、簡単のため、１つの順序のみを示している。以下の手順においても、説明に必要な箇所以外では１つの順序のみを示す。
【０１４４】
ロボットアーム１０２は、人１０６の「工程Ａ」と同時に又は「工程Ａ」より先に又はより後に開始する「工程ｉ」で、包丁を収納棚（図示せず）から取り出して調理台１０８に置く。
【０１４５】
「工程ｉ」に次いで、ロボットアーム１０２は、「工程ｉｉ」で、まな板を収納棚から取り出して調理台１０８に置く。
【０１４６】
「工程ｉｉ」に次いで、ロボットアーム１０２は、「工程ｉｉｉ」で、鍋を収納棚から取り出してコンロ１０７に置く。ロボットアーム１０２は、「工程ｉｉｉ」が完了したのち、人１０６の「工程Ｄ」が完了するまで「待機工程１」で待機する。
【０１４７】
一方、人１０６は、「工程Ｃ」に引き続き「工程Ｄ」で、包丁とまな板を使用して、調理台１０８に取り出した食材（肉、玉葱、じゃが芋）を切る。この工程が終了するまでロボットアーム１０２は待機する。
【０１４８】
「工程Ｄ」に次いで、人１０６は、下味を付けるために、「工程Ｅ」で、塩の瓶を調味料置き場から取り、切られた後、まな板の上に載っている食材に振り掛けたのち、塩の瓶を調味料置き場（図示せず）に戻す。
【０１４９】
「工程Ｅ」に次いで、人１０６は、「工程Ｆ」で、胡椒の瓶を調味料置き場から取り、まな板の上に載っている食材に振り掛けたのち、胡椒の瓶を調味料置き場に戻す。
【０１５０】
「工程Ｆ」に次いで、人１０６は、「工程Ｇ」で、まな板の上に載っている食材を取り、まな板ごとコンロ１０７の前まで移動し、まな板の上から、コンロ１０７に置かれている鍋に、食材を入れる。
【０１５１】
ロボットアーム１０２は、「工程ｉｉｉ」の後の「待機工程１」に次いで（言い換えると、人１０６の「工程Ｄ」が完了したのち）「工程ｉｖ」で、人１０６の「工程Ｄ」で使い終わった包丁を、シンク１０９へ運び、ロボットアーム１０２は、人１０６が「工程Ｇ」を完了するまで「待機工程２」で待機する。
【０１５２】
人１０６は、「工程Ｇ」を完了したのち「工程Ｈ」で、コンロ１０７に点火して、コンロ１０７の上の鍋の加熱を開始する。人１０６は、「工程Ｈ」が完了したのち、ロボットアーム１０２の「工程ｖｉ」が完了するまで「待機工程３」で待機する。
【０１５３】
ロボットアーム１０２は、「工程ｉｖ」の後の「待機工程２」に次いで（言い換えると、人１０６の「工程Ｇ」が完了したのち）「工程ｖ」で、人１０６の「工程Ｇ」で使い終わったまな板を、シンク１０９へ運ぶ。
【０１５４】
ロボットアーム１０２は、「工程ｖ」に次いで「工程ｖｉ」で、次の、人１０６の作業「工程Ｉ」の準備のために、塩の瓶を、調味料置き場からコンロ１０７の横へ運ぶ。ロボットアーム１０２、「工程ｖｉ」が完了したのち、人１０６の「工程Ｉ」が完了するまで「待機工程４」で待機する。
【０１５５】
人１０６は、味付けのために、「工程Ｈ」の後の「待機工程３」に次いで（言い換えると、ロボットアーム１０２の「工程ｖｉ」が完了したのち）「工程Ｉ」で、ロボットアーム１０２の「工程ｖｉ」でコンロ１０７の横へ運ばれた塩の瓶を取り、鍋の中に塩を振り掛けたのち、人１０６が調理台１０８の前まで移動し、調味料置き場に戻す。
【０１５６】
人１０６は、「工程Ｉ」に次いで「工程Ｊ」で、鍋の中の食材を混ぜる。
【０１５７】
人１０６は、「工程Ｊ」に次いで「工程Ｋ」で、ロボットアーム１０２の「工程ｉｖ」と「工程ｖ」でシンク１０９に運ばれた調理具（包丁とまな板）を洗う。このとき、「工程Ｊ」と「工程Ｋ」は、作業順序を入れ替えても問題ない工程として示されており、その作業順序の確率は、「工程Ｊ」→「工程Ｋ」が７０％、「工程Ｋ」→「工程Ｊ」が３０％である。また、「工程Ｋ」は作業中に手に洗剤が付着するので中断不可な工程であるとする。
【０１５８】
ロボットアーム１０２は、「工程ｖｉ」の後の「待機工程４」に次いで（言い換えると、人１０６の「工程Ｉ」が完了したのち）「工程ｖｉｉ」で、次の、人１０６の作業「工程Ｌ」の準備のために、醤油入れを調味料置き場からコンロ１０７の横へ運び、次の作業まで「待機工程５」で待機する。
【０１５９】
人１０６は、味付けのために、「工程Ｊ」→「工程Ｋ」に次いで、又は、「工程Ｋ」→「工程Ｊ」に次いで「工程Ｌ」で、ロボットアーム１０２の「工程ｖｉｉ」でコンロ１０７の横へ運ばれた醤油入れを取り、鍋の中に醤油を振り掛けたのち、人１０６は調理台の前まで移動し、醤油入れを調味料置き場に戻す。
【０１６０】
以後の工程については、説明を省略する。なお、この例では協調作業を含まない工程の例を示している。
【０１６１】
以上のような作業手順データに従って作業している場合の、障害物品除去時間算出手段３１１の処理内容を説明する。
【０１６２】
図２５は、人１０６Ａが「工程Ｅ」を開始する直前の様子を示したものである。
【０１６３】
図２５に示すように、調理台１０８の前に人１０６（ここでは、具体的に、前述した「花子」１０６Ａという名前の人であると仮定する。）がおり、ロボットアーム１０２が調理台１０８に設置されている。コンロ１０７に鍋２００３が置かれている。調理台１０８の手前（人１０６Ａに近い領域）には、作業に使用している包丁２００４とまな板２００５とが置かれており、まな板２００５の上には、肉と玉葱とじゃが芋の食材２００５Ａが置かれている。調理台１０８の右奥の矩形の調味料置き場１０８Ａには、醤油入れ２００６と塩の瓶２００７と胡椒の瓶２００８とが置かれている。図２６の前記工程データで示した「コンロ１０７の横」の位置は、矩形の領域２００９が示す場所とする。また、調理台１０８の左奥の矩形の領域２０１０を、邪魔な物品（障害物品）を移動するための退避スペースとする。この退避スペースの領域２０１０の位置座標は、環境マップデータベース３１２に記録されており、前記マップ管理手段３１３が、環境マップデータベース３１２から退避スペースの領域２０１０の位置座標を取得して、障害物品除去時間算出手段３１１に与えるようにしている。
【０１６４】
ここで、人１０６の「工程Ｅ」で、人１０６Ａが、塩の瓶２００７を調味料置き場１０８Ａから取る。すると、前記物品把持判定手段３０５が、センシング装置３０３で検出されて検出履歴データベース３０４に記録された情報を基に、システムキッチン１０１の上面の調味料置き場１０８Ａに置かれていた物品（塩の瓶２００７）を人１０６Ａが把持したことを判定する。
【０１６５】
次に、前記作業進捗管理手段３０７が、時刻取得手段３０１から取得した現在時刻を基に、現在の工程が「工程Ｅ」であることを判定する。
【０１６６】
さらに、前記マップ管理手段３１３が、前記環境マップデータベース３１２中の、物品（塩の瓶２００７）が置かれると想定する複数個（又は単数の）の場所の位置情報を前記アクセス判定手段３１０に与える。そして、前記アクセス判定手段３１０は、与えられた場所がアクセス困難な状況となるか否かを判定する。そして、アクセス判定手段３１０がアクセス困難な状況であると判定した場合、障害物品除去時間算出手段３１１がそのアクセス困難な状況を解消するために要する障害物品除去時間を算出する。
【０１６７】
前記マップ管理手段３１３は、前記環境マップデータベース３１２中の、物品（塩の瓶２００７）が置かれると想定する複数個の場所として、例えば、図２７に示した、調理台１０８の右側手前でかつまな板２００５の右側の領域２５０１の位置情報と、調理台１０８の右側奥でかつ調味料置き場１０８Ａの醤油入れ２００６の左側の領域２５０２の位置情報とを前記アクセス判定手段３１０に与える。ここでは、領域２５０１の代表点の位置座標としては（１２０，７５）とし、領域２５０２の代表点の位置座標としては（１１０，１５）とする。また、退避スペースとして確保した領域２０１０の代表点の位置座標としては（８０，１５）とする。この退避スペースの領域２０１０の位置座標は、環境マップデータベース３１２に予め記録されており、前記マップ管理手段３１３が、環境マップデータベース３１２から退避スペースの領域２０１０の位置座標を取得して、障害物品除去時間算出手段３１１に与えるようにしている。
【０１６８】
以下、それぞれの位置情報が与えられた場合の障害物品除去時間算出例１及び２について説明する。
【０１６９】
《障害物品除去時間算出例１》
まず、前記マップ管理手段３１３から領域２５０１の位置情報が前記アクセス判定手段３１０に与えられた場合の、アクセス判定手段３１０の処理を説明する。
【０１７０】
図２２に示したステップＳ１６０１にて、属性データベース３１５のロボットデータ２３０２をアクセス判定手段３１０により参照して、与えられた位置が、ロボットアーム１０２の可動範囲外であるか否かをアクセス判定手段３１０により判定する。即ち、ロボットアーム１０２の本体根元部１０２ｂの位置が（１００，５）であり、領域２５０１の位置（１２０，７５）までの距離をアクセス判定手段３１０により計算して、｛（１２０−１００）２＋（７５−５）２｝１／２＝７２．８［ｃｍ］を求める。次いで、この距離７２．８［ｃｍ］とロボットアーム１０２のアームサイズ（アームの長さ）である６０［ｃｍ］とをアクセス判定手段３１０により比較する。その比較の結果、前記距離７２．８［ｃｍ］がアームサイズ（アームの長さ）である６０［ｃｍ］より大きいとアクセス判定手段３１０により判定することから、与えられた位置である領域２５０１の位置（１２０，７５）が、ロボットアーム１０２の可動範囲外であることをアクセス判定手段３１０により判定される。
【０１７１】
次に、ステップＳ１６０２にて、アクセス判定手段３１０により、作業手順データを参照して、以降のロボットアーム１０２の「工程ｖｉ」で塩の瓶２００７をロボットアーム１０２が使用することから、ロボットアーム１０２が塩の瓶２００７に対してアクセス困難な状況になるとアクセス判定手段３１０で判定する。
【０１７２】
ロボットアーム１０２が塩の瓶２００７に対してアクセス困難な状況になるとアクセス判定手段３１０で判定されたので、次の障害物品除去時間算出手段３１１の処理を行う。
【０１７３】
すなわち、ロボットアーム１０２の「工程ｖｉ」で、ロボットアーム１０２が塩の瓶２００７に対してアクセス困難な状況が発生するので、このときに、「工程ｖｉ」より前の「工程ｖ」の開始のタイミングで行われる人１０６の「工程Ｈ」を障害物品除去時間算出手段３１１により参照する。この「工程Ｈ」において、工程データの作業場所を障害物品除去時間算出手段３１１により参照すると、人１０６Ａは（４０，９０）の位置で作業していることがわかる。領域２５０１に塩の瓶２００７を置いたとすると、塩の瓶２００７を人１０６Ａが取りに行き、塩の瓶２００７を退避スペース２０１０へ人１０６Ａが移動させ、また元の位置に人１０６Ａが戻ってくるまでの往復の所要時間を、困難な状況を解消するために要する障害物品除去時間とする。
【０１７４】
ここでは、塩の瓶２００７を取るために塩の瓶２００７の正面位置（１２０，９０）まで人１０６Ａが取りに行くとすると、人１０６Ａは（４０，９０）の位置から（１２０，９０）の位置に行き、また、（１２０，９０）の位置から（４０，９０）の位置に移動することにより、これらの２つの位置の間を往復することになる。属性データベース３１５の人データ２３０３を障害物品除去時間算出手段３１１で参照して、花子１０６Ａの移動速度は６０［ｃｍ／ｓ］であることを障害物品除去時間算出手段３１１が取得する。よって、花子１０６Ａが前記２つの位置の間を往復する時間ｔ１は、ｔ１＝（前記２つの位置の距離＊２）／（花子１０６Ａの移動速度）＝（（１２０−４０）＊２）／６０＝２．７［ｓ］であることを障害物品除去時間算出手段３１１により求める。さらに、塩の瓶２００７を退避スペース２０１０まで花子１０６Ａが移動する時間を障害物品除去時間算出手段３１１により求める。領域２５０１から退避スペース２０１０までの距離を障害物品除去時間算出手段３１１により計算する。すなわち、両者の座標（１２０，７５）と（８０，１５）とから、領域２５０１から退避スペース２０１０までの距離は｛（１２０−８０）２＋（７５−１５）２｝１／２＝７２．１［ｃｍ］と求まる。障害物品除去時間算出手段３１１は、人１０６Ａの属性データ２３０３を参照して、花子１０６Ａの手の移動速度３０［ｃｍ／ｓ］を取得する。よって、花子１０６Ａの手で領域２５０１から退避スペース２０１０まで塩の瓶２００７を置く時間ｔ２は、障害物品除去時間算出手段３１１により、ｔ２＝（領域２５０１から退避スペース２０１０までの距離）／（花子１０６Ａの手の移動速度）を求めると、ｔ２＝７２．１／３０＝２．４［ｓ］となる。これらを障害物品除去時間算出手段３１１により合計して、ｔ１＋ｔ２＝２．７＋２．４＝５．１［ｓ］が障害物品除去時間算出手段３１１により算出された障害物品除去時間となる。
【０１７５】
このように、作業手順データをアクセス判定手段３１０により参照することで、アクセス困難な状況が発生する時点における状況をアクセス判定手段３１０により推定し、その状況に基づいた障害物品除去時間の情報を障害物品除去時間算出手段３１１により求めることができる。
【０１７６】
《障害物品除去時間算出例２》
また、前記マップ管理手段３１３から領域２５０２の位置情報が前記アクセス判定手段３１０に与えられた場合の、アクセス判定手段３１０の処理を説明する。この領域２５０２の位置座標は、環境マップデータベース３１２に予め記録されており、前記マップ管理手段３１３が、環境マップデータベース３１２から領域２５０２の位置座標を取得して、障害物品除去時間算出手段３１１に与えるようにしている。
【０１７７】
図２２に示したステップＳ１６０１にて、属性データベース３１５のロボットデータ２３０２を参照して、与えられた位置が、ロボットアーム１０２の可動範囲内であるか否かをアクセス判定手段３１０により判定する。即ち、ロボットアーム１０２の本体根元部１０２ｂの位置が（１００，５）であり、領域２５０２の位置（１１０，１５）までの距離をアクセス判定手段３１０により計算して、｛（１１０−１００）２＋（１５−５）２｝１／２＝１４．１［ｃｍ］を求める。次いで、この距離１４．１［ｃｍ］とロボットアーム１０２のアームサイズ（アームの長さ）である６０［ｃｍ］とをアクセス判定手段３１０により比較する。その比較の結果、前記距離１４．１［ｃｍ］がアームサイズ（アームの長さ）である６０［ｃｍ］より小さいとアクセス判定手段３１０により判定することから、与えられた位置である領域２５０２の位置（１１０，１５）が、ロボットアーム１０２の可動範囲内であるとアクセス判定手段３１０により判定される。
【０１７８】
次に、ステップＳ１６０３にて、アクセス判定手段３１０により、前記作業手順データベース３０６を参照して、領域２５０２に置いた塩の瓶２００７が他の物品の邪魔になるか否かを判定する。すると、塩の瓶２００７が、以降の「工程ｖｉｉ」で使用する醤油入れ２００６の邪魔になるとアクセス判定手段３１０により判定されるので、ステップＳ１６０４へ進む。
【０１７９】
ステップＳ１６０４にて、アクセス判定手段３１０により前記作業手順データベース３０６を参照して、アクセス困難な状況が発生する可能性のある「工程ｖｉｉ」以前に、邪魔の原因となる塩の瓶２００７を使用するか否かをアクセス判定手段３１０により判定すると、「工程ｖｉ」で塩の瓶０２００７を使用することが分かるので、ステップＳ１６０５へ進む。
【０１８０】
ステップＳ１６０５にて、アクセス判定手段３１０により、前記作業手順データベース３０６を参照して、以降の工程で、領域２５０２に他の物品を置くことが発生するかを判定すると、以降のロボットアーム１０２の工程には、移動先が領域２５０２の場所になっている物品は存在しないとアクセス判定手段３１０により判定することができる。この結果、アクセス困難な状況にはならないとアクセス判定手段３１０により判定する。
【０１８１】
よって、障害物品除去時間算出手段３１１の処理は行われず、障害物品除去時間は０［ｓ］となる。
【０１８２】
このように、作業手順データベース３０６の作業手順データをアクセス判定手段３１０により参照し、以降の工程で使用する物品との関連をアクセス判定手段３１０により判定することにより、現時点だけの判断ではアクセス困難な状況であるとアクセス判定手段３１０により判定されるが、以降の工程で該当物品を使用する時点で、アクセス困難な状況であるか否かをアクセス判定手段３１０により正しく判定することができるようになり、より正確な障害物品除去時間の情報を求めることができる。
【０１８３】
次に、図２５に示した「工程Ｅ」を開始する直前の状態から、人１０６Ａが、「工程Ｆ」にて、胡椒の瓶２００８を調味料置き場１０８Ａから取ったときを考え、前記マップ管理手段３１３が、例えば、図２８に示した領域２６０１の位置情報と領域２６０２の位置情報とをアクセス判定手段３１０に与えた場合について説明する。領域２６０１の代表点の位置座標を（８０，５５）、領域２６０２の代表点の位置座標を（１１０，１５）とする。退避スペースとして確保した領域２０１０の代表点の位置座標を（８０，１５）とする。
【０１８４】
以下、それぞれの位置情報が与えられた場合の障害物品除去時間算出例３及び４について説明する。
【０１８５】
《障害物品除去時間算出例３》
まず、前記マップ管理手段３１３から領域２６０１の位置情報が前記アクセス判定手段３１０に与えられた場合の、アクセス判定手段３１０の処理を説明する。この領域２６０１の位置座標は、環境マップデータベース３１２に予め記録されており、前記マップ管理手段３１３が、環境マップデータベース３１２から領域２６０１の位置座標を取得して、障害物品除去時間算出手段３１１に与えるようにしている。
【０１８６】
図２２に示したステップＳ１６０１にて、属性データベース３１５のロボットデータ２３０２をアクセス判定手段３１０により参照して、与えられた位置が、ロボットアーム１０２の可動範囲内であるか否かをアクセス判定手段３１０により判定する。即ち、ロボットアーム１０２の本体根元部１０２ｂの位置が（１００，５）であり、領域２６０１の位置（８０，５５）までの距離をアクセス判定手段３１０により計算して、｛（１００−８０）２＋（５５−５）２｝１／２＝５３．９［ｃｍ］がロボットアーム１０２のアームサイズである６０［ｃｍ］とをアクセス判定手段３１０により比較する。その比較の結果、前記距離５３．９［ｃｍ］がアームサイズ（アームの長さ）である６０［ｃｍ］より小さいことから、与えられた位置である領域２５０２の位置（１１０，１５）が、ロボットアーム１０２の可動範囲内であるとアクセス判定手段３１０により判定される。
【０１８７】
次に、ステップＳ１６０３にて、アクセス判定手段３１０により、前記作業手順データベース３０６を参照して、領域２６０１に置いた胡椒の瓶２００８が他の物品の邪魔になるか否かを判定する。すると、胡椒の瓶２００８が、以降の全ての工程でそれぞれ用いる物品に対しても邪魔にならないとアクセス判定手段３１０により判定されるので、ステップＳ１６０５へ進む。
【０１８８】
ステップＳ１６０５にて、前記作業手順データベース３０６をアクセス判定手段３１０により参照して、以降の工程で、領域２６０１に他の物品を置くことが発生するか否かをアクセス判定手段３１０により判定すると、「工程ｖｉ」において塩の瓶の移動先が領域２６０１の場所になっているとアクセス判定手段３１０により判定されるので、ステップＳ１６０６へ進む。
【０１８９】
ステップＳ１６０６にて、前記作業手順データベース３０６をアクセス判定手段３１０により参照して、アクセス困難な状況が発生する可能性のある「工程ｖｉ」以前に、邪魔の原因となる胡椒の瓶２００８を使用するか否かをアクセス判定手段３１０により判定する。すると、いずれの工程においても胡椒の瓶２００８は使用されないので、アクセス困難な状況になるとアクセス判定手段３１０により判定する。
【０１９０】
アクセス困難な状況になるとアクセス判定手段３１０により判定されたので、以下のように障害物品除去時間算出手段３１１による障害物品除去時間算出処理を行う。
【０１９１】
「工程ｖｉ」で、ロボットアーム１０２が塩の瓶２００７に対してアクセス困難な状況が発生するとアクセス判定手段３１０により判定されるので、このときに、「工程ｖｉ」より前の「工程ｖ」の開始のタイミングで行われる人１０６の「工程Ｈ」を障害物品除去時間算出手段３１１により参照する。
この「工程Ｈ」において、工程データの作業場所を障害物品除去時間算出手段３１１により参照すると、人１０６Ａは（４０，９０）の位置で作業していることがわかる。領域２６０１に胡椒の瓶２００８を置いたとすると、この胡椒の瓶２００８を人１０６Ａが取りに行き、胡椒の瓶２００８を退避スペース２０１０へ人１０６Ａが移動させ、また元の位置に人１０６Ａが戻ってくるまでの往復の所要時間を、困難な状況を解消するために要する障害物品除去時間とする。
【０１９２】
ここでは、胡椒の瓶２００８を人１０６Ａが取るために胡椒の瓶２００８の正面位置（８０，９０）まで人１０６Ａが胡椒の瓶２００８を取りに行くとすると、人１０６Ａは（４０，９０）の位置から（８０，９０）の位置に行き、また、（８０，９０）の位置から（４０，９０）の位置に移動することにより、これらの２つの位置の間を往復することになる。属性データベース３１５の人データ２３０３を障害物品除去時間算出手段３１１で参照して、花子１０６Ａの移動速度は６０［ｃｍ／ｓ］であることを障害物品除去時間算出手段３１１が取得する。よって、花子１０６Ａが前記２つの位置の間を往復する時間ｔ１は、ｔ１＝（前記２つの位置の距離＊２）／（花子１０６Ａの移動速度）＝（（８０−４０）＊２）／６０＝１．３［ｓ］であることを障害物品除去時間算出手段３１１により求める。さらに、胡椒の瓶２００８を退避スペース２０１０まで花子１０６Ａが移動する時間を障害物品除去時間算出手段３１１により求める。領域２６０１から退避スペース２０１０までの距離を障害物品除去時間算出手段３１１により計算する。すなわち、両者の座標（８０，５５）と（８０，１５）とから、領域２６０１から退避スペース２０１０までの距離は｛（８０−８０）２＋（５５−１５）２｝１／２＝４０［ｃｍ］と求まる。障害物品除去時間算出手段３１１は、人１０６Ａの属性データ２３０３を参照して、花子１０６Ａの手の移動速度３０［ｃｍ／ｓ］を取得する。よって、花子１０６Ａの手で領域２６０１から退避スペース２０１０まで胡椒の瓶２００８を置く時間ｔ２は、障害物品除去時間算出手段３１１により、ｔ２＝（領域２６０１から退避スペース２０１０までの距離）／（花子１０６Ａの手の移動速度）を求めると、ｔ２＝４０／３０＝１．３［ｓ］となる。これらを障害物品除去時間算出手段３１１により合計して、ｔ１＋ｔ２＝１．３＋１．３＝２．６［ｓ］が障害物品除去時間算出手段３１１により算出された障害物品除去時間となる。
【０１９３】
一方、アクセス困難な状況の原因となる胡椒の瓶２００８は、ロボットアーム１０２の可動範囲内にあるので、ロボットアーム１０２自体が胡椒の瓶２００８を取り除くことができる。ロボットアーム１０２は作業終了後には必ず、本体根元部１０２ｂの位置（１００，５）にアーム１０２の先端部を戻すこととすると、「工程ｖｉ」の直前にもそのような状態になっており、アーム先端部を、胡椒の瓶２００８の位置まで移動させて胡椒の瓶２００８を取りに行き、アーム先端部で胡椒の瓶２００８を把持し、アーム先端部で胡椒の瓶２００８を退避スペース２０１０へ移動し、アーム先端部で胡椒の瓶２００８を置き、また元の位置までアーム先端部が戻ってくるまでに要する時間を、困難な状況を解消するために要する障害物品除去時間とする。
【０１９４】
ロボットアーム１０２の先端部は、本体根元部１０２ｂの位置（１００，５）から領域２６０１の位置（８０，５５）と退避スペース２０１０の位置（８０，１５）とを経由して元の位置（１００，５）へ移動することになる。属性データベース３１５のロボットデータ２３０２を参照して、アーム１０２のハンド部の動作速度は２５［ｃｍ／ｓ］である。よって、ロボットアーム１０２の本体根元部１０２ｂの位置（１００，５）から領域２６０１の位置（８０，５５）まで算出した前記距離が５３．９［ｃｍ］であり、領域２６０１の位置（８０，５５）から退避スペース２０１０の位置（８０，１５）まで算出した前記距離が４０［ｃｍ］であり、退避スペース２０１０の位置（８０，１５）から本体根元部１０２ｂの位置（１００，５）までの距離は、障害物品除去時間算出手段３１１により、｛（１００−８０）２＋（１５−５）２｝１／２＝２２．４［ｃｍ］と求められるため、（これらの全ての距離の合計）／（アームのハンド部の動作速度）＝（５３．９＋４０＋２２．４）／２５＝４．７［ｓ］を障害物品除去時間算出手段３１１により求める。ロボットアーム１０２の把持所要時間が、物品を把持するときと置くときに費やされるので、３［ｓ］＊２＝６［ｓ］。これらを合わせて、４．７［ｓ］＋６［ｓ］＝１０．７［ｓ］が、障害物品除去時間算出手段３１１により算出された障害物品除去時間となる。
【０１９５】
以上のように、人１０６Ａがアクセス困難な状況を解消するためには２．６［ｓ］、ロボットアーム１０２がアクセス困難な状況を解消するためには１０．７［ｓ］が必要であることが障害物品除去時間算出手段３１１により求められる。なるべく少ない障害物品除去時間で作業を進めるためには、障害物品除去時間の小さい値を障害物品除去時間算出手段３１１により選択し、人１０６Ａがアクセス困難な状況を解消するための２．６［ｓ］を、領域２６０１における障害物品除去時間とする。実際に、「工程ｖｉ」において、この状況が発生したならば、人１０６Ａがアクセス困難な状況を解消することで、ロボットアーム１０２がアクセス困難な状況を解消するよりも、無駄な時間を少なく抑えることができる。
【０１９６】
作業全体を通して、例えば疲労度の観点から、なるべく人１０６Ａが余計な作業を行いたくない場合には、障害物品除去時間を決めるときに、前記人１０６Ａがアクセス困難な状況を解消するため時間に、予め設定した値を障害物品除去時間算出手段３１１により乗じるように設定しておけばよい。例えば、値を「１０」に障害物品除去時間算出手段３１１に設定しておけば、前記の例では、人１０６Ａがアクセス困難な状況を解消するためには２．６×１０＝２６［ｓ］と障害物品除去時間算出手段３１１により算出される一方、ロボットアーム１０２がアクセス困難な状況を解消するためには１０．７［ｓ］が必要であることになる。この結果、前記２６［ｓ］と１０．７［ｓ］とのうちの、より少ない時間である、ロボットアーム１０２がアクセス困難な状況を解消するための１０．７［ｓ］が、障害物品除去時間算出手段３１１により選択されて、領域２６０１における障害物品除去時間となる。
【０１９７】
同様に、例えば省エネなどの観点から、なるべくロボットアーム１０２に余計な作業を行わせたくない場合には、障害物品除去時間算出手段３１１により障害物品除去時間を決めるときに、前記ロボットアーム１０２がアクセス困難な状況を解消するための時間に、予め設定した値（例えば、「１０」）を障害物品除去時間算出手段３１１により乗じるようにしておけばよい。このようにすれば、例えば前記例では、人１０６Ａがアクセス困難な状況を解消するための時間が２．６［ｓ］であるのに対して、ロボットアーム１０２がアクセス困難な状況を解消するための時間は１０．７［ｓ］×１０＝１００．７［ｓ］となり、障害物品除去時間算出手段３１１により、人１０６Ａがアクセス困難な状況を解消するための時間２．６［ｓ］が選択されて、領域２６０１における障害物品除去時間となる。
【０１９８】
このように、作業手順データをアクセス判定手段３１０により参照することで、アクセス困難な状況が発生する時点における状況をアクセス判定手段３１０により推定し、人１０６Ａ又はロボットアーム１０２のそれぞれの状況に基づいた障害物品除去時間を障害物品除去時間算出手段３１１により算出することで、より正確な障害物品除去時間の情報を障害物品除去時間算出手段３１１により求めることができる。
【０１９９】
《障害物品除去時間算出例４》
前記マップ管理手段３１３から領域２６０２の位置情報が前記アクセス判定手段３１０に与えられた場合の、アクセス判定手段３１０の処理を説明する。この領域２６０２の位置座標は、環境マップデータベース３１２に予め記録されており、前記マップ管理手段３１３が、環境マップデータベース３１２から領域２６０２の位置座標を取得して、障害物品除去時間算出手段３１１に与えるようにしている。
【０２００】
図２２に示したステップＳ１６０１にて、属性データベース３１５のロボットデータ２３０２をアクセス判定手段３１０により参照して、与えられた位置が、ロボットアーム１０２の可動範囲内であるか否かをアクセス判定手段３１０により判定する。即ち、ロボットアーム１０２の本体根元部１０２ｂの位置が（１００，５）であり、領域２６０２の位置（１１０，１５）までの距離をアクセス判定手段３１０により計算して、｛（１１０−１００）２＋（１５−５）２｝１／２＝１４．１［ｃｍ］を求める。次いで、この距離１４．１［ｃｍ］とロボットアーム１０２のアームサイズである６０［ｃｍ］とをアクセス判定手段３１０により比較する。その比較の結果、前記距離１４．１［ｃｍ］がアームサイズ（アームの長さ）である６０［ｃｍ］より小さいとアクセス判定手段３１０により判定することから、与えられた位置である領域２６０２の位置（１１０，１５）が、ロボットアーム１０２の可動範囲内であるとアクセス判定手段３１０により判定される。
【０２０１】
次に、ステップＳ１６０３にて、アクセス判定手段３１０により、前記作業手順データベース３０６を参照して、領域２６０２に置いた胡椒の瓶２００８が他の物品の邪魔になるかを判定する。すると、胡椒の瓶２００８が、以降の「工程ｖｉｉ」で使用する醤油入れ２００６の邪魔になるとアクセス判定手段３１０により判定されるので、ステップＳ１６０４へ進む。
【０２０２】
ステップＳ１６０４にて、アクセス判定手段３１０により前記作業手順データベース３０６を参照して、アクセス困難な状況が発生する可能性のある「工程ｖｉｉ」以前に、邪魔の原因となる胡椒の瓶２００８を使用するか否かをアクセス判定手段３１０により判定すると、いずれの工程においても、胡椒の瓶２００８は使用されないので、アクセス困難な状況になるとアクセス判定手段３１０により判定する。
【０２０３】
醤油入れ２００６がアクセス困難な状況になるとアクセス判定手段３１０により判定されたので、以下の障害物品除去時間算出手段３１１による障害物品除去時間算出処理を行う。
【０２０４】
「工程ｖｉｉ」で、ロボットアーム１０２が醤油入れ２００６に対してアクセス困難な状況が発生するとアクセス判定手段３１０により判定されるので、このときに、同じタイミングで行われる人１０６Ａの工程を障害物品除去時間算出手段３１１により参照する。作業手順データを障害物品除去時間算出手段３１１により参照すると、「工程ｖｉｉ」と同じタイミングで行われる人１０６Ａの工程としては、作業手順を入れ替え可能な「工程Ｊ」又は「工程Ｋ」であることがわかる。まず、それぞれの工程に対して障害物品除去時間を障害物品除去時間算出手段３１１により求める。
【０２０５】
まず、「工程Ｊ」において、工程データの作業場所を障害物品除去時間算出手段３１１により参照すると、人１０６Ａは（４０，９０）の位置で作業していることがわかる。領域２６０２に胡椒の瓶２００８を置いたとすると、この胡椒の瓶２００８を人１０６Ａが取りに行き、胡椒の瓶２００８を退避スペース２０１０へ人１０６Ａが移動させ、また元の位置に人１０６Ａが戻ってくるまでの往復の所要時間を、困難な状況を解消するために要する障害物品除去時間とする。
【０２０６】
ここでは、胡椒の瓶２００８を人１０６Ａが取るために胡椒の瓶２００８の正面位置（１１０，９０）まで人１０６Ａが胡椒の瓶２００８を取りに行くとすると、人１０６Ａは（４０，９０）の位置から（１１０，９０）の位置に行き、また、（１１０，９０）の位置から（４０，９０）の位置に移動することにより、これらの２つの位置の間を往復することになる。属性データベース３１５の人データ２３０３を障害物品除去時間算出手段３１１で参照して、花子１０６Ａの移動速度は６０［ｃｍ／ｓ］であることを障害物品除去時間算出手段３１１が取得する。よって、花子１０６Ａが前記２つの位置の間を往復する時間ｔ１は、ｔ１＝（前記２つの位置の距離＊２）／（花子１０６Ａの移動速度）＝（（１１０−４０）＊２）／６０＝２．３［ｓ］であることを障害物品除去時間算出手段３１１により求める。さらに、胡椒の瓶２００８を退避スペース２０１０まで花子１０６Ａが移動する時間を障害物品除去時間算出手段３１１により求める。領域２６０２から退避スペース２０１０までの距離を障害物品除去時間算出手段３１１により計算する。すなわち、両者の座標（１１０，９０）と（４０，９０）とから、領域２６０２から退避スペース２０１０までの距離は｛（１１０−８０）２＋（１５−１５）２｝１／２＝３０［ｃｍ］と求まる。障害物品除去時間算出手段３１１は、人１０６Ａの属性データ２３０３を参照して、花子１０６Ａの手の移動速度３０［ｃｍ／ｓ］を取得する。よって、花子１０６Ａの手で、領域２６０２から退避スペース２０１０まで胡椒の瓶２００８を置く時間ｔ２は、障害物品除去時間算出手段３１１により、ｔ２＝（領域２６０２から退避スペース２０１０までの距離）／（花子１０６Ａの手の移動速度）を求めると、ｔ２＝３０／３０＝１［ｓ］となる。これらを障害物品除去時間算出手段３１１により合計して、ｔ１＋ｔ２＝２．３＋１＝３．３［ｓ］が障害物品除去時間算出手段３１１により算出された障害物品除去時間となる。
【０２０７】
同様に、「工程Ｋ」において、工程データの作業場所を障害物品除去時間算出手段３１１により参照すると、人１０６Ａは（１６０，９０）の位置で作業していることがわかる。領域２６０２に胡椒の瓶２００８を置いたとすると、この胡椒の瓶２００８を人１０６Ａが取りに行き、胡椒の瓶２００８を退避スペース２０１０へ人１０６Ａが移動ｘｐ、また元の位置に人１０６Ａが戻ってくるまでの往復の所要時間を、困難な状況を解消するために要する障害物品除去時間とする。
【０２０８】
ここでは、胡椒の瓶２００８を人１０６Ａが取るために胡椒の瓶２００８の正面位置（１１０，９０）まで人１０６Ａが胡椒の瓶２００８を取りに行くとすると、人１０６Ａは（１６０，９０）の位置から（１１０，９０）の位置に行き、また、（１１０，９０）の位置から（１６０，９０）の位置に移動することにより、これらの２つの位置の間を往復することになる。属性データベース３１５の人データ２３０３を障害物品除去時間算出手段３１１で参照して、花子１０６Ａの移動速度は６０［ｃｍ／ｓ］であることを障害物品除去時間算出手段３１１が取得する。よって、花子１０６Ａが前記２つの位置の間を往復する時間ｔ１は、ｔ１＝（前記２つの位置の距離＊２）／（花子１０６Ａの移動速度）＝（（１６０−１１０）＊２）／６０＝１．７［ｓ］であることを障害物品除去時間算出手段３１１により求める。さらに、胡椒の瓶２００８を退避スペース２０１０まで花子１０６Ａが移動する時間を障害物品除去時間算出手段３１１により求める。領域２６０２から退避スペース２０１０までの距離を障害物品除去時間算出手段３１１により計算する。すなわち、両者の座標（１１０，１５）と（８０，１５）とから、領域２６０２から退避スペース２０１０までの距離は｛（１１０−８０）２＋（１５−１５）２｝１／２＝３０［ｃｍ］と求まる。障害物品除去時間算出手段３１１は、人１０６Ａの属性データ２３０３を参照して、花子１０６Ａの手の移動速度３０［ｃｍ／ｓ］を取得する。よって、花子１０６Ａの手で、領域２６０２から退避スペース２０１０まで胡椒の瓶２００８を置く時間ｔ２は、障害物品除去時間算出手段３１１により、ｔ２＝（領域２６０２から退避スペース２０１０までの距離）／（花子１０６Ａの手の移動速度）を求めると、ｔ２＝３０／３０＝１［ｓ］となる。これらを障害物品除去時間算出手段３１１により合計して、ｔ１＋ｔ２＝１．７＋１＝２．７［ｓ］が障害物品除去時間算出手段３１１により算出された障害物品除去時間となる。
【０２０９】
ここで、「工程Ｊ」と「工程Ｋ」は作業手順を入れ替え可能な工程であり、工程データを障害物品除去時間算出手段３１１により参照すると、「工程Ｊ」→「工程Ｋ」が７０％、「工程Ｋ」→「工程Ｊ」が３０％である。つまり、「工程ｖｉｉ」と同じタイミングで行われるのは、「工程Ｊ」が７０％、「工程Ｋ」が３０％となることがわかる。
【０２１０】
障害物品除去時間算出手段３１１により、この確率に基づいて重み付けした（３．３＊７０＋２．７＊３０）／１００＝３．１［ｓ］が、人１０６Ａがアクセス困難な状況を解消するための障害物品除去時間として障害物品除去時間算出手段３１１により求めることができる。
【０２１１】
このように、作業が行われる順番の確率を考慮することで、どちらの順番で行われるケースにも対応した障害物品除去時間の期待値を障害物品除去時間算出手段３１１により得ることができる。すなわち、障害物品除去時間は確率で重み付けをしているため、どちらの順番で行われるかに従って、障害物品除去時間を障害物品除去時間算出手段３１１により、それぞれで算出できる。なお、ここで、期待値とは、障害物品除去時間を確率で重み付けをした数値を意味する。
【０２１２】
一方、アクセス困難な状況の原因となる胡椒の瓶２００８は、ロボットアーム１０２の可動範囲内にあるので、ロボットアーム１０２自体が胡椒の瓶２００８を取り除くことができる。「工程ｖｉｉ」の直前には、アーム１０２の先端部が本体根元部１０２ｂの位置にある状態になっており、アーム先端部を、胡椒の瓶２００８の位置まで移動させて胡椒の瓶２００８を取りに行き、アーム先端部で胡椒の瓶２００８を把持し、アーム先端部で胡椒の瓶２００８を退避スペース２０１０へ移動し、アーム先端部で胡椒の瓶２００８を置き、また元の位置までアーム先端部が戻ってくるまでに要する時間を、困難な状況を解消するために要する障害物品除去時間とする。
【０２１３】
ロボットアーム１０２の先端部は、本体根元部１０２ｂの位置（１００，５）から領域２５０２の位置（１１０，１５）と退避スペース２０１０の位置（８０，１５）とを経由して元の位置（１００，５）へ移動することになる。属性データベース３１５のロボットデータ２３０２を参照して、アーム１０２のハンド部の動作速度は２５［ｃｍ／ｓ］である。よって、ロボットアーム１０２の本体根元部１０２ｂの位置（１００，５）から領域２５０２の位置（１１０，１５）まで算出した前記距離が１４．１［ｃｍ］であり、領域２５０２の位置（１１０，１５）から退避スペース２０１０の位置（８０，１５）まで算出した前記距離が３０［ｃｍ］であり、退避スペース２０１０の位置（８０，１５）から本体根元部１０２ｂの位置（１００，５）までの距離は、障害物品除去時間算出手段３１１により、｛（１００−８０）２＋（１５−５）２｝１／２＝２２．４［ｃｍ］と求められるため、（これらの全ての距離の合計）／（アームのハンド部の動作速度）＝（１４．１＋３０＋２２．４）／２５＝２．７［ｓ］を障害物品除去時間算出手段３１１により求める。ロボットアーム１０２の把持所要時間が、物品を把持するときと置くときに費やされるので、３［ｓ］＊２＝６［ｓ］。これらを合わせて、２．７［ｓ］＋６［ｓ］＝８．７［ｓ］が、障害物品除去時間算出手段３１１により算出された障害物品除去時間となる。
【０２１４】
以上のように、人１０６Ａがアクセス困難な状況を解消するためには、作業手順の入れ替えを考慮すると３．１［ｓ］、ロボットアーム１０２がアクセス困難な状況を解消するためには８．７［ｓ］が必要であることが障害物品除去時間算出手段３１１により求められ、なるべく少ない障害物品除去時間で作業を進めるためには、障害物品除去時間の小さい値を障害物品除去時間算出手段３１１により選択し、人１０６Ａがアクセス困難な状況を解消するための３．１［ｓ］を、領域２６０２における障害物品除去時間とする。
【０２１５】
また、「工程Ｋ」においては、さらに、中断が不可能な工程であることを障害物品除去時間算出手段３１１により考慮することもできる。
【０２１６】
すなわち、前述の通り、「工程Ｋ」における障害物品除去時間は２．７［ｓ］と障害物品除去時間算出手段３１１により算出される。しかし、この時間は人１０６，１０６Ａが自由に他の作業が行える状態におけるものである。「工程Ｋ」のように、作業の途中で中断が不可能な場合、最大で、工程データの所要時間８０［ｓ］だけ待たなければならない。よって、「工程Ｋ」において、２．７＋８０＝８２．７［ｓ］を障害物品除去時間算出手段３１１により算出された障害物品除去時間とする。
【０２１７】
このように、作業の途中で中断が不可能な工程を障害物品除去時間算出手段３１１により考慮することで、人１０６がアクセス困難な状況を短時間で解消できると想定していたが、作業を中断できずに余計な時間を費やしてしまうことを防ぐことになり、より正確な障害物品除去時間の情報を障害物品除去時間算出手段３１１により求めることができる。
【０２１８】
《情報出力装置》
情報出力装置３１４は、前記環境マップデータベース３１２を参照して、環境中の障害物品除去時間の状況を出力する装置である。例えば、情報出力装置３１４の一例として液晶プロジェクタを設置し、出力情報を、実際の場所（例えば、調理台１０８などの上面）に投影する。また、情報出力装置３１４の一例としてモニタをキッチン環境内に設置し、出力情報をモニタに表示するようにしても良い。
【０２１９】
前記出力情報の内容としては、障害物品除去時間のしきい値を予め設定しておき、障害物品除去時間がしきい値以上の領域と、しきい値未満の領域とで色を変えて、情報出力装置３１４により出力することが可能である。例えば、障害物品除去時間がしきい値以上の領域を赤色で出力することで、障害物品除去時間が長い場所には物品を置かないように、人に警告することができる。図２９Ａの２２０１に例を示す。図２９Ａにおいて、領域２２０１Ａは、障害物品除去時間がしきい値以上の領域であって、障害物品除去時間が長い場所を意味している。
【０２２０】
また、前記障害物品除去時間算出手段３１１において、算出した障害物品除去時間だけでなく、アクセス困難な状況の理由、つまり、可動範囲外によるアクセス困難な状況であるか、邪魔な物品によるアクセス困難な状況であるかも併せて、前記出力情報として情報出力装置３１４は出力することができる。この情報を用いて、例えば、障害物品除去時間がしきい値以上の領域を黄色で出力し、可動範囲外によるアクセス困難な状況となる領域を赤色で出力することで、段階的に情報を表現でき、より細かい状況が判断できるようになる。図２９Ｂの２２０２に例を示す。図２９Ｂの２２０２において、右上部２２０２Ｕが黄色、下部２２０２Ｌが赤色を表している。
【０２２１】
また、前記検出履歴データベース３０４を情報出力装置３１４が参照して、人１０６の現在位置を情報出力装置３１４により取得し、さらに前記属性データベース３１５に記録された人１０６の手の長さデータを情報出力装置３１４により参照して、手が届く範囲を求める。前記出力領域のうち、手が届く範囲内の領域のみを情報出力装置３１４により出力するようにしても良い。図２９Ｃの２２０３に例を示す。手が届く範囲内の領域は２２０３Ａである。
【０２２２】
《全体処理フロー》
図３０に全体の処理フローを示す。全体の処理の制御は制御手段３０２が行う。
【０２２３】
まず、ステップＳ２４０１で、前記環境内の人１０６、ロボットアーム１０２、及び、物品のセンシングをセンシング装置３０３で行う。前記センシング装置３０３により、センシング情報を前記検出履歴データベース３０４に記録したら、次のステップＳ２４０２へ進む。
【０２２４】
次いで、ステップＳ２４０２で、前記検出履歴データベース３０４を参照して、人１０６により物品が把持されたかどうかを物品把持判定手段３０５により判定する。前記物品把持判定手段３０５でこの判定を行い、人１０６により物品が把持されたと物品把持判定手段３０５により判定した場合には、ステップＳ２４０３へ進み、人１０６により物品が把持されていないと物品把持判定手段３０５により判定した場合には、ステップＳ２４０１へ進んで、繰り返し、センシング装置３０３によりセンシングする。
【０２２５】
ステップＳ２４０３で、前記センシング装置３により検出された前記情報を基に、作業手順データベース３０６から取得した作業手順の進捗の情報（すなわち、現在の作業がどの工程まで進捗しているかの情報）を前記作業進捗管理手段３０７により管理する。前記作業進捗管理手段３０７でこの管理を行い、前記作業手順データベース３０６の工程データの作業完了項目などの作業手順の進捗の情報を作業進捗管理手段３０７で更新することで、進捗の情報を作業進捗管理手段３０７で管理し、その後、次のステップＳ２４０４へ進む。
【０２２６】
次いで、ステップＳ２４０４で、前記ステップＳ２４０２で把持されたと判定した物品を置いたときの障害物品除去時間を算出するための場所を前記マップ管理手段３１３で指定する。前記マップ管理手段３１３がこの指定を行い、環境マップデータベース３１２の中の領域を分割して各場所の位置情報を前記マップ管理手段３１３により順次出力したのち、次のステップＳ２４０５へ進む。
【０２２７】
次いで、ステップＳ２４０５で、前記マップ管理手段３１３により指定された場所における障害物品除去時間を前記障害物品除去時間算出手段３１１により算出する。前記障害物品除去時間算出手段３１１がこの算出を行い、得られた結果を前記障害物品除去時間算出手段３１１から前記マップ管理手段３１３に出力する。マップ管理手段３１３は、これ（障害物品除去時間）を前記障害物品除去時間算出手段３１１から取得し、前記環境マップデータベース３１２の中の前記ステップＳ２４０４で指定された場所に対応付ける。その後、次のステップＳ２４０６へ進む。
【０２２８】
次いで、ステップＳ２４０６で、前記環境マップデータベース３１２の中の全ての分割領域において障害物品除去時間の算出が前記障害物品除去時間算出手段３１１により終了したか否かを判定する。全ての分割領域において障害物品除去時間の算出が終了していなければ、ステップＳ２４０４へ進み、繰り返す。全ての分割領域において障害物品除去時間の算出が終了していれば、ステップＳ２４０７へ進む。
【０２２９】
ステップＳ２４０７で、障害物品除去時間算出手段３１１により求めた障害物品除去時間の情報を情報出力装置３１４で出力する。例えば、前記環境マップデータベース３１２を情報出力装置３１４が参照し、障害物品除去時間がしきい値以上の領域を赤色で情報出力装置３１４から出力する。その後、ステップＳ２４０８へ進む。
【０２３０】
次いで、ステップＳ２４０８で、環境内の人１０６、ロボットアーム１０２、及び、物品のセンシングをセンシング装置３０３により行う。前記センシング装置３０３がこのセンシングを行い、センシング情報を前記検出履歴データベース３０４に記録したら、次のステップＳ２４０９へ進む。
【０２３１】
次いで、ステップＳ２４０９で、前記検出履歴データベース３０４から得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベース３０６に記録されかつ前記作業進捗管理手段３０７により管理された前記作業手順を参照し、人１０６が把持していた物品が置かれたかどうかを作業進捗管理手段３０７で判定する。人１０６が把持していた物品が置かれたと作業進捗管理手段３０７で判定したら、情報出力装置３１４からの情報提供を終了し、ステップＳ２４１０へ進む。人１０６が把持していた物品が置かれていないと作業進捗管理手段３０７で判定すれば、ステップＳ２４０７へ進み、情報出力装置３１４からの情報提供を継続する。
【０２３２】
ステップＳ２４１０で、作業手順データベース３０６を作業手順データベース更新手段３０８により更新する。前記作業手順データベース更新手段３０８がこの更新を行い、人１０６が把持していた物品が置かれたときを工程の終了と、作業手順データベース更新手段３０８により判定し、工程の実行回数及び所要時間を作業手順データベース更新手段３０８により更新し、ステップＳ２４０１へ進み、ステップＳ２４０１からの工程を再び繰り返す。
【０２３３】
これらの一連のステップを物品管理プログラムとしてコンピュータにより実行させることも可能である。一例として、物品管理プログラムは、以下のような構成とすることができる。
【０２３４】
すなわち、ロボットアーム１０２と人１０６とが協調して複数の作業工程を含む作業を行う環境内に存在する物品の位置情報、前記ロボットアーム１０２の先端部の位置情報、及び、前記人１０６の位置情報をセンシング装置３で検出された情報を検出履歴データベース３０４に記録し（ステップＳ２４０１及びＳ２４０８参照）、
前記人１０６と前記ロボットアーム１０２とが協調して複数の作業工程を含む作業のうちの前記人１０６と前記ロボットアーム１０２のそれぞれの作業工程の順序と、少なくとも各工程における、前記環境内に存在する前記物品のうちの取扱物品とが記録された作業手順データベース３０６から取得した作業手順の進捗の情報を、前記センシング装置３により検出された前記情報を基に、作業進捗管理手段３０７で管理し（ステップＳ２４０３参照）、
前記検出履歴データベース３０４を参照して、前記人１０６が前記取扱物品を把持したことを物品把持判定手段３０５で判定し（ステップＳ２４０２参照）、
前記検出履歴データベース３０４から得られる前記環境内に存在する前記物品の現在の位置情報と、前記作業手順データベース３０６に記録されかつ前記作業進捗管理手段３０７により管理された前記作業手順を参照し、前記人１０６が前記取扱物品を把持して前記環境内の物品退避場所の領域２０１０などに置いたと想定したときに、前記物品退避場所の位置情報を基に前記ロボットアーム１０２がアクセス困難な状況となるか否かをアクセス判定手段３１０で判定し（ステップＳ２４０９参照）、
前記アクセス判定手段３１０によりアクセス困難な状況となると判定された場合に、そのアクセス困難な状況を解消するために、前記人１０６が把持して置いたと想定した前記取扱物品を除去するのに要する困難解消時間を、前記ロボットアーム１０２の本体根元部１０２ｂの位置情報と移動速度情報が記録されている属性データベース３１５に記録された情報を基に、困難解消時間算出部３１１で算出し（ステップＳ２４０４〜Ｓ２４０６参照）、
前記物品把持判定手段３０５により前記人１０６が前記取扱物品を把持したと判定されたとき、前記人１０６に、前記困難解消時間算出手段３１１により算出された困難解消時間の情報を情報出力装置３１４で提供する（ステップＳ２４０７参照）といった手順をコンピュータに実行させるための物品管理プログラムとして、構成することができる。
【０２３５】
《作用と効果》
以上の処理により、人１０６が物品を把持したときに、その物品の置き場所について、想定される障害物品除去時間を障害物品除去時間算出手段３１１により算出し、算出結果に基づいて人に情報提供を情報出力装置３１４により行うことができる。この結果、この情報に従って、人１０６が物品の置き場所を選べば良い、という最小限の手間で、以降の作業における無駄な時間の発生を防ぐことができる。
【０２３６】
なお、前記様々な実施形態のうちの任意の実施形態を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【産業上の利用可能性】
【０２３７】
本発明にかかる物品管理システム及び物品管理方法及び物品管理プログラムは、人とロボットアームが協調作業を行うシーンにおいて、人が把持した物品に対して、その置き場所について、想定される障害物品除去時間を算出し、算出結果に基づいて情報提供を行うことができるという機能を有する。これにより、家庭における家事支援ロボットアームにおいて、最小限の手間で、以降の作業における無駄な時間の発生を防ぎ、効率的に作業を実行できる物品管理システム等として有用である。また業務用途において、病院内搬送ロボットシステムやセル生産の支援ロボットシステム等の用途にも応用できる。
【図面の簡単な説明】
【０２３８】
【図１Ａ】本発明の１つの実施形態にかかる物品管理システム構成の一例を示す図
【図１Ｂ】図１Ａの物品管理システムのロボットアームの構成の一例を示す図
【図２Ａ】本発明の前記実施形態にかかる物品管理システムのロボットアームの配置の一例を示す断面図
【図２Ｂ】本発明の前記実施形態にかかる物品管理システムのロボットアームの配置の一例を示す断面図
【図２Ｃ】本発明の前記実施形態にかかる物品管理システムのロボットアームの配置の一例を示す断面図
【図２Ｄ】本発明の前記実施形態にかかる物品管理システムのロボットアームの配置の一例を示す断面図
【図３Ａ】本発明の前記実施形態にかかる物品管理システムにおける機能ブロック図
【図３Ｂ】図３Ａの本発明の前記実施形態にかかる物品管理システムの機能ブロック中のセンシング装置のさらに詳細な機能ブロック図
【図４】本発明の前記実施形態にかかる物品管理システムにおけるセンシング装置における画像センサの説明図
【図５Ａ】本発明の前記実施形態にかかる物品管理システムにおけるセンシング装置における処理画像（背景画像）の例を示す図
【図５Ｂ】本発明の前記実施形態にかかる物品管理システムにおけるセンシング装置における処理画像（人検出画像）の例を示す図
【図５Ｃ】本発明の前記実施形態にかかる物品管理システムにおけるセンシング装置における処理画像（差分画像）の例を示す図
【図６】本発明の前記実施形態にかかる物品管理システムにおけるセンシング装置におけるテンプレート画像の例を示す図
【図７】本発明の前記実施形態にかかる物品管理システムにおけるセンシング装置における超音波センサの説明図
【図８Ａ】本発明の前記実施形態にかかる物品管理システムにおけるセンシング装置における床圧力センサの説明図
【図８Ｂ】図８Ａの本発明の前記実施形態にかかる物品管理システムの機能ブロック中のセンシング装置のさらに詳細な機能ブロック図
【図９Ａ】本発明の前記実施形態にかかる物品管理システムにおけるセンシング検出手段における無線ＩＣタグセンサの説明図
【図９Ｂ】図９Ａの本発明の前記実施形態にかかる物品管理システムの機能ブロック中のセンシング装置のさらに詳細な機能ブロック図
【図１０Ａ】本発明の前記実施形態にかかる物品管理システムにおけるセンシング装置における重量センサの説明図
【図１０Ｂ】図１０Ａの本発明の前記実施形態にかかる物品管理システムの機能ブロック中のセンシング装置のさらに詳細な機能ブロック図
【図１１】本発明の前記実施形態にかかる物品管理システムにおける検出履歴データベースに記録される情報の例を示す図
【図１２Ａ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１２Ｂ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１２Ｃ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１３Ａ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１３Ｂ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１３Ｃ】図１３Ｂの本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報のうちの順序情報の例を示す図
【図１４Ａ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１４Ｂ】図１４Ａの本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報のうちの作業順序と実行回数との例を示す図
【図１５Ａ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１５Ｂ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１５Ｃ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１５Ｄ】本発明の前記実施形態にかかる物品管理システムにおける作業手順データベースに記録される情報の例を示す図
【図１６Ａ】本発明の前記実施形態にかかる物品管理システムにおける属性データベースに記録される情報の例を示す図
【図１６Ｂ】本発明の前記実施形態にかかる物品管理システムにおける属性データベースに記録される情報の例を示す図
【図１６Ｃ】本発明の前記実施形態にかかる物品管理システムにおける属性データベースに記録される情報の例を示す図
【図１７Ａ】本発明の前記実施形態にかかる物品管理システムにおける環境マップの例を示す図
【図１７Ｂ】図１７Ａの本発明の前記実施形態にかかる物品管理システムにおける環境マップにおいて、ガス台を９個に分割した例を示す図
【図１７Ｃ】図１７Ｂの本発明の前記実施形態にかかる物品管理システムにおける環境マップでガス台を９個に分割した例に関する環境マップデータベースの例を示す図
【図１８Ａ】本発明の前記実施形態にかかる物品管理システムにおけるアクセス判定手段におけるアクセス判定を説明するための具体例を示す図
【図１８Ｂ】本発明の前記実施形態にかかる物品管理システムにおけるアクセス判定手段におけるアクセス判定を説明するための具体例を示す図
【図１８Ｃ】本発明の前記実施形態にかかる物品管理システムにおけるアクセス判定手段におけるアクセス判定を説明するための具体例を示す図
【図１９】本発明の前記実施形態にかかる物品管理システムにおけるアクセス判定手段による干渉判定のフロー
【図２０】本発明の前記実施形態にかかる物品管理システムにおけるロボットアームが物品を動かそうとするときの様子を示す図
【図２１Ａ】本発明の前記実施形態にかかる物品管理システムにおけるロボットアームの先端部（ハンド部）が対象物品を丁度把持するときの先端部（ハンド部）の軌道の様子を示す図
【図２１Ｂ】本発明の前記実施形態にかかる物品管理システムにおいて、ロボットアームの先端部の現在位置から目標位置までを直線で繋いだ軌道を示す図
【図２２】本発明の前記実施形態にかかる物品管理システムにおけるアクセス判定手段の処理フローを説明する図
【図２３】本発明の前記実施形態にかかる物品管理システムにおける障害物品除去時間算出手段の処理内容を説明する図
【図２４】本発明の前記実施形態にかかる物品管理システムにおけるアクセス判定手段における具体例を示す図
【図２５】本発明の前記実施形態にかかる物品管理システムにおけるアクセス判定手段における具体例を示す図
【図２６】本発明の前記実施形態にかかる物品管理システムにおけるアクセス判定手段における具体例を示す図
【図２７】本発明の前記実施形態にかかる物品管理システムにおける障害物品除去時間算出手段の処理内容を説明する図
【図２８】本発明の前記実施形態にかかる物品管理システムにおける障害物品除去時間算出手段の処理内容を説明する図
【図２９Ａ】本発明の前記実施形態にかかる物品管理システムにおける情報出力装置による出力の具体例を示す図
【図２９Ｂ】本発明の前記実施形態にかかる物品管理システムにおける情報出力装置による出力の具体例を示す図
【図２９Ｃ】本発明の前記実施形態にかかる物品管理システムにおける情報出力装置による出力の具体例を示す図
【図３０】本発明の前記実施形態にかかる物品管理システムにおける制御手段が行う全体の処理のフローを説明する図
【図３１】本発明の課題となる具体的な状況を示す図
【符号の説明】
【０２３９】
１００  キッチンルーム
１０１  システムキッチン
１０２  家事支援ロボットアーム
１０２ａ  ロボットアームの先端部のハンド部
１０２ｂ  ロボットアームの本体根元部
１０３  液晶プロジェクタ
１０４  センサ
１０５  物品
１０６  人
１０７  ガス台
１０８  調理台
１０９  シンク
１１０  電子レンジ
１１１  食器洗浄器
１３０  ハンド駆動モータ
１３１  肘関節駆動モータ
１３２  肩関節駆動モータ
１３３  エンコーダ
２０１  レール
３０１  時刻取得手段
３０２  制御手段
３０３  センシング装置
３０４  検出履歴データベース
３０５  物品把持判定手段
３０６  作業手順データベース
３０７  作業進捗管理手段
３０８  作業手順データベース更新手段
３１０  アクセス判定手段
３１１  障害物品除去時間算出手段
３１２  環境マップデータベース
３１３  マップ管理手段
３１４  情報出力装置
３１５  属性データベース
３１６  記録情報データベース
３１７  入出力手段
４０２  カメラ
４０３  画像処理手段
８０２  圧力感知素子
８０３  圧力データ処理手段
９０２  読み取りアンテナ
９０４  無線ＩＣタグデータ処理手段
１００２  重量検出センサ
１００４  重量データ処理手段
１１０１  人検出履歴情報
１１０５  物品検出履歴情報
１１０９  ロボットアーム位置検出履歴情報
１２０１  作業手順データ
１２０２  工程データ
２３０１  物品データ
２３０２  ロボットデータ
２３０３  人データ
【図１Ａ】
0005100525.tif 000002
【図１Ｂ】
0005100525.tif 000003
【図２Ａ】
0005100525.tif 000004
【図２Ｂ】
0005100525.tif 000005
【図２Ｃ】
0005100525.tif 000006
【図２Ｄ】
0005100525.tif 000007
【図３Ａ】
0005100525.tif 000008
【図３Ｂ】
0005100525.tif 000009
【図４】
0005100525.tif 000010
【図５Ａ】
0005100525.tif 000011
【図５Ｂ】
0005100525.tif 000012
【図５Ｃ】
0005100525.tif 000013
【図６】
0005100525.tif 000014
【図７】
0005100525.tif 000015
【図８Ａ】
0005100525.tif 000016
【図８Ｂ】
0005100525.tif 000017
【図９Ａ】
0005100525.tif 000018
【図９Ｂ】
0005100525.tif 000019
【図１０Ａ】
0005100525.tif 000020
【図１０Ｂ】
0005100525.tif 000021
【図１１】
0005100525.tif 000022
【図１２Ａ】
0005100525.tif 000023
【図１２Ｂ】
0005100525.tif 000024
【図１２Ｃ】
0005100525.tif 000025
【図１３Ａ】
0005100525.tif 000026
【図１３Ｂ】
0005100525.tif 000027
【図１３Ｃ】
0005100525.tif 000028
【図１４Ａ】
0005100525.tif 000029
【図１４Ｂ】
0005100525.tif 000030
【図１５Ａ】
0005100525.tif 000031
【図１５Ｂ】
0005100525.tif 000032
【図１５Ｃ】
0005100525.tif 000033
【図１５Ｄ】
0005100525.tif 000034
【図１６Ａ】
0005100525.tif 000035
【図１６Ｂ】
0005100525.tif 000036
【図１６Ｃ】
0005100525.tif 000037
【図１７Ａ】
0005100525.tif 000038
【図１７Ｂ】
0005100525.tif 000039
【図１７Ｃ】
0005100525.tif 000040
【図１８Ａ】
0005100525.tif 000041
【図１８Ｂ】
0005100525.tif 000042
【図１８Ｃ】
0005100525.tif 000043
【図１９】
0005100525.tif 000044
【図２０】
0005100525.tif 000045
【図２１Ａ】
0005100525.tif 000046
【図２１Ｂ】
0005100525.tif 000047
【図２２】
0005100525.tif 000048
【図２３】
0005100525.tif 000049
【図２４】
0005100525.tif 000050
【図２５】
0005100525.tif 000051
【図２６】
0005100525.tif 000052
【図２７】
0005100525.tif 000053
【図２８】
0005100525.tif 000054
【図２９Ａ】
0005100525.tif 000055
【図２９Ｂ】
0005100525.tif 000056
【図２９Ｃ】
0005100525.tif 000057
【図３０】
0005100525.tif 000058
【図３１】
0005100525.tif 000059