(57)【要約】【課題】  異常をより迅速かつ精度よく検知することが望まれている。【解決手段】  制御装置が、対象物品が移送されている期間中に、マニピュレータの遠位端における力及びトルクの少なくとも一方の大きさを示す力覚情報を取得する力覚情報取得部と、対象物品の質量として予め定められた値を示す質量情報を取得する質量情報取得部と、マニピュレータの遠位端及び把持部の少なくとも一方の軌道に関する計画の内容を示す計画情報を取得する計画情報取得部と、質量情報及び計画情報に基づいて、マニピュレータが対象物品を移送した場合に、マニピュレータの遠位端において検出される力及びトルクの少なくとも一方の大きさを推定する力覚推定部と、力覚情報により示される力及びトルクの少なくとも一方の大きさ、並びに、力覚推定部が推定した力及びトルクの少なくとも一方の大きさに基づいて、異常を検知する第１検知部とを備える。【選択図】図１
2020069637.tif 000002
【特許請求の範囲】
【請求項１】
マニピュレータによる移送の対象となる対象物品が移送されている期間中に、前記マニピュレータの遠位端における力及びトルクの少なくとも一方の大きさを示す力覚情報を取得する力覚情報取得部と、
前記対象物品の質量として予め定められた値を示す質量情報を取得する質量情報取得部と、
前記マニピュレータの前記遠位端、及び、前記遠位端に配されて前記対象物品を把持するための把持部の少なくとも一方の軌道に関する計画の内容を示す計画情報を取得する計画情報取得部と、
前記質量情報及び前記計画情報に基づいて、前記マニピュレータが前記対象物品を移送した場合に、前記マニピュレータの前記遠位端において検出される力及びトルクの少なくとも一方の大きさを推定する力覚推定部と、
前記力覚情報により示される前記力及びトルクの少なくとも一方の大きさ、並びに、前記力覚推定部が推定した前記力及びトルクの少なくとも一方の大きさに基づいて、前記対象物品の移送に関する異常を検知する第１検知部と、
を備える、制御装置。
【請求項２】
前記力覚情報は、前記マニピュレータの前記遠位端における力及びトルクの少なくとも一方の大きさ及び方向を示し、
前記力覚推定部は、前記マニピュレータの前記遠位端における力及びトルクの少なくとも一方の大きさ及び方向を推定し、
前記第１検知部は、前記力覚情報により示される前記力及びトルクの少なくとも一方の大きさ及び方向、並びに、前記力覚推定部が推定した前記力及びトルクの少なくとも一方の大きさ及び方向に基づいて、前記対象物品の移送に関する異常を検出する、
請求項１に記載の制御装置。
【請求項３】
前記第１検知部は、前記力覚情報により示される前記力及びトルクの少なくとも一方の大きさと、前記力覚推定部が推定した前記力及びトルクの少なくとも一方の大きさとの差の絶対値が、第１閾値よりも大きい場合に、前記異常を検知する、
請求項１又は請求項２に記載の制御装置。
【請求項４】
前記第１検知部は、前記力覚情報により示される前記力及びトルクの少なくとも一方の大きさと、前記力覚推定部が推定した前記力及びトルクの少なくとも一方の大きさとの差の絶対値が第１閾値よりも大きな状態の継続期間の長さが、第２閾値よりも大きい場合に、前記異常を検知する、
請求項１又は請求項２に記載の制御装置。
【請求項５】
前記第１閾値は、前記力覚情報取得部による前記力覚情報の取得に関する遅延時間の長さが大きいほど前記第１閾値が大きくなるように、決定される、
請求項３又は請求項４に記載の制御装置。
【請求項６】
前記力覚情報は、複数の時刻を示す情報と、各時刻における前記遠位端における力及びトルクの少なくとも一方の大きさを示す情報とを含み、
前記計画情報は、前記対象物品が前記軌道上の基準位置を通過してからの複数の経過時間を示す情報と、各経過時間における前記マニピュレータに含まれる複数の関節のそれぞれの角度を示す情報とを含み、
前記力覚推定部は、
前記計画情報に基づいて、前記複数の経過時間のそれぞれにおける、前記遠位端において検出される力及びトルクの少なくとも一方の大きさを推定し、
前記複数の経過時間のそれぞれと、前記推定された力及びトルクの少なくとも一方の大きさとが対応付けられた推定情報を出力し、
前記第１検知部は、
前記力覚情報に含まれる前記複数の時刻を示す情報と、前記推定情報に含まれる前記複数の経過時間のそれぞれを示す情報とに基づいて、前記力覚情報に含まれる前記力及びトルクの少なくとも一方の大きさを示す情報と、前記推定情報に含まれる前記力及びトルクの少なくとも一方の大きさを示す情報とを対応付け、
対応付けられた前記力覚情報に含まれる前記力及びトルクの少なくとも一方の大きさを示す情報、及び、前記推定情報に含まれる前記力及びトルクの少なくとも一方の大きさを示す情報に基づいて、前記対象物品の移送に関する異常を検知する、
請求項１から請求項５までの何れか一項に記載の制御装置。
【請求項７】
前記マニピュレータに含まれる複数の関節のそれぞれの角度を示す角度情報を取得する角度情報取得部をさらに備え、
前記角度情報は、複数の時刻を示す情報と、各時刻における前記複数の関節のそれぞれの角度を示す情報とを含み、
前記力覚情報は、複数の時刻を示す情報と、各時刻における前記遠位端における力及びトルクの少なくとも一方の大きさを示す情報とを含み、
前記力覚推定部は、
前記計画情報に基づいて、前記軌道上の複数の位置のそれぞれにおける前記複数の関節のそれぞれの角度を決定し、
前記軌道上の複数の位置のそれぞれにおける、前記遠位端において検出される力及びトルクの少なくとも一方の大きさを推定し、
前記複数の関節のそれぞれの角度と、前記推定された力及びトルクの少なくとも一方の大きさとが対応付けられた推定情報を出力し、
前記第１検知部は、
前記角度情報及び前記力覚情報のそれぞれに含まれる前記複数の時刻を示す情報に基づいて、前記複数の関節のそれぞれの角度を示す情報と、前記遠位端における力及びトルクの少なくとも一方の大きさを示す情報とを対応付け、
前記複数の関節のそれぞれの角度を示す情報に基づいて、前記力覚情報に含まれる前記力及びトルクの少なくとも一方の大きさを示す情報と、前記推定情報に含まれる前記力及びトルクの少なくとも一方の大きさを示す情報とを対応付け、
対応付けられた前記力覚情報に含まれる前記力及びトルクの少なくとも一方の大きさを示す情報、及び、前記推定情報に含まれる前記力及びトルクの少なくとも一方の大きさを示す情報に基づいて、前記対象物品の移送に関する異常を検知する、
請求項１から請求項５までの何れか一項に記載の制御装置。
【請求項８】
前記対象物品の移送に関する異常は、前記対象物品の識別不良、前記対象物品の把持不良、前記対象物品の落下、前記対象物品の破損、及び、前記対象物品の衝突の少なくとも１つである、
請求項１から請求項７までの何れか一項に記載の制御装置。
【請求項９】
前記把持部に配された減圧室の内部の圧力の大きさを示す減圧情報を取得する減圧情報取得部をさらに備え、
前記第１検知部は、（ｉ）前記減圧情報により示される圧力に関する異常、及び、前記力覚情報により示される前記対象物品の質量に関する異常が検知されず、且つ、（ｉｉ）前記力覚情報により示される前記対象物品の重心に関する異常が検知された場合に、前記対象物品の破損を検知する、
請求項１から請求項８までの何れか一項に記載の制御装置。
【請求項１０】
前記対象物品が前記マニピュレータに把持される前の時点における前記対象物品の画像データを取得する画像情報取得部と、
前記画像データに基づいて、前記対象物品の重心の位置を推定する重心推定部と、
前記把持部による前記対象物品の把持位置を決定する把持位置決定部と、
をさらに備え、
前記力覚推定部は、前記質量情報により示される前記対象物品の質量と、前記重心推定部が推定した前記対象物品の重心の位置と、前記把持位置決定部が決定した前記把持位置とに基づいて、前記把持部が、前記対象物品の前記把持位置を把持して、前記対象物品を拳上した場合に、前記遠位端において検出される力及びトルクの少なくとも一方の大きさを推定し、
前記第１検知部は、前記力覚情報により示される前記力及びトルクの少なくとも一方の大きさ、並びに、前記力覚推定部が推定した前記力及びトルクの少なくとも一方の大きさに基づいて、前記対象物品の識別不良、前記対象物品の把持不良、及び、前記対象物品の破損の少なくとも１つを検知する、
請求項１から請求項９までの何れか一項に記載の制御装置。
【請求項１１】
前記対象物品が前記マニピュレータに把持される前の時点における前記対象物品の画像データを取得する画像情報取得部と、
前記画像データに基づいて、前記対象物品の上面の幾何中心の位置を特定する幾何中心特定部と、
前記把持部による前記対象物品の把持位置を決定する把持位置決定部と、
（ｉ）前記把持部が、前記対象物品の前記把持位置を把持して、前記対象物品を拳上した場合に、前記力覚情報により示される前記力及びトルクの少なくとも一方の大きさ、並びに、（ｉｉ）前記対象物品の前記把持位置に基づいて、前記対象物品の重心の位置を特定する重心特定部と、
前記対象物品の前記上面の前記幾何中心の位置と、前記対象物品の重心が前記対象物品の前記上面に投影された位置との距離が、第３閾値よりも大きい場合に、前記対象物品の識別不良、前記対象物品の把持不良、及び、前記対象物品の破損の少なくとも１つを検知する第２検知部と、
をさらに備える、
請求項１から請求項９までの何れか一項に記載の制御装置。
【請求項１２】
前記対象物品が前記マニピュレータに把持される前の時点における前記対象物品の画像データを取得する画像情報取得部と、
前記画像データに基づいて、前記対象物品の上面の幾何中心の位置を特定する幾何中心特定部と、
前記把持部による前記対象物品の把持位置を決定する把持位置決定部と、
（ｉ）前記把持部が、前記対象物品の前記把持位置を把持して、前記対象物品を拳上した場合に、前記力覚情報により示される前記力及びトルクの少なくとも一方の大きさ、並びに、（ｉｉ）前記対象物品の前記把持位置に基づいて、前記対象物品の重心の位置を特定する重心特定部と、
をさらに備え、
前記把持位置決定部は、前記対象物品の前記上面の前記幾何中心の位置と、前記対象物品の重心が前記対象物品の前記上面に投影された位置との距離が、第３閾値よりも大きい場合に、前記対象物品の前記把持位置としてより適切な位置を決定する、
請求項１から請求項９までの何れか一項に記載の制御装置。
【請求項１３】
（ｉ）前記把持部が前記対象物品を拳上した場合に、前記力覚情報により示される前記力及びトルクの少なくとも一方の大きさに基づいて決定される前記対象物品の質量と、（ｉｉ）前記質量情報により示される前記対象物品の質量との差の絶対値が、第４閾値よりも大きい場合に、前記対象物品の識別不良、前記対象物品の把持不良、及び、前記対象物品の破損の少なくとも１つを検知する第３検知部をさらに備える、
請求項１から請求項１２までの何れか一項に記載の制御装置。
【請求項１４】
前記第１検知部が前記異常を検知した場合に、前記対象物品の移送速度を調整することを決定する調整部をさらに備える、
請求項１から請求項１３までの何れか一項に記載の制御装置。
【請求項１５】
請求項１から請求項１４までの何れか一項に記載の制御装置と、
前記マニピュレータと、
を備える、移送装置。
【請求項１６】
コンピュータを、請求項１から請求項１４までの何れか一項に記載の制御装置として機能させるためのプログラム。
【請求項１７】
マニピュレータによる移送の対象となる対象物品が移送されている期間中に、前記マニピュレータの遠位端における力及びトルクの少なくとも一方の大きさを示す力覚情報を取得する力覚情報取得段階と、
前記対象物品の質量として予め定められた値を示す質量情報を取得する質量情報取得段階と、
前記マニピュレータの前記遠位端、及び、前記遠位端に配されて前記対象物品を把持するための把持部の少なくとも一方の軌道に関する計画の内容を示す計画情報を取得する計画情報取得段階と、
前記質量情報及び前記計画情報に基づいて、前記対象物品が移送される場合に、前記マニピュレータの前記遠位端において検出される力及びトルクの少なくとも一方の大きさを推定する力覚推定段階と、
前記力覚情報により示される前記力及びトルクの少なくとも一方の大きさ、並びに、前記力覚推定段階において推定された前記力及びトルクの少なくとも一方の大きさに基づいて、前記対象物品の移送に関する異常を検知する第１検知段階と、
を有する、制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、移送装置、プログラム、及び、制御方法に関する。
【背景技術】
【０００２】
ロボットアームを用いて物品を移載する移載装置が知られている（例えば、特許文献１及び非特許文献１を参照されたい）。
［先行技術文献］
［非特許文献］
［非特許文献１］  株式会社イシダ、「ダイナミック計量システム  IMAS-G」、［Ｏｎｌｉｎｅ］、［令和元年７月１５日検索］、インターネット＜https://www.ishida.co.jp/ww/jp/products/weighing/dynamicweighingsystem/imas-g.cfm＞
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ワークの移載中に、ワークの破損、落下などの各種の異常が発生することがある。そのため、ワークの移載に関する異常をより迅速かつ精度よく検知することが望まれている。
【課題を解決するための手段】
【０００４】
本発明の第１の態様においては、制御装置が提供される。上記の制御装置は、例えば、マニピュレータによる移送の対象となる対象物品が移送されている期間中に、マニピュレータの遠位端における力及びトルクの少なくとも一方の大きさを示す力覚情報を取得する力覚情報取得部を備える。上記の制御装置は、例えば、対象物品の質量として予め定められた値を示す質量情報を取得する質量情報取得部を備える。上記の制御装置は、例えば、マニピュレータの遠位端、及び、遠位端に配されて対象物品を把持するための把持部の少なくとも一方の軌道に関する計画の内容を示す計画情報を取得する計画情報取得部を備える。上記の制御装置は、例えば、質量情報及び計画情報に基づいて、マニピュレータが対象物品を移送した場合に、マニピュレータの遠位端において検出される力及びトルクの少なくとも一方の大きさを推定する力覚推定部を備える。上記の制御装置は、例えば、力覚情報により示される力及びトルクの少なくとも一方の大きさ、並びに、力覚推定部が推定した力及びトルクの少なくとも一方の大きさに基づいて、対象物品の移送に関する異常を検知する第１検知部を備える。
【０００５】
上記の制御装置において、力覚情報は、マニピュレータの遠位端における力及びトルクの少なくとも一方の大きさ及び方向を示してよい。上記の制御装置において、力覚推定部は、マニピュレータの遠位端における力及びトルクの少なくとも一方の大きさ及び方向を推定してよい。上記の制御装置において、第１検知部は、力覚情報により示される力及びトルクの少なくとも一方の大きさ及び方向、並びに、力覚推定部が推定した力及びトルクの少なくとも一方の大きさ及び方向に基づいて、対象物品の移送に関する異常を検出してよい。
【０００６】
上記の制御装置において、第１検知部は、力覚情報により示される力及びトルクの少なくとも一方の大きさと、力覚推定部が推定した力及びトルクの少なくとも一方の大きさとの差の絶対値が、第１閾値よりも大きい場合に、異常を検知してよい。上記の制御装置において、第１検知部は、力覚情報により示される力及びトルクの少なくとも一方の大きさと、力覚推定部が推定した力及びトルクの少なくとも一方の大きさとの差の絶対値が第１閾値よりも大きな状態の継続期間の長さが、第２閾値よりも大きい場合に、異常を検知してよい。上記の制御装置において、第１閾値は、力覚情報取得部による力覚情報の取得に関する遅延時間の長さが大きいほど第１閾値が大きくなるように、決定されてよい。
【０００７】
上記の制御装置において、力覚情報は、複数の時刻を示す情報と、各時刻における遠位端における力及びトルクの少なくとも一方の大きさを示す情報とを含んでよい。上記の制御装置において、計画情報は、対象物品が軌道上の基準位置を通過してからの複数の経過時間を示す情報と、各経過時間におけるマニピュレータに含まれる複数の関節のそれぞれの角度を示す情報とを含んでよい。上記の制御装置において、力覚推定部は、計画情報に基づいて、複数の経過時間のそれぞれにおける、遠位端において検出される力及びトルクの少なくとも一方の大きさを推定してよい。力覚推定部は、複数の経過時間のそれぞれと、推定された力及びトルクの少なくとも一方の大きさとが対応付けられた推定情報を出力してよい。上記の制御装置において、第１検知部は、力覚情報に含まれる複数の時刻を示す情報と、推定情報に含まれる複数の経過時間のそれぞれを示す情報とに基づいて、力覚情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報と、推定情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報とを対応付けてよい。第１検知部は、対応付けられた力覚情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報、及び、推定情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報に基づいて、対象物品の移送に関する異常を検知してよい。
【０００８】
上記の制御装置は、マニピュレータに含まれる複数の関節のそれぞれの角度を示す角度情報を取得する角度情報取得部を備えてよい。上記の制御装置において、角度情報は、複数の時刻を示す情報と、各時刻における複数の関節のそれぞれの角度を示す情報とを含んでよい。上記の制御装置において、力覚情報は、複数の時刻を示す情報と、各時刻における遠位端における力及びトルクの少なくとも一方の大きさを示す情報とを含んでよい。上記の制御装置において、力覚推定部は、計画情報に基づいて、軌道上の複数の位置のそれぞれにおける複数の関節のそれぞれの角度を決定してよい。力覚推定部は、軌道上の複数の位置のそれぞれにおける、遠位端において検出される力及びトルクの少なくとも一方の大きさを推定してよい。力覚推定部は、複数の関節のそれぞれの角度と、推定された力及びトルクの少なくとも一方の大きさとが対応付けられた推定情報を出力してよい。上記の制御装置において、第１検知部は、角度情報及び力覚情報のそれぞれに含まれる複数の時刻を示す情報に基づいて、複数の関節のそれぞれの角度を示す情報と、遠位端における力及びトルクの少なくとも一方の大きさを示す情報とを対応付けてよい。第１検知部は、複数の関節のそれぞれの角度を示す情報に基づいて、力覚情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報と、推定情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報とを対応付けてよい。第１検知部は、対応付けられた力覚情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報、及び、推定情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報に基づいて、対象物品の移送に関する異常を検知してよい。
【０００９】
上記の制御装置において、対象物品の移送に関する異常は、対象物品の識別不良、対象物品の把持不良、対象物品の落下、対象物品の破損、及び、対象物品の衝突の少なくとも１つであってよい。
【００１０】
上記の制御装置は、把持部に配された減圧室の内部の圧力の大きさを示す減圧情報を取得する減圧情報取得部を備えてよい。上記の制御装置において、第１検知部は、（ｉ）減圧情報により示される圧力に関する異常、及び、力覚情報により示される対象物品の質量に関する異常が検知されず、且つ、（ｉｉ）力覚情報により示される対象物品の重心に関する異常が検知された場合に、対象物品の破損を検知してよい。
【００１１】
上記の制御装置は、対象物品がマニピュレータに把持される前の時点における対象物品の画像データを取得する画像情報取得部を備えてよい。上記の制御装置は、画像データに基づいて、対象物品の重心の位置を推定する重心推定部を備えてよい。上記の制御装置は、把持部による対象物品の把持位置を決定する把持位置決定部を備えてよい。上記の制御装置において、力覚推定部は、質量情報により示される対象物品の質量と、重心推定部が推定した対象物品の重心の位置と、把持位置決定部が決定した把持位置とに基づいて、把持部が、対象物品の把持位置を把持して、対象物品を拳上した場合に、遠位端において検出される力及びトルクの少なくとも一方の大きさを推定てよい。上記の制御装置において、第１検知部は、力覚情報により示される力及びトルクの少なくとも一方の大きさ、並びに、力覚推定部が推定した力及びトルクの少なくとも一方の大きさに基づいて、対象物品の識別不良、対象物品の把持不良、及び、対象物品の破損の少なくとも１つを検知してよい。
【００１２】
上記の制御装置は、対象物品がマニピュレータに把持される前の時点における対象物品の画像データを取得する画像情報取得部を備えてよい。上記の制御装置は、画像データに基づいて、対象物品の上面の幾何中心の位置を特定する幾何中心特定部を備えてよい。上記の制御装置は、把持部による対象物品の把持位置を決定する把持位置決定部を備えてよい。上記の制御装置は、（ｉ）把持部が、対象物品の把持位置を把持して、対象物品を拳上した場合に、力覚情報により示される力及びトルクの少なくとも一方の大きさ、並びに、（ｉｉ）対象物品の把持位置に基づいて、対象物品の重心の位置を特定する重心特定部を備えてよい。上記の制御装置は、対象物品の上面の幾何中心の位置と、対象物品の重心が対象物品の上面に投影された位置との距離が、第３閾値よりも大きい場合に、対象物品の識別不良、対象物品の把持不良、及び、対象物品の破損の少なくとも１つを検知する第２検知部を備えてよい。
【００１３】
上記の制御装置は、対象物品がマニピュレータに把持される前の時点における対象物品の画像データを取得する画像情報取得部を備えてよい。上記の制御装置は、画像データに基づいて、対象物品の上面の幾何中心の位置を特定する幾何中心特定部を備えてよい。上記の制御装置は、把持部による対象物品の把持位置を決定する把持位置決定部を備えてよい。上記の制御装置は、（ｉ）把持部が、対象物品の把持位置を把持して、対象物品を拳上した場合に、力覚情報により示される力及びトルクの少なくとも一方の大きさ、並びに、（ｉｉ）対象物品の把持位置に基づいて、対象物品の重心の位置を特定する重心特定部を備えてよい。上記の制御装置において、把持位置決定部は、対象物品の上面の幾何中心の位置と、対象物品の重心が対象物品の上面に投影された位置との距離が、第３閾値よりも大きい場合に、対象物品の把持位置としてより適切な位置を決定してよい。
【００１４】
上記の制御装置は、（ｉ）把持部が対象物品を拳上した場合に、力覚情報により示される力及びトルクの少なくとも一方の大きさに基づいて決定される対象物品の質量と、（ｉｉ）質量情報により示される対象物品の質量との差の絶対値が、第４閾値よりも大きい場合に、対象物品の識別不良、対象物品の把持不良、及び、対象物品の破損の少なくとも１つを検知する第３検知部を備えてよい。上記の制御装置は、第１検知部が異常を検知した場合に、対象物品の移送速度を調整することを決定する調整部を備えてよい。
【００１５】
本発明の第２の態様においては、移送装置が提供される。上記の移送装置は、例えば、上記の第１の態様に係る各種の制御装置を備える。上記の移送装置は、例えば、マニピュレータを備える。
【００１６】
本発明の第３の態様においては、制御方法が提供される。上記の制御方法は、例えば、マニピュレータによる移送の対象となる対象物品が移送されている期間中に、マニピュレータの遠位端における力及びトルクの少なくとも一方の大きさを示す力覚情報を取得する力覚情報取得段階を有する。上記の制御方法は、例えば、対象物品の質量として予め定められた値を示す質量情報を取得する質量情報取得段階を有する。上記の制御方法は、例えば、マニピュレータの遠位端、及び、遠位端に配されて対象物品を把持するための把持部の少なくとも一方の軌道に関する計画の内容を示す計画情報を取得する計画情報取得段階を有する。上記の制御方法は、例えば、質量情報及び計画情報に基づいて、対象物品が移送される場合に、マニピュレータの遠位端において検出される力及びトルクの少なくとも一方の大きさを推定する力覚推定段階を有する。上記の制御方法は、例えば、力覚情報により示される力及びトルクの少なくとも一方の大きさ、並びに、力覚推定部が推定した力及びトルクの少なくとも一方の大きさに基づいて、対象物品の移送に関する異常を検知する第１検知段階を有する。
【００１７】
本発明の第４の態様においては、プログラムが提供される。上記のプログラムを格納する非一時的コンピュータ可読媒体が提供されてもよい。上記のプログラムは、コンピュータを、上記の第１の態様に係る各種の制御装置として機能させるためのプログラムであってよい。上記のプログラムは、コンピュータに、上記の第３の態様に係る制御方法を実行させるためのプログラムであってよい。
【００１８】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００１９】
【図１】移載システム１００のシステム構成の一例を概略的に示す。
【図２】ロボット１３０のシステム構成の一例を概略的に示す。
【図３】把持部材２４６の一例を概略的に示す。
【図４】移載制御装置１５０の内部構成の一例を概略的に示す。
【図５】移載制御部４３６の内部構成一例を概略的に示す。
【図６】把持部材２４６の軌道の一例を概略的に示す。
【図７】異常検知部５４４の内部構成の一例を概略的に示す。
【図８】変更部５４６の内部構成の一例を概略的に示す。
【図９】移載システム１００による移載処理の一例を概略的に示す。
【図１０】コンピュータ３０００の内部構成の一例を概略的に示す。
【発明を実施するための形態】
【００２０】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、図面において、同一または類似の部分には同一の参照番号を付して、重複する説明を省く場合がある。
【００２１】
［移載システム１００の概要］
図１は、移載システム１００のシステム構成の一例を概略的に示す。本実施形態において、移載システム１００は、例えば、１以上のデパレタイズ用プラットフォーム１１０と、１以上の荷受用プラットフォーム１２０と、１以上のロボット１３０と、移載制御装置１５０と、１以上の撮像装置１６０とを備える。本願明細書において、「１以上」という用語は、「１又は複数」を意味する。
【００２２】
本実施形態において、荷受用プラットフォーム１２０は、例えば、ロボット１３０が把持しているパッケージ１０２（ワークと称される場合がある。）を検出するためのセンサ１８０及びセンサ１９０を有する。本実施形態において、ロボット１３０は、例えば、ロボットアーム１３２と、駆動制御部１３４と、エンドエフェクタ１４０とを有する。
【００２３】
移載システム１００の各部は、通信ネットワークを介して、互いに情報を送受してよい。本実施形態において、通信ネットワークは、有線通信の伝送路であってもよく、無線通信の伝送路であってもよく、無線通信の伝送路及び有線通信の伝送路の組み合わせであってもよい。通信ネットワークは、無線パケット通信網、インターネット、Ｐ２Ｐネットワーク、専用回線、ＶＰＮ、電力線通信回線などを含んでもよい。通信ネットワークは、（ｉ）携帯電話回線網などの移動体通信網を含んでもよく、（ｉｉ）無線ＭＡＮ（例えば、ＷｉＭＡＸ（登録商標）である。）、無線ＬＡＮ（例えば、ＷｉＦｉ（登録商標）である。）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｚｉｇｂｅｅ（登録商標）、ＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）などの無線通信網を含んでもよい。
【００２４】
本実施形態において、移載システム１００は、パッケージ１０２を、デパレタイズ用プラットフォーム１１０から荷受用プラットフォーム１２０に移載する。例えば、移載システム１００は、ロボット１３０を用いて、デパレタイズ用プラットフォーム１１０に搭載された１以上のパッケージ１０２を、１個ずつ、荷受用プラットフォーム１２０に移載する。
【００２５】
パッケージ１０２は、商品の梱包に使用される包装資材、又は、サービスの提供に使用される包装資材であってよい。パッケージ１０２は、箱状の包装資材であってよい。パッケージ１０２の中には、単一の商品又は物品が入っていてもよく、複数の商品又は物品が入っていてもよい。
【００２６】
一実施形態において、同一の種類の商品の梱包には、外観が同一又は類似する包装資材が使用される。また、同一の物流サービスの提供には、外観が同一又は類似する包装資材が使用される。他の実施形態において、例えば、包装資材が再利用された結果、外観が同一又は類似する２つの包装資材の内容物の種類が互いに異なることがある。
【００２７】
本実施形態において、移載システム１００は、パッケージ１０２の移載に関連して、登録処理と、計画処理と、移送処理とを実行する。本実施形態において、移載システム１００は、ロボットアーム１３２が未登録のパッケージ１０２をデパレタイズ用プラットフォーム１１０から荷受用プラットフォーム１２０に移載する間に、当該未登録のパッケージの登録処理を実行する。
【００２８】
本実施形態において、移載システム１００は、既登録のパッケージ１０２については、登録処理を省略してよい。なお、ロボットアーム１３２が既登録のパッケージ１０２をデパレタイズ用プラットフォーム１１０から荷受用プラットフォーム１２０に移載する間に、登録されたデータと、実測されたデータとの間の齟齬が発見される可能性がある。この場合、移載システム１００は、既登録のパッケージ１０２が移載される間に、当該既登録のパッケージ１０２のデータを更新してよい。
【００２９】
登録処理において、移載システム１００は、パッケージ１０２の特性をデータベースに登録する。パッケージ１０２の特性としては、寸法、形状、外観の特徴、質量、重心の位置、把持位置、把持態様などが例示される。外観の特徴としては、外観に付された文字、記号、符号、写真、イラスト、模様などが例示される。パッケージ１０２の重心の位置は、パッケージ１０２の基準点と、パッケージ１０２の重心との相対位置であってよい。
【００３０】
計画処理において、移載システム１００は、デパレタイズ用プラットフォーム１１０に配された１以上のパッケージ１０２のうち、移載処理の対象となるパッケージ１０２（上述されたとおり、ワークと称される場合がある。）を決定する。また、移載システム１００は、ワークの移載に関連して、ロボットアーム１３２の手首部分（遠位端と称される場合がある。）の軌道、及び、エンドエフェクタ１４０の軌道の少なくとも一方を計画する。移載システム１００は、例えば、ロボット１３０がデパレタイズ用プラットフォーム１１０に配されたワークを把持し、ロボット１３０が当該ワークを荷受用プラットフォーム１２０に載置するまでの間の軌道を計画する。
【００３１】
軌道は、ロボット１３０の手首部分又はエンドエフェクタ１４０の位置及び姿勢の経時変化を示す。一実施形態において、軌道は、複数のタイミングを示す情報と、各タイミングにおけるロボットアーム１３２に含まれる複数の関節のそれぞれの角度を示す情報とにより表される。複数のタイミングを示す情報は、ワークが基準位置を通過してからの時間を示す情報であってよい。複数の関節のそれぞれの角度を示す情報は、各関節の角度を直接的に示す情報であってもよく、各関節の角度を間接的に示す情報であってもよい。各関節の角度を間接的に示す情報としては、ロボット１３０の手首部分又はエンドエフェクタ１４０の位置及び姿勢を示す情報、各関節の角度を特定の値にするためのモータの出力を示す情報などが例示される。
【００３２】
移送処理において、移載システム１００は、ロボットアーム１３２の手首部分又はエンドエフェクタ１４０が、計画処理において計画された軌道に沿って移動するように、ロボット１３０の動作を制御する。移送処理は、例えば、接近工程、把持工程、拳上工程、移動工程、載置工程、及び、解放工程を含む。
【００３３】
接近工程において、ロボットアーム１３２が、エンドエフェクタ１４０を、デパレタイズ用プラットフォーム１１０に配されたワークに接近させる。把持工程において、エンドエフェクタ１４０が、ワークを把持する。拳上工程において、ロボットアーム１３２が、エンドエフェクタ１４０に把持されたワークを持ち上げる。移動工程において、ロボットアーム１３２が、エンドエフェクタ１４０に把持されたワークを、荷受用プラットフォーム１２０の上方まで移動させる。載置工程において、ロボットアーム１３２が、エンドエフェクタ１４０に把持されたワークを、荷受用プラットフォーム１２０の上に載置する。解放工程において、エンドエフェクタ１４０が、ワークを解放する。
【００３４】
本実施形態において、移載システム１００は、ワークの移送に関する異常を検知する。移載システム１００は、ワークの質量及び重心の実測値に基づいて、ワークの移送に関する異常を検知してよい。これにより、移載システム１００は、ワークの移送に関する異常をより迅速かつ精度よく検知することができる。ワークの移送に関する異常が検出された場合、移載システム１００は、ワークの移動速度を調整してもよく、ワークの移送処理を停止してもよい。
【００３５】
ワークの移送に関する異常としては、ワークの識別不良、ワークの把持不良、ワークの押圧過多、ワークの落下、ワークの破損、及び、ワークの衝突の少なくとも１つが例示される。ワークの識別不良としては、ワークのエッジの誤判定、ワークの特性の誤識別などが例示される。ワークの特性の誤識別としては、ワークの外観の画像認識の誤り、ワークの識別に利用されたデータベースに登録された情報の誤りなどが例示される。
【００３６】
例えば、ワークの外観の特徴に基づいて当該ワークの特性を識別する場合、移載システム１００は、まず、ワークの画像を解析して、ワークのエッジを判定する。次に、移載システム１００は、ワークの画像を解析して、ワークの外観の特徴を抽出する。移載システム１００は、商品又はサービスごとに、当該商品又はサービスに使用されるパッケージの外観の特徴と、当該パッケージの特性とを対応付けて格納するデータベースにアクセスして、抽出された特徴に合致するパッケージの特性を示す情報を取得する。この場合において、ワークのエッジを正しく判定することができなかった場合、ワークの外観の特徴を正しく抽出することができなかった場合、又は、データベースの内容に誤りがあった場合には、ワークの特性を正しく識別することができない。
【００３７】
ワークの把持不良としては、ワークの把持位置が不適切である場合、ワークの把持強度が不十分である場合などが例示される。ワークの押圧過多としては、（ｉ）ワークの把持工程におけるエンドエフェクタ１４０の高さに関する設定の誤りに起因して、エンドエフェクタ１４０がワークを過度に押し付ける場合、（ｉｉ）ワークの解放工程におけるエンドエフェクタ１４０の高さに関する設定の誤りに起因して、エンドエフェクタ１４０がワークを過度に押し付ける場合、（ｉｉｉ）ワークの高さに関するデータベースの誤りに起因して、エンドエフェクタ１４０がワークを過度に押し付ける場合などが例示される。
【００３８】
ワークの落下としては、ワークの全体の落下、ワークの一部の落下などが例示される。ワークの破損としては、ワークの形状の過度な変形、ワークの一部の分離、ワークの内容物の配置の過度な変更などが例示される。ワークの衝突としては、ワークと荷受用プラットフォーム１２０との衝突、ワークと他のワークとの衝突などが例示される。
【００３９】
［移載システム１００の各部の概要］
本実施形態において、デパレタイズ用プラットフォーム１１０は、１以上のパッケージ１０２を搭載する。デパレタイズ用プラットフォーム１１０は、パレットであってよい。
【００４０】
本実施形態において、荷受用プラットフォーム１２０は、ロボット１３０により、デパレタイズ用プラットフォーム１１０から取り出され、荷受用プラットフォーム１２０に載置されたパッケージ１０２を、予め定められた地点まで搬送する。荷受用プラットフォーム１２０は、コンベアであってよい。荷受用プラットフォーム１２０は、１以上のコンベアを含んでよい。
【００４１】
本実施形態において、ロボット１３０は、パッケージ１０２の移送処理を実行する。ロボット１３０の各部の詳細は後述される。
【００４２】
本実施形態において、ロボットアーム１３２は、マニピュレータを有してよい。上記のマニピュレータは、多関節マニピュレータであってよい。
【００４３】
本実施形態において、駆動制御部１３４は、ロボットアーム１３２及びエンドエフェクタ１４０の動作を制御する。駆動制御部１３４は、移載制御装置１５０からの指示に従って、ロボットアーム１３２及びエンドエフェクタ１４０の動作を制御してよい。駆動制御部１３４は、ロボットアーム１３２に配された１以上のセンサの出力を取得してよい。駆動制御部１３４は、エンドエフェクタ１４０に配された１以上のセンサの出力を取得してよい。駆動制御部１３４は、上記のセンサの出力を移載制御装置１５０に送信してよい。
【００４４】
本実施形態において、エンドエフェクタ１４０は、パッケージ１０２を把持したり、解放したりする。例えば、エンドエフェクタ１４０は、デパレタイズ用プラットフォーム１１０に配されたパッケージ１０２を把持する。エンドエフェクタ１４０は、パッケージ１０２が荷受用プラットフォーム１２０の上方の予め定められた位置に移送されるまで、パッケージ１０２を把持する。その後、エンドエフェクタ１４０は、パッケージ１０２を解放する。
【００４５】
本実施形態において、移載制御装置１５０は、移載システム１００の各部の状態を監視する。また、移載制御装置１５０は、移載システム１００の各部の動作を制御する。移載制御装置１５０の詳細は後述される。
【００４６】
本実施形態において、撮像装置１６０は、デパレタイズ用プラットフォーム１１０を撮像し、デパレタイズ用プラットフォーム１１０の画像データを移載制御装置１５０に出力する。撮像装置１６０は、デパレタイズ用プラットフォーム１１０の上方に配されてよい。これにより、移載制御装置１５０は、デパレタイズ用プラットフォーム１１０に搭載されたパッケージ１０２の上面の画像データを取得することができる。
【００４７】
撮像装置１６０は、それぞれが異なる位置に配された複数のカメラ又はセンサを有してよい。上記の複数のカメラ又はセンサのそれぞれは、単体で、被写体の２次元画像、３次元画像、又は、距離画像（点群と称される場合がある）を出力してよい。撮像装置１６０は、複数のカメラ又はセンサの出力を加工して、被写体の３次元画像、又は、距離画像（点群と称される場合がある）を出力してもよい。画像は、静止画像であってもよく、動画像であってもよい。
【００４８】
なお、本実施形態においては、撮像装置１６０がデパレタイズ用プラットフォーム１１０を撮像する場合を例として、移載システム１００の詳細が説明される。しかしながら、撮像装置１６０の被写体は本実施形態に限定されない。他の実施形態において、撮像装置１６０は、デパレタイズ用プラットフォーム１１０、及び、荷受用プラットフォーム１２０を撮像する。撮像装置１６０は、デパレタイズ用プラットフォーム１１０の全体を撮像してもよい。
【００４９】
本実施形態において、センサ１８０は、ワークの高さを検出するために使用される。センサ１８０は、物体の有無を検出することができるセンサであれば、その詳細は特に限定されない。センサ１８０は、光、レーザ、超音波などを用いた非接触型の物体検出センサであってよい。センサ１８０は、接触型の物体検出センサであってもよい。
【００５０】
例えば、ロボット１３０は、センサ１８０の上方の所定の高さまでワークを拳上した後、当該ワークをゆっくりと下降させる。この間、ロボット１３０は、エンドエフェクタ１４０の位置及び姿勢を示す情報を、移載制御装置１５０に出力する。センサ１８０がワークの存在を検出すると、センサ１８０は、ワークが検出されたことを示す情報を移載制御装置１５０に出力する。
【００５１】
移載制御装置１５０は、例えば、エンドエフェクタ１４０と、ワークの上面との相対的な位置関係を示す情報を記憶している。これにより、移載制御装置１５０は、エンドエフェクタ１４０の位置及び姿勢から、ワークの上面の位置（例えば、床面からの高さである。）を決定することができる。また、移載制御装置１５０は、センサ１８０の検出位置（例えば、床面からの高さである。）を示す情報を記憶している。これにより、移載制御装置１５０は、ワークの下面の位置（例えば、床面からの高さである。）を決定することができる。移載制御装置１５０は、ワークの上面の位置と、ワークの下面の位置とに基づいて、ワークの高さを算出することができる。
【００５２】
本実施形態において、センサ１９０は、エンドエフェクタ１４０がワークを解放するタイミングを決定するために使用される。センサ１９０は、物体の有無を検出することができるセンサであれば、その詳細は特に限定されない。センサ１９０は、光、レーザ、超音波などを用いた非接触型の物体検出センサであってよい。センサ１９０は、接触型の物体検出センサであってもよい。
【００５３】
［移載システム１００の各部の具体的な構成］
移載システム１００の各部は、ハードウエアにより実現されてもよく、ソフトウエアにより実現されてもよく、ハードウエア及びソフトウエアにより実現されてもよい。移載システム１００の各部は、その少なくとも一部が、単一のサーバによって実現されてもよく、複数のサーバによって実現されてもよい。移載システム１００の各部は、その少なくとも一部が、仮想マシン上又はクラウドシステム上で実現されてもよい。移載システム１００の各部は、その少なくとも一部が、パーソナルコンピュータ又は携帯端末によって実現されてもよい。携帯端末としては、携帯電話、スマートフォン、ＰＤＡ、タブレット、ノートブック・コンピュータ又はラップトップ・コンピュータ、ウエアラブル・コンピュータなどが例示される。移載システム１００の各部は、ブロックチェーンなどの分散型台帳技術又は分散型ネットワークを利用して、情報を格納してもよい。
【００５４】
移載システム１００を構成する構成要素の少なくとも一部がソフトウエアにより実現される場合、当該ソフトウエアにより実現される構成要素は、一般的な構成の情報処理装置において、当該構成要素に関する動作を規定したプログラムを起動することにより実現されてよい。上記の情報処理装置は、例えば、（ｉ）ＣＰＵ、ＧＰＵなどのプロセッサ、ＲＯＭ、ＲＡＭ、通信インタフェースなどを有するデータ処理装置と、（ｉｉ）キーボード、タッチパネル、カメラ、マイク、各種センサ、ＧＰＳ受信機などの入力装置と、（ｉｉｉ）表示装置、スピーカ、振動装置などの出力装置と、（ｉｖ）メモリ、ＨＤＤなどの記憶装置（外部記憶装置を含む。）とを備える。
【００５５】
上記の情報処理装置において、上記のデータ処理装置又は記憶装置は、プログラムを格納してよい。上記のプログラムは、非一時的なコンピュータ可読記録媒体に格納されてよい。上記のプログラムは、プロセッサによって実行されることにより、上記の情報処理装置に、当該プログラムによって規定された動作を実行させる。
【００５６】
プログラムは、非一時的なコンピュータ可読記録媒体に格納されていてもよい。プログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、メモリ、ハードディスクなどのコンピュータ読み取り可能な媒体に記憶されていてもよく、ネットワークに接続された記憶装置に記憶されていてもよい。プログラムは、コンピュータ読み取り可能な媒体又はネットワークに接続された記憶装置から、移載システム１００の少なくとも一部を構成するコンピュータにインストールされてよい。プログラムが実行されることにより、コンピュータが、移載システム１００の各部の少なくとも一部として機能してもよい。
【００５７】
コンピュータを移載システム１００の各部の少なくとも一部として機能させるプログラムは、移載システム１００の各部の動作を規定したモジュールを備えてよい。これらのプログラム又はモジュールは、データ処理装置、入力装置、出力装置、記憶装置等に働きかけて、コンピュータを移載システム１００の各部として機能させたり、コンピュータに移載システム１００の各部における情報処理方法を実行させたりする。
【００５８】
プログラムに記述された情報処理は、当該プログラムがコンピュータに読込まれることにより、当該プログラムに関連するソフトウエアと、移載システム１００の各部に配された各種のハードウエア資源とが協働した具体的手段として機能する。そして、上記の具体的手段が、本実施形態におけるコンピュータの使用目的に応じた情報の演算又は加工を実現することにより、当該使用目的に応じた移載システム１００が構築される。
【００５９】
上記のプログラムは、コンピュータを、移載制御装置１５０として機能させるためのプログラムであってよい。上記のプログラムは、コンピュータに、移載制御装置１５０における情報処理方法を実行させるためのプログラムであってよい。
【００６０】
移載システム１００は、移送装置の一例であってよい。パッケージ１０２は、物品及び対象物品の一例であってよい。ロボット１３０は、移送装置の一例であってよい。ロボットアーム１３２は、マニピュレータの一例であってよい。駆動制御部１３４は、力覚情報取得部、角度情報取得部及び減圧情報取得部の一例であってよい。エンドエフェクタ１４０は、把持部の一例であってよい。移載制御装置１５０は、制御装置の一例であってよい。撮像装置１６０は、画像情報取得部の一例であってよい。ワークは、対象物品の一例であってよい。移載処理の対象となるパッケージ１０２は、対象物品の一例であってよい。
【００６１】
図２は、ロボット１３０のシステム構成の一例を概略的に示す。図２に示されるとおり、本実施形態において、ロボット１３０は、ロボットアーム１３２と、ロボットアーム１３２の遠位端に取り付けられるエンドエフェクタ１４０と、ロボットアーム１３２及びエンドエフェクタ１４０を制御する駆動制御部１３４とを備える。本実施形態において、ロボットアーム１３２は、複数のモータ２３２と、複数のエンコーダ２３４とを備える。本実施形態において、エンドエフェクタ１４０は、力覚センサ２４２と、把持部材２４６とを備える。
【００６２】
本実施形態において、複数のモータ２３２のそれぞれは、ロボットアーム１３２に含まれる複数の関節のそれぞれの角度を調整する。複数のモータ２３２のそれぞれは、駆動制御部１３４からの指示に従って、対応する関節の角度を調整してよい。複数のモータ２３２のそれぞれは、電流値を示す情報（電流情報と称される場合がある。）を、駆動制御部１３４に出力してよい。複数のモータ２３２のそれぞれは、時刻を示す情報と、当該時刻における電流値を示す情報とが対応付けられた電流情報を、駆動制御部１３４に出力してよい。
【００６３】
本実施形態において、複数のエンコーダ２３４のそれぞれは、ロボットアーム１３２に含まれる複数の関節のそれぞれの角度を示す情報（角度情報と称される場合がある。）を、駆動制御部１３４に出力する。複数のエンコーダ２３４のそれぞれは、時刻を示す情報と、当該時刻における対応する関節の角度を示す情報とが対応付けられた角度情報を、駆動制御部１３４に出力してよい。
【００６４】
本実施形態において、力覚センサ２４２は、ロボットアーム１３２の遠位端と、把持部材２４６との間に配される。力覚センサ２４２は、ロボットアーム１３２の遠位端における力及びトルクの少なくとも一方の大きさを示す情報（力覚情報と称される場合がある。）を出力する。力覚センサ２４２は、時刻を示す情報と、当該時刻における上記の力及びトルクの少なくとも一方の大きさを示す情報とが対応付けられた力覚情報を出力してよい。力覚センサ２４２は、ロボットアーム１３２の遠位端における力及びトルクの少なくとも一方の大きさ及び方向を示す力覚情報を出力してもよい。力覚センサ２４２は、時刻を示す情報と、当該時刻における上記の力及びトルクの少なくとも一方の大きさ及び方向を示す情報とが対応付けられた力覚情報を出力してよい。
【００６５】
例えば、力覚情報は、ｘ方向の力の大きさ、ｙ方向の力の大きさ、及び、ｚ方向の力の大きさを示す情報を含む。力覚情報は、ｘ方向のトルクの大きさ、ｙ方向のトルクの大きさ、及び、ｚ方向のトルクの大きさを示す情報を含んでもよい。力覚情報は、ｘ方向の力の大きさ、ｙ方向の力の大きさｚ方向の力の大きさ、ｘ方向のトルクの大きさ、ｙ方向のトルクの大きさ、及び、ｚ方向のトルクの大きさを示す情報を含んでもよい。なお、座標系は、上記の具体例に限定されない。
【００６６】
本実施形態において、把持部材２４６は、移送対象となるパッケージ１０２を把持する。把持部材２４６は、駆動制御部１３４からの指示に従って、パッケージ１０２の把持及び解放が可能な機構を有するものであれば、その詳細は特に限定されない。把持部材２４６は、パッケージ１０２を挟むことでパッケージ１０２を把持してもよく、パッケージ１０２を吸着することでパッケージ１０２を把持してもよい。把持部材２４６の詳細は後述される。
【００６７】
図３は、把持部材２４６の一例を概略的に示す。本実施形態において、把持部材２４６は、本体３１０と、吸着パット３２０と、バルブ３３０と、吸気配管３４０とを備える。本実施形態において、本体３１０の内部には減圧室３１２が形成される。また、本体３１０の外部には、接続部材３１４が配される。
【００６８】
本実施形態において、本体３１０は、力覚センサ２４２を介して、ロボットアーム１３２の遠位端に取り付けられる。減圧室３１２は、バルブ３３０及び吸気配管３４０を介して、外部の減圧源に接続される。接続部材３１４は、本体３１０と、力覚センサ２４２とを接続する。
【００６９】
吸着パット３２０は、本体３１０から突出するように、本体３１０に取り付けられる。吸着パット３２０は、例えば、中空形状を有する。吸着パット３２０は、吸着パット３２０の内部と、減圧室３１２の内部とが連通するように、本体３１０に取り付けられる。吸着パット３２０は、パッケージ１０２に接触し、吸着パット３２０の内部及び外部の圧力差を利用して、パッケージ１０２に吸着する。
【００７０】
本実施形態において、バルブ３３０は、減圧室３１２の内部の圧力を調整する。バルブ３３０は、駆動制御部１３４からの指示に従って動作してよい。例えば、バルブ３３０は、減圧室３１２及び吸気配管３４０を連通させることで、減圧室３１２の内部の圧力を減少させる。バルブ３３０は、減圧室３１２を大気に開放することで、減圧室３１２の内部の圧力を増加させてもよい。
【００７１】
本実施形態において、吸気配管３４０の一方の端部は、外部の減圧源に接続される。吸気配管３４０の他方の端部は、バルブ３３０を介して減圧室３１２に接続される。これにより、吸気配管３４０は、減圧室３１２の内部の空気を吸い出すことができる。
【００７２】
図４は、移載制御装置１５０の内部構成の一例を概略的に示す。本実施形態において、移載制御装置１５０は、画像データ取得部４２２と、アーム情報取得部４２４と、ハンド情報取得部４２６と、入出力制御部４３２と、撮像制御部４３４と、移載制御部４３６と、商品情報登録部４４０と、格納部４５０とを備える。本実施形態において、格納部４５０は、商品情報格納部４５２と、ワーク情報格納部４５４と、モデル情報格納部４５６と、設定情報格納部４５８とを有する。
【００７３】
本実施形態において、画像データ取得部４２２は、撮像装置１６０が出力した画像データを取得する。例えば、画像データ取得部４２２は、移送対象となるパッケージ１０２がロボット１３０に把持される前の時点における、パッケージ１０２の画像データを取得する。画像データ取得部４２２は、取得された画像データを移載制御部４３６に出力してよい。
【００７４】
本実施形態において、アーム情報取得部４２４は、ロボットアーム１３２に関する情報を取得する。アーム情報取得部４２４は、パッケージ１０２が移送されている期間中におけるロボットアーム１３２の状態に関する情報を取得してよい。例えば、アーム情報取得部４２４は、ロボットアーム１３２に配された１以上のセンサの出力を取得する。アーム情報取得部４２４は、ロボットアーム１３２に関する角度情報及び電流情報の少なくとも一方を取得してよい。アーム情報取得部４２４は、取得された情報を移載制御部４３６に出力してよい。
【００７５】
本実施形態において、ハンド情報取得部４２６は、エンドエフェクタ１４０に関する情報を取得する。ハンド情報取得部４２６は、パッケージ１０２が移送されている期間中におけるエンドエフェクタ１４０の状態に関する情報を取得する。例えば、ハンド情報取得部４２６は、エンドエフェクタ１４０に配された１以上のセンサの出力を取得する。ハンド情報取得部４２６は、エンドエフェクタ１４０に関する力覚情報を取得してよい。ハンド情報取得部４２６は、減圧室３１２の内部の圧力の大きさを示す情報（減圧情報と称される場合がある。）を取得してよい。ハンド情報取得部４２６は、ハンバルブ３３０の開閉状態を示す情報を取得してよい。ハンド情報取得部４２６は、取得された情報を移載制御部４３６に出力してよい。
【００７６】
本実施形態において、入出力制御部４３２は、移載システム１００の入出力を制御する。例えば、入出力制御部４３２は、ユーザ又は他の情報処理装置から、移載システム１００への情報の入力を制御する。入出力制御部４３２は、移載システム１００から、ユーザ又は他の情報処理装置への情報の出力を制御してもよい。入出力制御部４３２は、ロボット１３０と、移載制御装置１５０と、撮像装置１６０との間の情報の入出力を制御してもよい。本実施形態において、撮像制御部４３４は、撮像装置１６０を制御する。本実施形態において、移載制御部４３６は、荷受用プラットフォーム１２０及びロボット１３０の少なくとも一方を制御する。移載制御部４３６の詳細は後述される。
【００７７】
本実施形態において、商品情報登録部４４０は、ロボット１３０による移載処理の対象となるパッケージ１０２に関する情報を、商品情報格納部４５２に登録する。商品情報登録部４４０は、パッケージ１０２の特性を示す情報を、商品情報格納部４５２に登録してよい。
【００７８】
例えば、商品情報登録部４４０は、移載制御部４３６から、ワークの特性を示す情報を取得する。上述されたとおり、ワークの特性としては、寸法、形状、外観の特徴、質量、重心の位置、把持位置、把持態様などが例示される。次に、商品情報登録部４４０は、商品情報格納部４５２にアクセスして、ワークの外観の特徴に合致する商品が商品情報格納部４５２に既に登録されているか否かを判定する。ワークの外観の特徴に合致する商品が、商品情報格納部４５２に未だ登録されていないと判定された場合、商品情報登録部４４０は、新たな商品に関するレコードを作成し、ワークの特性を示す情報を登録する。
【００７９】
本実施形態において、格納部４５０は、各種の情報を格納する。格納部４５０は、移載制御装置１５０における情報処理に用いられる情報を格納してよい。格納部４５０は、移載制御装置１５０における情報処理により生成された情報を格納してもよい格納部４５０は、移載システム１００の各部からの要求に応じて、当該要求に含まれる条件に合致する情報を抽出し、当該要求に対する回答として抽出された情報を出力してよい。
【００８０】
本実施形態において、商品情報格納部４５２は、商品又はサービスごとに、当該商品又はサービスに使用されるパッケージ１０２の外観の特徴と、パッケージ１０２に関するその他の特性とを対応付けて格納する。パッケージ１０２に関するその他の特性としては、寸法、形状、質量、重心の位置、把持位置、把持態様などが例示される。
【００８１】
本実施形態において、ワーク情報格納部４５４は、現在、ロボット１３０の移載処理の対象となっているパッケージ１０２に関する各種の情報（ワーク情報と称される場合がある）を格納する。ワーク情報としては、寸法、形状、質量、重心の位置、把持位置、把持態様などに関する情報が例示される。
【００８２】
ワークの平面寸法は、例えば、画像データ取得部４２２が取得したワークの画像に基づいて決定される。ワークの高さは、例えば、アーム情報取得部４２４が取得したロボットアーム１３２の位置及び姿勢と、センサ１８０の出力とに基づいて決定される。ワークの質量及び重心の位置は、ハンド情報取得部４２６が取得した力覚センサ２４２の出力に基づいて決定される。ワークの把持位置及び把持態様は、例えば、画像データ取得部４２２が取得したワークの画像に基づいて決定される。ワークの把持位置及び把持態様は、画像データ取得部４２２が取得したワークの画像と、ハンド情報取得部４２６が取得した力覚センサ２４２の出力とに基づいて決定されてよい。ワークの把持態様は、ハンド情報取得部４２６が取得した減圧室３１２の内部の圧力に基づいて決定又は補正されてよい。
【００８３】
本実施形態において、モデル情報格納部４５６は、移載システム１００の各部の３次元モデルを格納する。例えば、モデル情報格納部４５６は、荷受用プラットフォーム１２０の３次元モデルを格納する。モデル情報格納部４５６は、ロボット１３０の３次元モデルを格納してもよい。モデル情報格納部４５６は、デパレタイズ用プラットフォーム１１０に搭載された１以上のパッケージ１０２の３次元モデルを格納してよい。パッケージ１０２の３次元モデルは、撮像装置１６０が出力した画像データに基づいて作成されてよい。モデル情報格納部４５６は、ロボット１３０の行動半径の内部、及び、当該行動半径の近傍に配された物体（障害物と称される場合がある。）の３次元モデルを格納してもよい。上記の３次元モデルは、比較的精密なモデルであってもよく、簡素化されたモデルであってもよい。
【００８４】
設定情報格納部４５８は、移載システム１００の各部に関する各種の設定の内容を示す情報を格納する。設定情報格納部４５８は、エンドエフェクタ１４０の可搬質量に関する情報を格納してよい。上記の可搬質量は、エンドエフェクタ１４０の定格可搬質量であってもよく、規定の移送速度又は規定の移送加速度の範囲内における最大可搬質量であってもよい。設定情報格納部４５８は、ロボット１３０の定格出力を示す情報を格納してよい。設定情報格納部４５８は、ロボット１３０の出力の上限に関する設定値を示す情報を格納してよい。設定情報格納部４５８は、ロボット１３０の移送速度又は移送加速度の上限に関する設定値を示す情報を格納してよい。
【００８５】
設定情報格納部４５８は、ロボット１３０と、移載制御装置１５０との間の通信遅延に関する情報を格納してもよい。設定情報格納部４５８は、エンコーダ２３４がデータを出力してから、移載制御装置１５０が当該データを取得するまでの遅延時間の長さを示す情報を格納してよい。設定情報格納部４５８は、力覚センサ２４２がデータを出力してから、移載制御装置１５０が当該データを取得するまでの遅延時間の長さを示す情報を格納してよい。設定情報格納部４５８は、各種の判定に用いられる閾値の値を示す情報を格納してもよく、各種の判定に用いられる条件の内容を示す情報を格納してもよい。
【００８６】
画像データ取得部４２２は、画像情報取得部の一例であってよい。アーム情報取得部４２４は、角度情報取得部の一例であってよい。ハンド情報取得部４２６は、力覚情報取得部及び減圧情報取得部の一例であってよい。移載制御部４３６は、制御装置の一例であってよい。
【００８７】
図５は、移載制御部４３６の内部構成一例を概略的に示す。本実施形態において、移載制御部４３６は、画像解析部５２０と、軌道計画部５３０と、アルゴリズム決定部５４２と、異常検知部５４４と、変更部５４６と、制御信号出力部５５２と、警告情報出力部５５４とを備える。本実施形態において、画像解析部５２０は、移送対象特定部５２２と、把持態様決定部５２４とを有する。
【００８８】
本実施形態において、画像解析部５２０は、画像データ取得部４２２から画像データを受け取る。例えば、画像解析部５２０は、撮像装置１６０が、デパレタイズ用プラットフォーム１１０に配置された１以上のパッケージ１０２を上方から撮像して得られた画像の画像データを取得する。画像解析部５２０は、上記の画像データを解析する。画像解析部５２０は、解析結果を示す情報を、例えば、軌道計画部５３０及び異常検知部５４４に出力する。
【００８９】
本実施形態において、移送対象特定部５２２は、画像を解析して、画像に含まれる１以上のパッケージ１０２の中から、移送処理の対象となるパッケージ１０２を特定する。例えば、移送対象特定部５２２は、画像の中から、２つのパッケージ１０２の間の境界（エッジと称される場合がある。）を抽出して、画像に含まれる１以上のパッケージ１０２のそれぞれの輪郭を推定する。移送対象特定部５２２は、画像の中から、既に登録されているパッケージ１０２の外観の特徴と一致する領域を抽出して、画像に含まれる１以上のパッケージ１０２のそれぞれの種類を推定する。
【００９０】
上記の処理により輪郭及び種類の両方が認識されたパッケージ１０２が存在する場合、移送対象特定部５２２は、輪郭及び種類が認識された１以上のパッケージのうちの１つを、移送処理の対象として選択する。移送対象特定部５２２は、移送処理の対象として選択されたパッケージ１０２（ワークと称される場合がある。）に対応する商品又はサービスの識別情報を、ワーク情報格納部４５４に格納してよい。
【００９１】
上記の処理により輪郭が認識されたパッケージ１０２が存在し、且つ、輪郭及び種類の両方が認識されたパッケージ１０２が存在しない場合、移送対象特定部５２２は、上記の処理により輪郭が認識された１以上のパッケージのうちの１つを、移送処理の対象として選択してよい。移送対象特定部５２２は、移送処理の対象として選択されたパッケージ１０２（ワークと称される場合がある。）の位置を示す情報を、ワーク情報格納部４５４に格納してよい。例えば、移送対象特定部５２２は、ワークの基準点と、デパレタイズ用プラットフォーム１１０の基準点との相対位置を示す情報を、ワーク情報格納部４５４に格納する。
【００９２】
本実施形態において、移送対象特定部５２２は、商品情報格納部４５２にアクセスして、ワークの外観の特徴に合致するパッケージの特性を取得してよい。これにより、移送対象特定部５２２は、上記の画像データに基づいて、ワークに関する各種の特性を推定することができる。例えば、移送対象特定部５２２は、ワークの寸法、形状、質量、及び、重心の位置の少なくとも１つを推定する。移送対象特定部５２２は、推定されたワークに関する各種の特性を示す情報を、ワーク情報格納部４５４に格納してよい。
【００９３】
本実施形態において、移送対象特定部５２２は、上記の画像データに基づいて、ワークの上面の幾何中心の位置を特定してもよい。移送対象特定部５２２は、特定された幾何中心の位置を示す情報を、ワーク情報格納部４５４に格納してよい。
【００９４】
本実施形態において、把持態様決定部５２４は、エンドエフェクタ１４０によるワークの把持位置を決定する。例えば、把持態様決定部５２４は、エンドエフェクタ１４０の基準点と、ワークの基準点との位置関係を決定する。把持態様決定部５２４は、エンドエフェクタ１４０によるワークの把持位置を示す情報を、ワーク情報格納部４５４に格納してよい。
【００９５】
把持態様決定部５２４は、エンドエフェクタ１４０の中心と、ワークの重心とが一致するように、エンドエフェクタ１４０がワークを把持することを決定してよい。一方、ワークの周辺に十分なスペースがなく、エンドエフェクタ１４０の中心と、ワークの重心とが一致するように、エンドエフェクタ１４０を配置することができない場合、把持態様決定部５２４は、ワークの周囲に、エンドエフェクタ１４０を配置することができるか否かを判定してよい。例えば、把持態様決定部５２４は、エンドエフェクタ１４０及びロボットアーム１３２の３次元モデルと、デパレタイズ用プラットフォーム１１０に搭載された１以上のパッケージ１０２の３次元モデルとを用いて、ワークの周囲に、エンドエフェクタ１４０を配置することができるか否かを判定する。
【００９６】
ワークの周囲にエンドエフェクタ１４０を配置することができる場合、把持態様決定部５２４は、その時のエンドエフェクタ１４０の位置及び姿勢に基づいて、エンドエフェクタ１４０によるワークの把持位置を決定してよい。一方、ワークの周囲にエンドエフェクタ１４０を配置することができない場合、把持態様決定部５２４は、移送対象特定部５２２に対して、他のパッケージ１０２をワークとして選択することを要求してよい。
【００９７】
把持態様決定部５２４は、エンドエフェクタ１４０によるワークの把持強度を決定してよい。例えば、把持態様決定部５２４は、エンドエフェクタ１４０によるワークの把持位置と、エンドエフェクタ１４０における吸着パット３２０の配置とに基づいて、エンドエフェクタ１４０によるワークの把持強度を決定する。
【００９８】
本実施形態において、軌道計画部５３０は、ロボットアーム１３２の遠位端の軌道、及び、エンドエフェクタ１４０の軌道の少なくとも一方を計画する。軌道計画部５３０は、上記の軌道に関する計画の内容を示す情報（計画情報と称される場合がある。）を、例えば、アルゴリズム決定部５４２、異常検知部５４４、変更部５４６、及び、制御信号出力部５５２の少なくとも１つに出力する。軌道計画部５３０は、計画情報を、ワーク情報格納部４５４に格納してよい。計画情報は、ワークが、軌道上の基準位置を通過してからの複数の経過時間を示す情報と、各経過時間におけるロボットアーム１３２に含まれる複数の関節のそれぞれの角度を示す情報とを含んでよい。
【００９９】
例えば、軌道計画部５３０は、ワーク情報格納部４５４にアクセスして、ワークの位置を示す情報、ワークに関する各種の特性を示す情報、ワークの把持位置を示す情報、及び、ワークの把持強度を示す情報の少なくとも１つを取得する。また、軌道計画部５３０は、モデル情報格納部４５６にアクセスして、ロボット１３０の３次元モデルと、デパレタイズ用プラットフォーム１１０に搭載された１以上のパッケージ１０２の３次元モデルとを取得する。軌道計画部５３０は、設定情報格納部４５８にアクセスして、ロボット１３０の設定に関する各種の情報を取得する。軌道計画部５３０は、上記の情報を利用して、上記の軌道を計画する。
【０１００】
本実施形態において、アルゴリズム決定部５４２は、異常検知部５４４が異常を検知するために利用するアルゴリズムを決定する。アルゴリズム決定部５４２は、決定されたアルゴリズムに関する情報を、異常検知部５４４に出力する。
【０１０１】
一実施形態において、アルゴリズム決定部５４２は、移送処理に含まれる工程ごとに、上記のアルゴリズムを決定する。上述されたとおり、移送処理は、例えば、接近工程、把持工程、拳上工程、移動工程、載置工程、及び、解放工程を含む。他の実施形態において、アルゴリズム決定部５４２は、アルゴリズム決定部５４２から計画情報を取得し、軌道を複数の区分（セグメントと称される場合がある。）に分割する。アルゴリズム決定部５４２は、移送速度の大きさ、移送加速度の大きさ、及び、移送加速度の変動の程度の少なくとも１つに基づいて、軌道を複数のセグメントに分割してよい。アルゴリズム決定部５４２は、略水平方向の移送速度の大きさ、略水平方向の移送加速度の大きさ、及び、略水平方向の移送加速度の変動の程度の少なくとも１つに基づいて、軌道を複数のセグメントに分割してもよい。アルゴリズム決定部５４２は、セグメントごとに、上記のアルゴリズムを決定してよい。
【０１０２】
本実施形態において、異常検知部５４４は、ワークの移送に関する異常を検知する。異常検知部５４４の詳細は後述される。
【０１０３】
本実施形態において、変更部５４６は、異常検知部５４４がワークの移送に関する異常を検知した場合に、当該ワークの移送に関する各種の設定を変更する。変更部５４６の詳細は後述される。
【０１０４】
本実施形態において、制御信号出力部５５２は、軌道計画部５３０から計画情報を取得する。移送対象特定部５２２は、計画情報に基づいて、ロボット１３０の動作を制御するための制御信号を生成する。移送対象特定部５２２は、生成された制御信号を、駆動制御部１３４に送信する。
【０１０５】
制御信号出力部５５２は、変更部５４６から変更情報を取得した場合、当該変更情報に基づいて、ロボット１３０の動作を制御するための制御信号を生成する。制御信号出力部５５２は、生成された制御信号を、駆動制御部１３４に送信する。
【０１０６】
本実施形態において、警告情報出力部５５４は、異常検知部５４４がワークの移送に関する異常を検知した場合に、異常が検知されたことを示すメッセージを、移載制御装置１５０のオペレータに通知する。上記のメッセージの出力態様としては、メッセージ画面の出力、音声メッセージの出力などが例示される。
【０１０７】
画像解析部５２０は、画像情報取得部の一例であってよい。移送対象特定部５２２は、画像情報取得部、質量情報取得部、重心推定部、及び、幾何中心特定部の一例であってよい。把持態様決定部５２４は、画像情報取得部、及び、把持位置決定部の一例であってよい。異常検知部５４４は、制御装置の一例であってよい。変更部５４６は、調整部の一例であってよい。商品情報格納部４５２に格納されているパッケージの質量の値は、対象物品の質量として予め定められた値の一例であってよい。
【０１０８】
図６は、把持部材２４６の軌道の一例を概略的に示す。本実施形態において、軌道６００は、セグメントＡ、セグメントＢ、セグメントＣ及びセグメントＤに分割される。また、セグメントＣは、加速度の変動が比較的小さなセグメントＣｍと、加速度の変動が比較的大きなセグメントＣｈとに分割される。セグメントＡは、エンドエフェクタ１４０が、待機位置６１０から把持位置６２０まで移動する間の軌道であってよい。セグメントＢは、エンドエフェクタ１４０が、把持位置６２０から移送準備位置６２２まで移動する間の軌道であってよい。セグメントＣは、エンドエフェクタ１４０が、移送準備位置６２２から載置準備位置６２４まで移動する間の軌道であってよい。セグメントＤは、エンドエフェクタ１４０が、載置準備位置６２４から解放位置６３０まで移動する間の軌道であってよい。
【０１０９】
図７は、異常検知部５４４の内部構成の一例を概略的に示す。本実施形態において、異常検知部５４４は、登録データ比較部７２０と、出力シミュレータ７３０と、推定データ比較部７４０と、基準データ比較部７５０と、質量異常検知部７６２と、重心異常検知部７６４と、異常特定部７７０とを備える。
【０１１０】
［登録データとの比較］
登録データ比較部７２０は、商品情報格納部４５２に登録されたパッケージの特性に関する情報と、ワークに関する実際の計測データに基づいて決定されるワークの特性に関する情報とを比較する。ワークに関する実際の計測データとしては、力覚センサ２４２が出力したデータなどが例示される。上記の計測データは、エンドエフェクタ１４０がワークを把持及び拳上している期間に、力覚センサ２４２が出力したデータであってよい。登録データ比較部７２０は、比較結果を示す情報を、例えば、質量異常検知部７６２及び重心異常検知部７６４の少なくとも一方に出力する。
【０１１１】
（質量の比較）
一実施形態において、上記の特性は、質量であってよい。例えば、登録データ比較部７２０は、ワーク情報格納部４５４にアクセスして、ワークに対応する商品又はサービスの識別情報を取得する。登録データ比較部７２０は、商品情報格納部４５２にアクセスして、上記の商品又はサービスの識別情報に合致するパッケージ（ワークに対応するパッケージと称される場合がある。）の質量を示す情報を取得する。次に、エンドエフェクタ１４０がワークを把持し、当該ワークを拳上すると、登録データ比較部７２０は、エンドエフェクタ１４０がワークを把持及び拳上している間に、ハンド情報取得部４２６から力覚情報を取得する。
【０１１２】
登録データ比較部７２０は、力覚情報により示される力及びトルクの少なくとも一方の大きさに基づいて、ワークの質量を決定する。登録データ比較部７２０は、ワークの移動速度が予め定められた値より小さい期間のデータを利用して、ワークの質量を決定してよい。登録データ比較部７２０は、ワークの移動が略停止している期間のデータを利用して、ワークの質量を決定してよい。
【０１１３】
登録データ比較部７２０は、商品情報格納部４５２に登録されたパッケージの質量と、上記の力覚情報に基づいて決定されたワークの質量とを比較する。登録データ比較部７２０は、商品情報格納部４５２に登録されたパッケージの質量と、上記の力覚情報に基づいて決定されたワークの質量との差の絶対値を算出してよい。登録データ比較部７２０は、上記の差の絶対値を示す情報を、比較結果を示す情報として出力してよい。
【０１１４】
（重心の位置の比較）
他の実施形態において、上記の特性は、重心の位置であってよい。例えば、登録データ比較部７２０は、上記の実施形態と同様にして、ワークに対応するパッケージの重心の位置を示す情報を取得する。また、登録データ比較部７２０は、上記の実施形態と同様にして、力覚情報により示される力及びトルクの少なくとも一方の大きさに基づいて、ワークの重心の位置を決定する。
【０１１５】
登録データ比較部７２０は、商品情報格納部４５２に登録されたパッケージの重心の位置と、上記の力覚情報に基づいて決定されたワークの重心の位置とを比較する。登録データ比較部７２０は、商品情報格納部４５２に登録されたパッケージの重心の位置と、上記の力覚情報に基づいて決定されたワークの重心の位置との距離を算出してよい。登録データ比較部７２０は、上記の距離を示す情報を、比較結果を示す情報として出力してよい。
【０１１６】
[力覚センサ２４２の出力のシミュレート]
本実施形態において、出力シミュレータ７３０は、ロボット１３０に配された１以上のセンサの少なくとも１つの出力をシミュレートする。一実施形態において、出力シミュレータ７３０は、力覚センサ２４２の出力をシミュレートする。他の実施形態において、出力シミュレータ７３０は、エンコーダ２３４の出力をシミュレートする。さらに他の実施形態において、出力シミュレータ７３０は、モータ２３２の電流値をシミュレートする。
【０１１７】
ロボット１３０がワークを移送している間、力覚センサ２４２は、ワークに働く重力と、ワークに働く慣性力との合力を検出する。そのため、力覚センサ２４２の出力を利用してワークの移送に関する異常を正確に検知するためには、何らかの手法により、上記の慣性力の影響を打ち消すことが好ましい。
【０１１８】
上記の慣性力の影響を打ち消す手法としては、（ｉ）エンコーダ２３４の出力を２回微分して、ワークの加速度を算出し、（ｉｉ）当該加速度に基づいて、ワークに働く慣性力を算出し、（ｉｉｉ）力覚センサ２４２の出力により示される力の大きさから、慣性力の大きさを減ずることが考えられる。しかしながら、ロボット１３０の内部におけるフィルタ処理などの影響により、エンコーダ２３４の出力を２回微分しても、ワークの加速度を精度よく算出することは非常に難しい。
【０１１９】
上記の慣性力の影響を打ち消す他の手法としては、（ｉ）シミュレーションにより力覚センサ２４２の出力を推定し、（ｉｉ）力覚センサ２４２の出力の推定値と、力覚センサ２４２の実際の出力とを比較することが考えられる。上記の手法によれば、力覚センサ２４２の出力の推定値と、力覚センサ２４２の実際の出力とを同期させるタイミングを調整したり、力覚センサ２４２の出力の推定値と、力覚センサ２４２の実際の出力との差に基づいて異常を検知する場合の閾値を調整したりすることで、異常の検出精度を容易に向上させることができる。
【０１２０】
［計画情報に基づくシミュレーション］
本実施形態において、出力シミュレータ７３０は、計画情報に基づいて、力覚センサ２４２の出力をシミュレートする。出力シミュレータ７３０は、例えば、商品情報格納部４５２にアクセスして、ワークに対応するパッケージの質量を示す情報を取得する。また、出力シミュレータ７３０は、例えば、ワーク情報格納部４５４にアクセスして、ワークに関する計画情報を取得する。次に、出力シミュレータ７３０は、上記の質量を示す情報と、計画情報とに基づいて、ロボット１３０がワークを移送した場合に、力覚センサ２４２が検出する力及びトルクの少なくとも一方の大きさを推定する。これにより、ロボット１３０がワークを移送した場合に、力覚センサ２４２が検出するであろう力及びトルクの少なくとも一方の大きさが推定される。出力シミュレータ７３０は、力覚センサ２４２が検出する力及びトルクの少なくとも一方の大きさ及び方向を推定してもよい。これにより、力覚センサ２４２が検出するであろう力及びトルクの少なくとも一方の大きさ及び方向が推定される。
【０１２１】
上述されたとおり、計画情報は、ワークが、軌道上の基準位置を通過してからの複数の経過時間を示す情報と、各経過時間におけるロボットアーム１３２に含まれる複数の関節のそれぞれの角度を示す情報とが対応付けられた情報を含み得る。この場合において、出力シミュレータ７３０は、計画情報に基づいて、複数の経過時間のそれぞれにおける、力覚センサ２４２が検出する力及びトルクの少なくとも一方の大きさを推定してよい。これにより、力覚センサ２４２が検出するであろう力及びトルクの少なくとも一方の大きさが推定される。また、出力シミュレータ７３０は、複数の経過時間のそれぞれと、推定された力及びトルクの少なくとも一方の大きさとが対応付けられた情報（推定情報と称される場合がある。）を出力してよい。推定情報は、複数の経過時間のそれぞれと、推定された力及びトルクの少なくとも一方の大きさ及び方向とが対応付けられた情報であってもよい。
【０１２２】
上記の場合において、出力シミュレータ７３０は、（ｉ）計画情報に基づいて、軌道上の複数の位置のそれぞれにおける複数の関節のそれぞれの角度を決定し、（ｉｉ）軌道上の複数の位置のそれぞれにおける、力覚センサ２４２が検出する力及びトルクの少なくとも一方の大きさを推定してよい。これにより、軌道上の複数の位置のそれぞれにおける、力覚センサ２４２が検出するであろう力及びトルクの少なくとも一方の大きさが推定される。また、出力シミュレータ７３０は、複数の関節のそれぞれの角度と、推定された力及びトルクの少なくとも一方の大きさとが対応付けられた推定情報を出力してよい。推定情報は、複数の関節のそれぞれの角度と、推定された力及びトルクの少なくとも一方の大きさ及び方向とが対応付けられた情報であってもよい。
【０１２３】
［拳上工程のシミュレーション］
本実施形態において、出力シミュレータ７３０は、拳上工程における力覚センサ２４２の出力をシミュレートする。出力シミュレータ７３０は、例えば、商品情報格納部４５２にアクセスして、ワークに対応するパッケージの質量を示す情報と、当該パッケージの重心の位置を示す情報とを取得する。また、出力シミュレータ７３０は、例えば、ワーク情報格納部４５４にアクセスして、ワークの把持位置に関する情報を取得する。次に、出力シミュレータ７３０は、上記の質量と、上記の重心の位置と、上記の把持位置とに基づいて、エンドエフェクタ１４０がワークの把持位置を把持して当該ワークを拳上した場合に、力覚センサ２４２が検出する力及びトルクの少なくとも一方の大きさを推定する。これにより、上記の場合に力覚センサ２４２が検出するであろう力及びトルクの少なくとも一方の大きさが推定される。出力シミュレータ７３０は、力覚センサ２４２が検出する力及びトルクの少なくとも一方の大きさ及び方向を推定してもよい。これにより、力覚センサ２４２が検出するであろう力及びトルクの少なくとも一方の大きさ及び方向が推定される。出力シミュレータ７３０は、上述された実施形態と同様にして、推定情報を出力してもよい。
【０１２４】
本実施形態において、推定データ比較部７４０は、出力シミュレータ７３０が出力した力覚センサ２４２の推定値と、力覚センサ２４２が実際に出力した値とを比較する。推定データ比較部７４０は、比較結果を示す情報を、例えば、質量異常検知部７６２及び重心異常検知部７６４の少なくとも一方に出力する。
【０１２５】
（質量の比較）
例えば、推定データ比較部７４０は、ハンド情報取得部４２６から、力覚情報を取得する。推定データ比較部７４０は、出力シミュレータ７３０から、推定情報を取得する。推定データ比較部７４０は、力覚情報により示される力及びトルクの少なくとも一方の大きさと、推定情報により示される力及びトルクの少なくとも一方の大きさとを比較する。推定データ比較部７４０は、力覚情報により示される力及びトルクの少なくとも一方の大きさと、推定情報により示される力及びトルクの少なくとも一方の大きさとの差の絶対値を算出してよい。推定データ比較部７４０は、上記の差の絶対値を示す情報を、比較結果を示す情報として出力してよい。
【０１２６】
（重心の位置の比較）
推定データ比較部７４０は、力覚情報に基づいて、ワークの重心の位置を特定してよい。また、推定データ比較部７４０は、推定情報に基づいて、ワークの重心の位置を推定してよい。推定データ比較部７４０は、力覚情報に基づいて特定されたワークの重心の位置と、推定情報に基づいて推定されたワークの重心の位置とを比較する。推定データ比較部７４０は、力覚情報に基づいて特定されたワークの重心の位置と、推定情報に基づいて推定されたワークの重心の位置との距離を算出してよい。推定データ比較部７４０は、上記の距離を示す情報を、比較結果を示す情報として出力してよい。
【０１２７】
［データの同期］
一実施形態において、推定データ比較部７４０は、力覚情報に含まれる複数の時刻を示す情報と、推定情報に含まれる複数の経過時間のそれぞれを示す情報とに基づいて、力覚情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報と、推定情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報とを対応付けてよい。これにより、両者を同期することができる。
【０１２８】
他の実施形態において、推定データ比較部７４０は、角度情報及び力覚情報のそれぞれに含まれる複数の時刻を示す情報に基づいて、複数の関節のそれぞれの角度を示す情報と、遠位端における力及びトルクの少なくとも一方の大きさを示す情報とを対応付けてよい。また、複数の関節のそれぞれの角度を示す情報に基づいて、力覚情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報と、推定情報に含まれる力及びトルクの少なくとも一方の大きさを示す情報とを対応付けてよい。これにより、両者を同期することができる。
【０１２９】
［基準データとの比較］
本実施形態において、基準データ比較部７５０は、特定の時刻、又は、特定の工程の特定のタイミングを基準時として、当該基準時における力覚センサ２４２の出力と、現在の力覚センサ２４２の出力とを比較する。上記の基準時としては、拳上工程の始期、載置工程の始期などが例示される。基準データ比較部７５０は、基準時の力覚情報により示される力及びトルクの少なくとも一方の大きさと、現在の力覚情報により示される力及びトルクの少なくとも一方の大きさとを比較する。基準データ比較部７５０は、基準時の力覚情報により示される力及びトルクの少なくとも一方の大きさと、現在の力覚情報により示される力及びトルクの少なくとも一方の大きさとの差の絶対値を算出してよい。基準データ比較部７５０は、上記の差の絶対値を示す情報を、比較結果を示す情報として出力してよい。
【０１３０】
［質量に関する異常の検知］
本実施形態において、質量異常検知部７６２は、ワークの質量に関する異常を検知する。質量異常検知部７６２は、複数のアルゴリズムに基づいて、上記の異常を検知してよい。質量異常検知部７６２は、アルゴリズム決定部５４２が決定したアルゴリズムに基づいて、上記の異常を検知してよい。
【０１３１】
一実施形態において、質量異常検知部７６２は、登録データ比較部７２０の比較結果に基づいて、異常を検知する。例えば、登録データ比較部７２０が比較した２つの値の差の絶対値が、予め定められた閾値（当該閾値は、第４閾値の一例であってよい。）よりも大きい場合に、質量異常検知部７６２が異常を検知する。上記の異常としては、ワークの識別不良、ワークの把持不良、及び、ワークの破損の少なくとも１つが例示される。
【０１３２】
他の実施形態において、質量異常検知部７６２は、推定データ比較部７４０の比較結果に基づいて、異常を検知する。例えば、推定データ比較部７４０が比較した２つの値の差の絶対値が、予め定められた閾値（当該閾値は、第１閾値の一例であってよい。）よりも大きい場合に、質量異常検知部７６２が異常を検知する。上記の第１閾値は、例えば、移載制御装置１５０が力覚情報を取得するまでの遅延時間の長さが大きいほど第１閾値が大きくなるように、決定される。上記の第１閾値は、上記の遅延時間の変動幅が予め定められた値よりも大きい場合における第１閾値が、上記の遅延時間の変動幅が予め定められた値よりも小さい場合における第１閾値よりも、大きくなるように、決定されてよい。
【０１３３】
推定データ比較部７４０が比較した２つの値の差の絶対値が、予め定められた閾値（当該閾値は、第１閾値の一例であってよい。）よりも大きな状態の継続期間の長さが、予め定められた閾値（当該閾値は、第２閾値の一例であってよい。）よりも大きい場合に、質量異常検知部７６２が異常を検知してもよい。上記の継続期間の間に、インターバルが配されていなくてもよく、上記の継続期間の間に、予め定められた長さよりも短い期間のインターバルが配されていてもよい。
【０１３４】
これにより、質量異常検知部７６２は、力覚情報により示される力及びトルクの少なくとも一方の大きさ、並びに、出力シミュレータ７３０が推定した力及びトルクの少なくとも一方の大きさに基づいて、ワークの移送に関する異常を検出することができる。なお、質量異常検知部７６２は、力覚情報により示される力及びトルクの少なくとも一方の大きさ及び方向、並びに、出力シミュレータ７３０が推定した力及びトルクの少なくとも一方の大きさ及び方向に基づいて、ワークの移送に関する異常を検出してもよい。
【０１３５】
上述されたとおり、力覚情報と、推定情報とは、適切な手法により同期される。これにより、質量異常検知部７６２は、対応付けられた力覚情報により示される力及びトルクの少なくとも一方の大きさ、並びに、出力シミュレータ７３０が推定した力及びトルクの少なくとも一方の大きさに基づいて、ワークの移送に関する異常を検出することができる。
【０１３６】
さらに他の実施形態において、質量異常検知部７６２は、基準データ比較部７５０の比較結果に基づいて、異常を検知する。例えば、基準データ比較部７５０が比較した２つの値の差の絶対値が、予め定められた閾値よりも大きい場合、質量異常検知部７６２は、異常を検知する。
【０１３７】
［重心の位置に関する異常の検知］
本実施形態において、重心異常検知部７６４は、ワークの重心の位置に関する異常を検知する。重心異常検知部７６４は、複数のアルゴリズムに基づいて、上記の異常を検知してよい。質重心異常検知部７６４は、アルゴリズム決定部５４２が決定したアルゴリズムに基づいて、上記の異常を検知してよい。
【０１３８】
一実施形態において、重心異常検知部７６４は、登録データ比較部７２０の比較結果に基づいて、異常を検知する。例えば、登録データ比較部７２０が比較した２つの重心の位置の間の距離が、予め定められた値よりも大きい場合に、重心異常検知部７６４が異常を検知する。上記の異常としては、上記の異常の原因としては、ワークの識別不良、ワークの把持不良、及び、ワークの破損の少なくとも１つが例示される。
【０１３９】
他の実施形態において、重心異常検知部７６４は、推定データ比較部７４０の比較結果に基づいて、異常を検知する。例えば、推定データ比較部７４０が比較した２つの重心の位置の間の距離が予め定められた値よりも大きい場合に、重心異常検知部７６４が異常を検知する。
【０１４０】
さらに他の実施形態において、重心異常検知部７６４は、基準データ比較部７５０の比較結果に基づいて、異常を検知する。例えば、基準データ比較部７５０が比較した２つの重心の位置の間の距離が予め定められた値よりも大きい場合に、重心異常検知部７６４が異常を検知する。
【０１４１】
さらに他の実施形態において、重心異常検知部７６４は、画像解析部５２０の解析結果と、出力シミュレータ７３０の出力とに基づいて、異常を検知する。例えば、重心異常検知部７６４は、画像解析部５２０の移送対象特定部５２２が特定した幾何中心の位置を示す情報を取得する。また、重心異常検知部７６４は、出力シミュレータ７３０が出力した推定情報に基づいて、ワークの重心の位置を特定する。上記の幾何中心の位置と、上記のワークの重心が対象物品の上面に投影された位置との距離が、予め定められた閾値（当該閾値は、第３閾値の一例であってよい。）よりも大きい場合に、重心異常検知部７６４が異常を検知する。上記の異常の原因としては、ワークの識別不良、ワークの把持不良、及び、ワークの破損の少なくとも１つが例示される。
【０１４２】
［異常の内容の特定］
本実施形態において、異常特定部７７０は、検知された異常の内容を特定する。異常特定部７７０は、質量異常検知部７６２から、質量に関する異常が検知されたことを示す情報を取得する。これにより、異常特定部７７０は、質量に関する異常の有無を判定することができる。同様に、異常特定部７７０は、重心異常検知部７６４から、重心の位置に関する異常が検知されたことを示す情報を取得する。異常特定部７７０は、重心の位置に関する異常の有無を判定することができる。
【０１４３】
また、異常特定部７７０は、アーム情報取得部４２４からロボットアーム１３２の状態を示す情報を取得してよい。異常特定部７７０は、ハンド情報取得部４２６からエンドエフェクタ１４０の状態を示す情報を取得してよい。
【０１４４】
異常特定部７７０は、これらの情報に基づいて、検知された異常の内容を特定してよい。これにより、異常特定部７７０は、力覚情報により示される力及びトルクの少なくとも一方の大きさ、並びに、出力シミュレータ７３０が推定した力及びトルクの少なくとも一方の大きさに基づいて、ワークの識別不良、ワークの把持不良、及び、ワークの破損の少なくとも１つを検知することができる。
【０１４５】
一実施形態において、質量異常検知部７６２及び重心異常検知部７６４の少なくとも一方が、登録データ比較部７２０の比較結果に基づいて異常を検知した場合、異常特定部７７０は、ワークの識別不良、ワークの把持不良、及び、ワークの破損の少なくとも１つを検知してよい。同様に、質量異常検知部７６２及び重心異常検知部７６４の少なくとも一方が、推定データ比較部７４０の比較結果に基づいて異常を検知した場合、異常特定部７７０は、ワークの識別不良、ワークの把持不良、及び、ワークの破損の少なくとも１つを検知してよい。質量異常検知部７６２及び重心異常検知部７６４の少なくとも一方が、基準データ比較部７５０の比較結果に基づいて異常を検知した場合、異常特定部７７０は、ワークの識別不良、ワークの把持不良、及び、ワークの破損の少なくとも１つを検知してよい。
【０１４６】
他の実施形態において、異常特定部７７０は、アーム情報取得部４２４から減圧情報を取得する。また、異常特定部７７０は、減圧情報により示される圧力が予め定められた値より小さい場合に、減圧室３１２の圧力の異常を検知する。（ｉ）減圧室３１２の圧力の異常が検知されておらず、質量異常検知部７６２が異常を検知しておらず、且つ、（ｉｉ）重心異常検知部７６４が異常を検出している場合、異常特定部７７０は、ワークの破損を検知する。
【０１４７】
他の実施形態において、異常特定部７７０は、アーム情報取得部４２４から減圧情報を取得する。また、異常特定部７７０は、減圧情報により示される圧力が予め定められた値より小さい場合に、減圧室３１２の圧力の異常を検知する。異常特定部７７０は、（ｉ）減圧室３１２の圧力の異常が検知されておらず、且つ、（ｉｉ）質量異常検知部７６２が異常を検知している場合に、ワークの破損を検知してもよい。
【０１４８】
例えば、近年、商品の陳列を容易にすることを目的として、複数個の商品が梱包されたパッケージの一部を分離して、商品がパッケージに収容された状態で店頭に陳列される場合がある。上記のような使用態様を考慮して、その一部が容易に分離できるように構成されたパッケージも市販されている。
【０１４９】
ロボット１３０が、このようなパッケージを移載する場合、当該パッケージの移送中に、当該パッケージが上下に分離したり、当該パッケージの一部が破断して当該パッケージが大きく変形したりすることが考えられる。この場合、分離又は破断したパッケージの上側の部分がエンドエフェクタ１４０に把持された状態で、当該パッケージが移送される。そのため、パッケージの一部が分離又は破断しても、減圧室３１２の圧力変動が比較的小さく、減圧室３１２の圧力変動に基づいてワークの破損を検知することが難しい。しかしながら、本実施形態によれば、このような場合であっても、ワークの破損を検知することができる。
【０１５０】
さらに他の実施形態において、異常特定部７７０は、ハンド情報取得部４２６から力覚情報を取得する。異常特定部７７０は、力覚情報により示される力の大きさに基づいて、エンドエフェクタ１４０がワークを過度に押圧しているか否かを判定してよい。例えば、把持工程、載置工程及び解放工程の少なくとも１つの工程が実行されている期間において、力覚情報により示される力の大きさが予め定められた値よりも大きい場合、異常特定部７７０は、エンドエフェクタ１４０がワークを過度に押圧していると判定してよい。
【０１５１】
さらに他の実施形態において、移送対象特定部５２２が特定したワークの上面の幾何中心の位置と、力覚情報に基づいて決定されたワークの重心の位置とが、予め定められた条件を満足する場合、異常特定部７７０は、ロボット１３０が、複数のパッケージ１０２を同時に拳上していると判定してよい。上記の条件としては、上記の幾何中心の位置と、上記のワークの重心が対象物品の上面に投影された位置との距離が、予め定められた閾値（当該閾値は、第３閾値の一例であってよい。）よりも大きいという条件であってよい。
【０１５２】
異常検知部５４４は、第１検知部、第２検知部及び第３検知部の一例であってよい。登録データ比較部７２０は、質量情報取得部及び重心特定部の一例であってよい。出力シミュレータ７３０は、質量情報取得部、計画情報取得部及び力覚推定部の一例であってよい。質量異常検知部７６２は、第１検知部の一例であってよい。重心異常検知部７６４は、第２検知部及び第３検知部の一例であってよい。力覚センサ２４２が検出する力及びトルクの少なくとも一方の大きさは、マニピュレータの遠位端において検出される力及びトルクの少なくとも一方の大きさの一例であってよい。質量異常検知部７６２により検知された質量に関する異常は、力覚情報により示される対象物品の質量に関する異常の一例であってよい。重心異常検知部７６４により検知された重心の位置に関する異常は、力覚情報により示される対象物品の重心に関する異常の一例であってよい。減圧室３１２の圧力の異常は、減圧情報により示される圧力に関する異常の一例であってよい。
【０１５３】
本実施形態においては、質量異常検知部７６２が質量に関する異常を検知し、重心異常検知部７６４が重心の位置に関する異常を検知する場合を例として、異常検知部５４４の詳細が説明された。しかしながら、異常検知部５４４は本実施形態に限定されない。他の実施形態において、登録データ比較部７２０が、これらの異常を検知してもよい。さらに他の実施形態において、推定データ比較部７４０が、これらの異常を検知してもよい。さらに他の実施形態において、基準データ比較部７５０が、これらの異常を検知してもよい。
【０１５４】
図８は、変更部５４６の内部構成の一例を概略的に示す。本実施形態において、変更部５４６は、登録情報変更部８２０と、設定速度変更部８３０と、停止判定部８４０とを備える。
【０１５５】
本実施形態において、登録情報変更部８２０は、質量異常検知部７６２が、登録データ比較部７２０の比較結果に基づいて異常を検知した場合に、商品情報格納部４５２に格納されたワークに対応するパッケージの質量に関する情報を更新するか否かを決定する。例えば、力覚情報に基づいて特定されるワークの質量が、商品情報格納部４５２に格納されたワークに対応するパッケージの質量よりも大きい場合、登録情報変更部８２０は、商品情報格納部４５２の情報を更新することを決定する。
【０１５６】
重心異常検知部７６４が、登録データ比較部７２０の比較結果に基づいて異常を検知した場合、登録情報変更部８２０は、商品情報格納部４５２に格納されたワークに対応するパッケージの重心の位置を更新するか否かを決定してもよい。例えば、力覚情報に基づいて特定されるワークの重心の位置に関する異常が検出された場合、登録情報変更部８２０は、商品情報格納部４５２の情報を更新することを決定する。
【０１５７】
重心異常検知部７６４が、登録データ比較部７２０の比較結果に基づいて異常を検知した場合において、移送対象特定部５２２が特定したワークの上面の幾何中心の位置と、力覚情報に基づいて決定されたワークの重心の位置とが、予め定められた条件を満足するとき、登録情報変更部８２０は、商品情報格納部４５２に格納されたワークに対応するパッケージの把持位置を更新するか否かを決定してもよい。上記の条件としては、上記の幾何中心の位置と、上記のワークの重心が対象物品の上面に投影された位置との距離が、予め定められた閾値（当該閾値は、第３閾値の一例であってよい。）よりも大きいという条件であってよい。
【０１５８】
例えば、登録情報変更部８２０は、ワークの画像を解析して、ロボット１３０が複数のパッケージ１０２を同時に拳上しているか否かを判定する。ロボット１３０が複数のパッケージ１０２を同時に拳上していると判定された場合、登録情報変更部８２０は、例えば、上記の判定結果を示す情報を、停止判定部８４０に出力する。一方、ロボット１３０が複数のパッケージ１０２を同時に拳上していないと判定された場合、登録情報変更部８２０は、商品情報格納部４５２に格納されたワークに対応するパッケージの把持位置を更新することを決定する。登録情報変更部８２０は、現在の把持位置とは異なる位置であって、より適切な位置を、新たな把持位置として、商品情報格納部４５２に登録してよい。
【０１５９】
本実施形態において、設定速度変更部８３０は、質量異常検知部７６２及び重心異常検知部７６４の少なくとも一方が異常を検知した場合に、計画情報により示されるワークの移送速度を調整するか否かを決定する。また、ワークの移送速度を調整することが決定された場合、設定速度変更部８３０は、移送速度の変更に関する情報（変更情報と称される場合がある。）を、制御信号出力部５５２に出力する。
【０１６０】
一実施形態において、設定速度変更部８３０は、例えば、出力シミュレータ７３０を使用して、計画情報により示される計画が続行されると仮定した場合の力覚センサ２４２の出力をシミュレートする。設定速度変更部８３０は、出力シミュレータ７３０によるシミュレーション結果と、エンドエフェクタ１４０の可搬質量の上限値、及び、ワークの耐久性の上限値の少なくとも一方とに基づいて、計画情報により示される計画が続行された場合に、ワークの落下又は破損が発生するか否かを判定する。
【０１６１】
ワークの落下又は破損が発生すると判定された場合、設定速度変更部８３０は、上記の判定結果を示す情報を停止判定部８４０に出力してよい。一方、ワークの落下又は破損が発生しないと判定された場合、設定速度変更部８３０は、ワークの移送速度を調整することを決定する。設定速度変更部８３０は、調整後のワークの移送速度が、計画情報により示される移送速度よりも小さくなるように、ワークの移送速度を調整してよい。
【０１６２】
他の実施形態において、設定速度変更部８３０は、異常特定部７７０が特定の種類の異常を検知した場合に、計画情報により示されるワークの移送速度を調整することを決定してよい。さらに他の実施形態において設定速度変更部８３０は、異常特定部７７０が特定の種類の異常を検知していない場合に、計画情報により示されるワークの移送速度を調整することを決定してもよい。
【０１６３】
本実施形態において、停止判定部８４０は、ワークの移送を停止するか否かを判定する。また、ワークの移送を停止することが決定された場合、停止判定部８４０は、ワークの移送が停止されることを示す情報を、警告情報出力部５５４に出力する。
【０１６４】
一実施形態において、停止判定部８４０が、登録情報変更部８２０から、ロボット１３０が複数のパッケージ１０２を同時に拳上していることを示す情報を取得した場合、停止判定部８４０は、ワークの移送を停止することを決定する。他の実施形態において、停止判定部８４０が、設定速度変更部８３０から、計画情報により示される計画が続行されるとワークの落下又は破損が発生することを示す情報を取得した場合、停止判定部８４０は、ワークの移送を停止することを決定する。
【０１６５】
図９は、移載システム１００による移載処理の一例を概略的に示す。図９は、移載制御部４３６における情報処理の一例であってもよい。本実施形態によれば、まず、Ｓ９１２において、移送対象特定部５２２が、撮像装置１６０が撮像した画像に基づいて、デパレタイズ用プラットフォーム１１０に搭載された１以上のパッケージ１０２の中から、移送処理の対象となるパッケージ１０２（ワークと称される場合がある。）を決定する。
【０１６６】
次に、Ｓ９１４において、移送対象特定部５２２が、商品情報格納部４５２にアクセスして、商品情報格納部４５２に登録された１以上のパッケージの中に、ワークの外観の特徴合致するパッケージが存在するか否かを確認する。例えば、商品情報格納部４５２には、商品又はサービスの識別情報と対応付けて、当該商品又はサービスに使用されるパッケージの外観の特徴を示す情報が格納されている。そこで、移送対象特定部５２２は、商品情報格納部４５２に対して、ワークの外観の特徴に合致するパッケージの検索を要求する。商品情報格納部４５２は、商品情報格納部４５２に格納された１以上のパッケージの外観の特徴と、ワークの外観の特徴とを比較して、同一又は類似するパッケージの商品又はサービスの識別情報を抽出する。商品情報格納部４５２は、抽出された商品又はサービスの識別情報を、上記の要求に対する回答として出力する。これにより、移送対象特定部５２２は、現在のワークの種類が、既に登録されているパッケージの種類と同一であるか否かを判定することができる。
【０１６７】
ワークが商品情報格納部４５２に登録されていない場合（Ｓ９１４のＮｏの場合）、Ｓ９２０において、商品登録処理が実行される。具体的には、商品情報登録部４４０が、現在のワークの特性を示す情報を、商品情報格納部４５２に登録する。現在のワークの商品登録処理が完了すると、Ｓ９３２の処理が実行される。
【０１６８】
一方、ワークが商品情報格納部４５２に登録されていた場合（Ｓ９１４のＹｅｓの場合）、Ｓ９３２において、軌道計画部５３０が、例えば、エンドエフェクタ１４０がデパレタイズ用プラットフォーム１１０に配されたワークを把持した後、当該ワークが荷受用プラットフォーム１２０の所定の位置に載置されるまでの間の、エンドエフェクタ１４０の軌道を計画する。本実施形態において、軌道計画部５３０は、エンドエフェクタ１４０がワークを把持した後、ロボット１３０が当該ワークを所定の高さまで拳上し、当該ワークが当該位置で一旦静止するように、軌道を計画する。なお、軌道計画部５３０は、ロボットアーム１３２の遠位端の軌道を計画してもよい。
【０１６９】
また、Ｓ９３２において、アルゴリズム決定部５４２は、軌道計画部５３０が計画した軌道を複数のセグメントに分割して、セグメントごとに、異常検知部５４４が異常を検知するために利用するアルゴリズムを決定する。例えば、軌道計画部５３０が、図６に関連して説明された軌道６００を計画した場合、アルゴリズム決定部５４２は、セグメントＢにおいて、登録データ比較部７２０の比較結果に基づいて異常を検知することを決定する。アルゴリズム決定部５４２は、セグメントＣｍにおいて、基準データ比較部７５０の比較結果に基づいて異常を検知することを決定する。アルゴリズム決定部５４２は、セグメントＣｈにおいて、推定データ比較部７４０の比較結果に基づいて異常を検知することを決定する。アルゴリズム決定部５４２は、セグメントＤにおいて、基準データ比較部７５０の比較結果に基づいて異常を検知することを決定する。
【０１７０】
次に、Ｓ９３４において、制御信号出力部５５２が、ロボット１３０の動作を制御する制御信号を生成する。制御信号出力部５５２は、エンドエフェクタ１４０が軌道計画部５３０により計画された軌道に沿って移動するように、ロボットアーム１３２に含まれる複数の関節のそれぞれの角度の経時変化を決定する。制御信号出力部５５２は、ロボットアーム１３２に含まれる複数の関節のそれぞれの角度を調整するための複数のモータ２３２の動作を制御するための制御信号を生成する。制御信号出力部５５２は、生成された制御信号を、駆動制御部１３４に送信する。これにより、ワークの移送処理が開始される。
【０１７１】
次に、Ｓ９３６において、登録データ比較部７２０が、（ｉ）商品情報格納部４５２に登録された、ワークに対応するパッケージの特性に関する情報と、（ｉｉ）ワークに関する実際の計測データに基づいて決定されるワークの特性に関する情報とを比較する。両者が整合する場合、異常検知部５４４は異常を検知しない。一方、両者が整合しない場合、異常検知部５４４が異常を検知する。上述されたとおり、本実施形態において、ワークが所定の位置で一旦静止する。そこで、登録データ比較部７２０は、ワークが静止している間に、両者を比較することが好ましい。
【０１７２】
異常検知部５４４が異常を検知した場合（Ｓ９３６のＮｏの場合）、Ｓ９４０において計画変更処理が実行される。具体的には、変更部５４６が、軌道計画部５３０の計画を変更したり、商品情報格納部４５２を更新したりすることを決定する。変更部５４６が、軌道計画部５３０の計画を変更することを決定した場合、変更部５４６は、当該変更の内容を示す情報を、制御信号出力部５５２に送信する。制御信号出力部５５２は、上記の変更の内容に合致するように、制御信号を生成する。制御信号出力部５５２は、生成された制御信号を駆動制御部１３４に送信する。計画変更処理が完了すると、Ｓ９５２の処理が実行される。
【０１７３】
一方、異常検知部５４４が異常を検知しなかった場合（Ｓ９３６のＮｏの場合）、ワークの移送処理が継続される。その後、Ｓ９５２において、ワークが軌道６００のセグメントＣｈに沿って移動する間、異常検知部５４４は、推定データ比較部７４０の比較結果に基づいて異常を検知する。
【０１７４】
異常検知部５４４が異常を検知した場合（Ｓ９５４のＹｅｓの場合）、例えば、Ｓ９６０において、停止処理が実行される。具体的には、停止判定部８４０が、ワークの移送を停止することを決定し、ワークの移送が停止されることを示す情報を、警告情報出力部５５４に出力する。警告情報出力部５５４は、異常の発生に伴い、ワークの移送が停止されることを示す情報を、オペレータに通知する。その後、ワークの移送処理が終了する。
【０１７５】
一方、異常検知部５４４が異常を検知しなかった場合（Ｓ９５４のＮｏの場合）、Ｓ９５６において、異常検知部５４４は、ワークの移送が完了したか否かを判定する。ワークの移送が完了していないと判定された場合（Ｓ９５６のＮｏの場合）、Ｓ９５２の処理が繰り返される。一方、ワークの移送が完了したと判定された場合（Ｓ９５６のＹｅｓの場合）、ワークの移送処理が終了する。
【０１７６】
図１０は、本発明の複数の態様が全体的又は部分的に具現化されてよいコンピュータ３０００の一例を示す。移載システム１００の一部は、コンピュータ３０００により実現されてよい。例えば、駆動制御部１３４、及び、移載制御装置１５０の少なくとも一方が、コンピュータ３０００により実現される。
【０１７７】
コンピュータ３０００にインストールされたプログラムは、コンピュータ３０００に、本発明の実施形態に係る装置に関連付けられるオペレーション又は当該装置の１又は複数の「部」として機能させ、又は当該オペレーション又は当該１又は複数の「部」を実行させることができ、及び／又はコンピュータ３０００に、本発明の実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ３０００に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又はすべてに関連付けられた特定のオペレーションを実行させるべく、ＣＰＵ３０１２によって実行されてよい。
【０１７８】
本実施形態によるコンピュータ３０００は、ＣＰＵ３０１２、ＲＡＭ３０１４、グラフィックコントローラ３０１６、及びディスプレイデバイス３０１８を含み、それらはホストコントローラ３０１０によって相互に接続されている。コンピュータ３０００はまた、通信インターフェース３０２２、ハードディスクドライブ３０２４、ＤＶＤ−ＲＯＭドライブ３０２６、及びＩＣカードドライブのような入出力ユニットを含み、それらは入出力コントローラ３０２０を介してホストコントローラ３０１０に接続されている。コンピュータはまた、ＲＯＭ３０３０及びキーボード３０４２のようなレガシの入出力ユニットを含み、それらは入出力チップ３０４０を介して入出力コントローラ３０２０に接続されている。
【０１７９】
ＣＰＵ３０１２は、ＲＯＭ３０３０及びＲＡＭ３０１４内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ３０１６は、ＲＡＭ３０１４内に提供されるフレームバッファ等又はそれ自体の中に、ＣＰＵ３０１２によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス３０１８上に表示されるようにする。
【０１８０】
通信インターフェース３０２２は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ３０２４は、コンピュータ３０００内のＣＰＵ３０１２によって使用されるプログラム及びデータを格納する。ＤＶＤ−ＲＯＭドライブ３０２６は、プログラム又はデータをＤＶＤ−ＲＯＭ３００１から読み取り、ハードディスクドライブ３０２４にＲＡＭ３０１４を介してプログラム又はデータを提供する。ＩＣカードドライブは、プログラム及びデータをＩＣカードから読み取り、及び／又はプログラム及びデータをＩＣカードに書き込む。
【０１８１】
ＲＯＭ３０３０はその中に、アクティブ化時にコンピュータ３０００によって実行されるブートプログラム等、及び／又はコンピュータ３０００のハードウエアに依存するプログラムを格納する。入出力チップ３０４０はまた、様々な入出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ３０２０に接続してよい。
【０１８２】
プログラムが、ＤＶＤ−ＲＯＭ３００１又はＩＣカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもあるハードディスクドライブ３０２４、ＲＡＭ３０１４、又はＲＯＭ３０３０にインストールされ、ＣＰＵ３０１２によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ３０００に読み取られ、プログラムと、上記様々なタイプのハードウエアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ３０００の使用に従い情報のオペレーション又は処理を実現することによって構成されてよい。
【０１８３】
例えば、通信がコンピュータ３０００及び外部デバイス間で実行される場合、ＣＰＵ３０１２は、ＲＡＭ３０１４にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インターフェース３０２２に対し、通信処理を命令してよい。通信インターフェース３０２２は、ＣＰＵ３０１２の制御の下、ＲＡＭ３０１４、ハードディスクドライブ３０２４、ＤＶＤ−ＲＯＭ３００１、又はＩＣカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
【０１８４】
また、ＣＰＵ３０１２は、ハードディスクドライブ３０２４、ＤＶＤ−ＲＯＭドライブ３０２６（ＤＶＤ−ＲＯＭ３００１）、ＩＣカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がＲＡＭ３０１４に読み取られるようにし、ＲＡＭ３０１４上のデータに対し様々なタイプの処理を実行してよい。ＣＰＵ３０１２は次に、処理されたデータを外部記録媒体にライトバックしてよい。
【０１８５】
様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。ＣＰＵ３０１２は、ＲＡＭ３０１４から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索／置換等を含む、様々なタイプの処理を実行してよく、結果をＲＡＭ３０１４に対しライトバックする。また、ＣＰＵ３０１２は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第２の属性の属性値に関連付けられた第１の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、ＣＰＵ３０１２は、当該複数のエントリの中から、第１の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第２の属性の属性値を読み取り、それにより予め定められた条件を満たす第１の属性に関連付けられた第２の属性の属性値を取得してよい。
【０１８６】
上で説明したプログラム又はソフトウエアモジュールは、コンピュータ３０００上又はコンピュータ３０００近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はＲＡＭのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それにより、上記のプログラムを、ネットワークを介してコンピュータ３０００に提供する。
【０１８７】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。また、技術的に矛盾しない範囲において、特定の実施形態について説明した事項を、他の実施形態に適用することができる。また、各構成要素は、名称が同一で、参照符号が異なる他の構成要素と同様の特徴を有してもよい。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【０１８８】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【０１８９】
本発明の様々な実施形態は、フローチャートおよびブロック図を参照して記載されてよく、ここにおいてブロックは、（１）操作が実行されるプロセスの段階または（２）操作を実行する役割を持つ装置のセグメントを表わしてよい。特定の段階およびセグメントが、専用回路、コンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、および／またはコンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタルおよび／またはアナログハードウェア回路を含んでよく、集積回路（ＩＣ）および／またはディスクリート回路を含んでよい。プログラマブル回路は、論理ＡＮＤ、論理ＯＲ、論理ＸＯＲ、論理ＮＡＮＤ、論理ＮＯＲ、および他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プログラマブルロジックアレイ（ＰＬＡ）等のようなメモリ要素等を含む、再構成可能なハードウェア回路を含んでよい。
【０１９０】
コンピュータ可読媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読媒体のより具体的な例としては、フロッピー（登録商標）ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、消去可能プログラマブルリードオンリメモリ（ＥＰＲＯＭまたはフラッシュメモリ）、電気的消去可能プログラマブルリードオンリメモリ（ＥＥＰＲＯＭ）、静的ランダムアクセスメモリ（ＳＲＡＭ）、コンパクトディスクリードオンリメモリ（ＣＤ-ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、ブルーレイ（ＲＴＭ）ディスク、メモリスティック、集積回路カード等が含まれてよい。
【０１９１】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ（ＩＳＡ）命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはＳｍａｌｌｔａｌｋ、ＪＡＶＡ（登録商標）、Ｃ＋＋等のようなオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語または同様のプログラミング言語のような従来の手続型プログラミング言語を含む、１または複数のプログラミング言語の任意の組み合わせで記述されたソースコードまたはオブジェクトコードのいずれかを含んでよい。
【０１９２】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサまたはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク（ＬＡＮ）、インターネット等のようなワイドエリアネットワーク（ＷＡＮ）を介して提供され、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【符号の説明】
【０１９３】
１００  移載システム、１０２  パッケージ、１１０  デパレタイズ用プラットフォーム、１２０  荷受用プラットフォーム、１３０  ロボット、１３２  ロボットアーム、１３４  駆動制御部、１４０  エンドエフェクタ、１５０  移載制御装置、１６０  撮像装置、１８０  センサ、１９０  センサ、２３２  モータ、２３４  エンコーダ、２４２  力覚センサ、２４６  把持部材、３１０  本体、３１２  減圧室、３１４  接続部材、３２０  吸着パット、３３０  バルブ、３４０  吸気配管、４２２  画像データ取得部、４２４  アーム情報取得部、４２６  ハンド情報取得部、４３２  入出力制御部４３２、４３４  撮像制御部、４３６  移載制御部、４４０  商品情報登録部、４５０  格納部、４５２  商品情報格納部、４５４  ワーク情報格納部、４５６  モデル情報格納部、４５８  設定情報格納部、５２０  画像解析部、５２２  移送対象特定部、５２４  把持態様決定部、５３０  軌道計画部、５４２  アルゴリズム決定部、５４４  異常検知部、５４６  変更部、５５２  制御信号出力部、５５４  警告情報出力部、６００  軌道、６１０  待機位置、６２０  把持位置、６２２  移送準備位置、６２４  載置準備位置、６３０  解放位置、７２０  登録データ比較部、７３０  出力シミュレータ、７４０  推定データ比較部、７５０  基準データ比較部、７６２  質量異常検知部、７６４  重心異常検知部、７７０  異常特定部、８２０  登録情報変更部、８３０  設定速度変更部、８４０  停止判定部、３０００  コンピュータ、３００１  ＤＶＤ−ＲＯＭ、３０１０  ホストコントローラ、３０１２  ＣＰＵ、３０１４  ＲＡＭ、３０１６  グラフィックコントローラ、３０１８  ディスプレイデバイス、３０２０  入出力コントローラ、３０２２  通信インターフェース、３０２４  ハードディスクドライブ、３０２６  ＤＶＤ−ＲＯＭドライブ、３０３０  ＲＯＭ、３０４０  入出力チップ、３０４２  キーボード
【図１】
2020069637.tif 000003
【図２】
2020069637.tif 000004
【図３】
2020069637.tif 000005
【図４】
2020069637.tif 000006
【図５】
2020069637.tif 000007
【図６】
2020069637.tif 000008
【図７】
2020069637.tif 000009
【図８】
2020069637.tif 000010
【図９】
2020069637.tif 000011
【図１０】
2020069637.tif 000012