(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024113575
(43)【公開日】2024-08-22
(54)【発明の名称】協働システム
(51)【国際特許分類】
B25J 13/08 20060101AFI20240815BHJP
【FI】
B25J13/08 A
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023018657
(22)【出願日】2023-02-09
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り https://www.sice.or.jp/org/kyushu/2022/conference/proc/ 第41回計測自動制御学会九州支部学術講演会予稿集
(71)【出願人】
【識別番号】504209655
【氏名又は名称】国立大学法人佐賀大学
(74)【代理人】
【識別番号】100099634
【弁理士】
【氏名又は名称】平井 安雄
(72)【発明者】
【氏名】福田 修
(72)【発明者】
【氏名】ヨー ウェン リアング
(72)【発明者】
【氏名】川崎 心温
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS38
3C707BS10
3C707HS27
3C707JU03
3C707KS01
3C707KS07
3C707KS08
3C707KS09
3C707KS11
3C707KS17
3C707KS21
3C707KT01
3C707KT06
3C707KT17
3C707KT18
3C707LS16
3C707LV01
3C707LW11
3C707LW12
3C707MS27
3C707MS29
3C707MT04
3C707NS19
3C707NS26
3C707XK06
3C707XK17
3C707XK18
(57)【要約】 (修正有)
【課題】作業者の判断とロボットの判断とで相互に補い合いながら協働することで効率よく作業を実行することができる協働システムを提供する。
【解決手段】カメラで撮像された撮像情報に基づいて作業対象の状態を解析する画像解析部と、画像解析部の解析結果から、前記作業対象の状態が予め設定されている目的に合致する状態に近づくような最適動作を演算する最適動作演算部と、作業者の体の一部に装着され、最適動作に従って作業者の体の一部である装着部位の動きを制御して駆動し、又は装着部位の動きに合わせて動作するロボットと、ロボットの駆動状態が最適動作に従った駆動状態に一致するかどうかを判定する駆動判定部とを備え、駆動判定部が、ロボットの駆動状態と最適動作に従った駆動状態とが一致しないと判定した場合に、画像解析部が作業対象の最新の状態を解析し、最適動作演算部が最新の解析結果に基づいて最適動作を再演算する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
作業対象を撮像するカメラと、
カメラで撮像された撮像情報に基づいて作業対象の状態を解析する撮像情報解析手段と、
前記解析手段の解析結果から、前記作業対象の状態が予め設定されている目的に合致する状態に近づくような最適動作を演算する最適動作演算手段と、
作業者の体の一部に装着され、前記最適動作にしたがって前記作業者の体の一部である装着部位の動きを制御して駆動し、又は前記装着部位の動きに合わせて動作するロボットと、
前記ロボットの駆動状態に関する情報を取得し、当該駆動状態が前記最適動作にしたがった駆動状態に一致するかどうかを判定する駆動判定手段とを備え、
前記駆動判定手段が、前記ロボットの駆動状態と前記最適動作にしたがった駆動状態とが一致しないと判定した場合に、前記撮像情報解析手段が前記作業対象の最新の状態を解析し、前記最適動作演算手段が最新の解析結果に基づいて前記最適動作を再演算することを特徴とする協働システム。
【請求項2】
請求項1に記載の協働システムにおいて、
前記ロボットは、前記装着部位からの負荷を受けた場合に当該負荷にしたがった動作を行い、前記装着部位からの負荷がない場合に前記最適動作にしたがった駆動を行うことを特徴とする協働システム。
【請求項3】
請求項1又は2に記載の協働システムにおいて、
前記解析手段の解析結果に基づいて、前記目的に合致させるための適合度合を示す前記作業対象の評価値を算出する作業対象評価手段と、
前記ロボットを前記最適動作とは異なるように動作させるのに必要となる前記装着部位から前記ロボットに対する負荷の大きさを調整する負荷調整手段とを備え、
当該負荷調整手段が、前記作業対象評価手段が算出した評価値に応じて前記負荷の大きさを調整することを特徴とする協働システム。
【請求項4】
請求項3に記載の協働システムにおいて、
前記作業対象に対して作業を実行する作業者の状態に関する作業者情報を取得する作業者情報取得手段と、
前記作業者情報に基づいて、前記作業対象を前記目的に合致させるための作業効率についての前記作業者の評価値を算出する作業者評価手段とを備え、
前記負荷調整手段が、前記作業対象評価手段が算出した評価値、及び前記作業者評価手段が算出した評価値に応じて前記負荷の大きさを調整することを特徴とする協働システム。
【請求項5】
請求項3に記載の協働システムにおいて、
前記作業が複数種類の形状を有するパッケージ対象を所定の空間にパッケージングする作業であり、前記ロボットが前記作業者の腕に装着されるマニピュレータであり、
前記作業対象評価手段が、前記作業対象に含まれる残りのパッケージ対象の全体個数に対する各形状の個数の割合に応じて前記評価値を算出することを特徴とする協働システム。
【請求項6】
請求項3に記載の協働システムにおいて、
前記作業がパッケージ対象を所定の空間にパッケージングする作業であり、前記ロボットが前記作業者の腕に装着されるマニピュレータであり、
前記作業対象評価手段が、前記所定の空間の形状に応じて前記評価値を算出することを特徴とする協働システム。
【請求項7】
請求項4に記載の協働システムにおいて、
前記作業がパッケージ対象を所定の空間にパッケージングする作業であり、前記ロボットが前記作業者の腕に装着されるマニピュレータであり、
前記作業者評価手段が、前記作業者が連続して作業している作業時間、及び/又は作業開始から作業終了までの積算された作業時間に応じて前記評価値を算出することを特徴とする協働システム。
【請求項8】
請求項4に記載の協働システムにおいて、
前記作業がパッケージ対象を所定の空間にパッケージングする作業であり、前記ロボットが前記作業者の腕に装着されるマニピュレータであり、
前記作業者評価手段が、前記ロボットが前記最適動作とは異なる駆動を行う場合における当該ロボットの駆動動作速度の経時的な変化に応じて前記評価値を算出することを特徴とする協働システム。
【請求項9】
請求項1又は2に記載の協働システムにおいて、
前記解析手段の解析結果に基づいて、前記目的に合致させるための適合度合を示す前記作業対象の評価値を算出する作業対象評価手段と、
前記ロボットが前記最適動作にしたがって駆動する場合の駆動速度を調整する速度調整手段を備え、
前記速度調整手段が、前記作業対象評価手段が算出した評価値に応じて前記駆動速度を調整することを特徴とする協働システム。
【請求項10】
請求項1又は2に記載の協働システムにおいて、
前記最適動作演算手段が演算した最適動作に関する情報が含まれる仮想画像を生成する仮想画像生成手段と、
作業者の頭部に装着され、現実映像と前記仮想画像とを重ねて表示するヘッドマウントディスプレイとを備えることを特徴とする協働システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、作業者とロボットとが適正に協働して目的とする作業を実行する協働システムに関する。
【背景技術】
【0002】
人間と機械との協働は、作業の精度・効率の向上および省力化に必要不可欠な要素である。両者が同じ環境で作業する協働ロボットやパワーアシスト等の研究が、これまで積極的かつ精力的に行われてきた。しかしながら、これらのシステムを注意深く観察すると作業の主導権を握っているのは人間か機械かのいずれか一方であり、人間同士の協働作業のように主導権を交換し合ったり、短所を補い合ったりという段階へは未だ至っていない。今後、我が国における労働人口減少に伴う社会において作業者のスキルや経験不足を補うためには協働の相乗効果を高めることが喫緊かつ克服すべき重要課題であり、本課題の解決にて大きなブレークスルーが期待される。
【0003】
人間と機械とが協働する技術について、例えば特許文献1~3に示す技術が開示されている。特許文献1には、車両の前方を撮像するカメラからの画像情報に基づき走行中の車線と自車両との位置関係を検出し、その検出結果に基づいてレーンに沿った走行を実現するレーンキープ制御中に、ドライバによる介入動作(ドライバオーバーライド)が行われると介入動作による偏差を打ち消そうとトルクを発生することが開示されている。
【0004】
特許文献2には、脳卒中等の脳障害による麻痺腕の動作をアシストするリハビリ装置であって、健常腕が麻痺腕をアシストするアシスト動作を検出する検出部と、麻痺腕に屈伸動作を行わせるアシスト部と、検出部によるアシスト動作の検出によって、アシスト部の動作タイミング、動作速度、又は屈曲負荷若しくは伸展負荷を調整する調整部と、調整部によって調整された動作タイミング、動作速度、又は屈曲負荷若しくは伸展負荷によってアシスト部を動作させる制御部とを備えるリハビリ装置が開示されている。また、筋電センサで検出した筋電位又は筋電センサで検出した筋電位に基づき計算された筋シナジと、麻痺腕が動く映像とを重ね合わせて、頭部装着ディスプレイを通じて表示することが開示されている。
【0005】
特許文献3には、検査対象に付着した異物を検査する異物検査システムにおいて、カメラによって撮像された検査対象領域における異物や異物が付着している色付けされた領域を仮想画像として現実画像に重ねた画像をヘッドマウントディスプレイ装置に表示し、モーションキャプチャ等により作業者の動きを検知して、清掃エリアにおける清掃作業の進捗状態を着色で示すことが開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特許第6273706号公報
【特許文献2】特許第6296494号公報
【特許文献3】特開2021-174785号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1~3に開示される技術では、人間と機械とで適正なタイミングで主導権を交換し合ったり、必要な状況に応じて短所を補い合ったりといったことまで十分に実現するのが難しい。特に、現時点においては、パッケージングや組み立てといった複雑な作業を行う場合に、人間と機械とが協働して作業効率を上げること(例えば、作業精度を上げる、作業スピードを上げる等)が極めて困難が状況であると言える。
【0008】
本発明は、上記課題を解決するためになされたものであり、作業者の判断とロボットの判断とで相互に補い合いながら、それぞれが協働することで効率よく作業を実行することができる協働システムを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明に係る協働システムは、作業対象を撮像するカメラと、カメラで撮像された撮像情報に基づいて作業対象の状態を解析する撮像情報解析手段と、前記解析手段の解析結果から、前記作業対象の状態が予め設定されている目的に合致する状態(以下、作業達成状態という)に近づくような最適動作を演算する最適動作演算手段と、作業者の体の一部に装着され、前記最適動作にしたがって前記作業者の体の一部である装着部位の動きを制御して駆動し、又は前記装着部位の動きに合わせて駆動するロボットと、前記ロボットの駆動状態に関する情報を取得し、当該駆動状態が前記最適動作にしたがった駆動状態に一致するかどうかを判定する駆動判定手段とを備え、前記駆動判定手段が、前記ロボットの駆動状態と前記最適動作にしたがった駆動状態とが一致しないと判定した場合に、前記撮像情報解析手段が前記作業対象の最新の状態を解析し、前記最適動作演算手段が最新の解析結果に基づいて前記最適動作を再演算するものである。
【0010】
このように、本発明に係る協働システムにおいては、作業対象を撮像し、撮像された撮像情報に基づいて作業対象の状態を解析し、解析結果から作業対象の状態が予め設定されている目的に合致する状態に近づくような最適動作を演算し、作業者の体の一部に装着され、前記最適動作にしたがって前記作業者の体の一部である装着部位の動きを制御して駆動し、又は前記装着部位の動きに合わせて駆動するロボットの駆動状態に関する情報を取得し、当該駆動状態が前記最適動作にしたがった駆動状態に一致するかどうかを判定し、前記ロボットの駆動状態と前記最適動作にしたがった駆動状態とが一致しないと判定した場合に、前記作業対象の最新の状態を解析し、当該最新の解析結果に基づいて前記最適動作を再演算するため、ロボットによる最適動作の作業を実現しつつ、必要に応じて作業者の判断を優先することでロボットと作業者との主導権の交換を適正なタイミングで行うことを可能にしつつ、作業状況に応じて短所を補い合った協働作業を実現することができるという効果を奏する。
【図面の簡単な説明】
【0011】
【
図1】第1の実施形態に係る協働システムのシステム構成図である。
【
図2】第1の実施形態に係る協働システムにおける演算装置の構成を示す機能ブロック図である。
【
図3】第1の実施形態に係る協働システムにおいてYOLACTを用いた学習用のイチゴの画像と実際にイチゴの面積を検出した結果を示す図である。
【
図4】第1の実施形態に係る協働システムにおける画像解析部がイチゴの色を判別した場合の処理結果を示す図である。
【
図5】第1の実施形態に係る協働システムにおいて最適動作が求められた結果の一例を示す図である。
【
図6】第1の実施形態に係る協働システムにおいて評価値に基づいて最適動作が求められた結果の一例を示す図である。
【
図7】第1の実施形態に係る協働システムの動作を示すフローチャートである。
【
図8】その他の実施形態に係る協働システムにおける作業状態の一例を示す第1の図である。
【
図9】その他の実施形態に係る協働システムにおける作業状態の一例を示す第2の図である。
【
図10】実施例において開発したマニピュレータを用いた場合の協働システムの概念図である。
【
図11】実施例において開発したマニピュレータの構成を示す図である。
【
図13】実施例においてロボット主導の場合の基礎実験の様子を示す図である。
【
図14】実施例において作業者主導の場合の基礎実験の様子を示す図である。
【
図15】実施例においてイチゴ部分の面積と重量との相関を調べた結果を示す図である。
【
図16】
図15の相関性に基づいて精度検証を行った結果を示す図である。
【
図17】実施例において実際の重量と推定重量とを比較した結果を示す図である。
【
図18】実施例において完熟度の推定結果を示す図である。
【
図19】実施例において最適解の算出結果を示す図である
【発明を実施するための形態】
【0012】
(本発明の第1の実施形態)
本実施形態に係る協働システムについて、
図1ないし
図7を用いて説明する。本実施形態に係る協働システムは、作業者の体に装着するロボットをコンピュータが演算した最適動作にしたがって駆動させることで作業を効率的に行いつつ、作業者の判断により演算された最適動作とは異なる駆動も許容することで、作業者とロボットとが主導権を入れ替えながら協働できるものである。なお、以下の実施形態においては、作業の一例として作業対象を決められたサイズの空間や重量の範囲で効率的にパッケージングする作業に関して説明する。
【0013】
図1は、本実施形態に係る協働システムの構成を示すシステム構成図である。
図1において協働システム1は、作業の様子を撮像するカメラ2と、コンピュータ(例えば、CPU、メモリ等を含む)やプログラムが内蔵され、協働システム1に関する様々な演算処理を実行する演算装置3と、作業者の体の一部に装着され演算装置3の演算結果又は作業者の操作にしたがって駆動するロボット4と、作業者の頭部に装着され現実の作業状態を表示又は視認できると共に、現実の作業状態に仮想映像を重ねた映像を表示することが可能なヘッドマウントディスプレイ装置5(以下、HMD5という)とを備える。
【0014】
カメラ2は、少なくとも作業対象(例えば、パッケージング作業においてはパッケージに詰め込まれる対象物とそのパッケージに相当)を常時撮像しており、任意の定点から撮像を行ってもよいし、HMD5に固定して作業者の頭部の動きに対応させて撮像するようにしてもよい。また、必要に応じて作業者全体又は体の一部が含まれるように撮像してもよい。
【0015】
演算装置3は、カメラ2で撮像された撮像情報に基づいてロボット4の駆動制御等を行うと共に、ロボット4から取得する駆動状態に関する情報に基づいて演算処理等を行う。また、カメラ2で撮像された撮像情報や演算処理の結果からHMD5に表示する映像を生成し、その映像情報をHMD5に送る処理等を行う。なお、この演算装置3の具体的な構成及び機能については、
図2等を用いて詳細を後述する。
【0016】
ロボット4は、作業者の体の一部に装着され、当該装着されている作業者の体の一部(以下、装着部という)と一体化させ、モータ等の駆動によりその位置や角度を変える動作を行うことが可能となっている。また、作業者の意志で装着部を動かした場合には、その装着部の動きにしたがってロボット4の位置や角度を変える動作が可能となっている。例えばパッケージング作業においては、作業者の腕に装着されるマニピュレータであり、演算装置3の演算結果に基づいてマニピュレータの関節のモータを駆動させることで、当該マニピュレータの位置や関節の角度などが制御され、それに伴い作業者の腕も同様に動作する。このとき作業者は、装着部である腕を完全に脱力させてマニピュレータの動きに委ねることも可能であるし、腕の動きをマニピュレータの動きに同期させることで、非常に小さい力で腕を動かして省エネルギーとすることも可能である。一方で、作業者の判断により演算装置3の演算結果にしたがったマニピュレータの動きとは異なる動作を行う場合には、マニピュレータごとその異なる動作にしたがえることが可能であり、このときに必要となる作業者の負荷は作業状態に応じて可変となっている。この負荷の大きさを可変にする詳細な処理方法については後述する。
【0017】
HMD5は、一般的に知られているヘッドマウントディスプレイ装置やスマートグラスであり、AR、VR、MR等を実行できるものである。ディスプレイに表示又はされる内容は、作業対象の状態に演算装置3で作成された仮想映像を重ねたものとなる。作業対象の状態は、撮像された映像でもよいし、スマートグラスなどのレンズを通して作業者が実際に視認している現実の作業対象の状態であってもよい。演算装置3で作成される仮想映像については、詳細を後述する。
【0018】
以下、
図2ないし
図6を用いて演算装置3の構成及び機能について詳細に説明する。
図2は、本実施形態に係る協働システムにおける演算装置の構成を示す機能ブロック図である。演算装置3は、カメラ2やロボット4などの外部機器から送られる情報を取得する情報取得部31と、カメラ2で撮像された撮像情報を画像処理により解析し、作業対象の種類、サイズ、量、色、形状などの作業対象の状態を求める画像解析部32と、画像解析部32の解析結果から、現在の作業対象の状態を予め設定されている目的の状態に近づけるために最適である次の動作(以下、最適動作という)を演算する最適動作演算部33と、求められた最適動作にしたがってロボット4のモータを駆動するための制御信号を求める駆動制御部34と、ロボット4が実際に駆動した駆動情報と最適動作演算部33が演算した最適動作が一致するかどうかを判定する駆動判定部35と、最適動作演算部33が演算した最適動作に関する情報をHMD5に表示するための映像を生成する仮想映像生成部36とを備える。
【0019】
また、最適動作演算部33は、作業対象の状態が予め設定されている目的に合致するための適合の度合いを示す指標となる評価値を作業対象について算出する作業対象評価部33aと、作業対象の状態が予め設定されている目的に効率よく合致させるためのロボット4の駆動制御の指標となる評価値を作業者について算出する作業者評価部33bとを備える。
【0020】
さらに、駆動制御部34は、最適動作演算部33(作業対象評価部33a及び/又は作業者評価部33b)で算出された評価値に応じて、ロボット4が最適動作とは異なる動作を行うために作業者が必要となる装着部からロボット4に対する負荷の大きさ、すなわちロボット4のモータのトルクを調整するための制御信号を求める負荷調整部34aと、最適動作演算部33(作業対象評価部33a及び/又は作業者評価部33b)で算出された評価値に応じて、ロボット4が最適動作を行う場合のロボット4の駆動速度、すなわちロボット4のモータの回転速度を調整するための制御信号を求める速度調整部34bとを備える。
【0021】
情報取得部31は、カメラ2で撮像された撮像情報やロボット4が実際に駆動した駆動情報を取得する。ロボット4の駆動情報には、ロボット4を動作させたときのモータの回線数やトルク値が含まれている。また、必要に応じて作業者の生体情報40を取得する場合もある。
【0022】
画像解析部32は、上述したようにカメラ2で撮像された画像を画像処理により解析し、作業対象の種類、サイズ、量、色、形状などの作業対象の状態を求める。画像処理の手法については、一般的に公知を技術であるため詳細な説明は省略する。また、画像処理の中で深層学習等のAI技術を用いるようにしてもよい。すなわち、予め作業対象が特定されている場合に、その作業対象について十分な学習を行うことで、作業対象の状態を高精度に解析することが可能となる。
【0023】
この画像解析部32による画像解析処理について、具体例を挙げて説明する。ここではイチゴのパック詰め作業について説明する。作業対象はいちごとパックである。いちごのパック詰め作業は、1パックごとに厳密な重さが定義されており、的確な作業が求められる。しかしながら、イチゴは人の手で触れると品質が低下することから、やたらに触れて1粒ずつ重さを計測することができない。このことから、現在のイチゴのパック詰め作業は、目視によって重さを推定できるような熟練の作業者が必要であり、新規に人手を補うのが難しいといった現状がある。
【0024】
画像解析部32は、撮像されたイチゴの画像からイチゴの重量を推定するといった処理を行う。具体的には、画像データからイチゴの領域を抽出して面積を求め、この面積から予め登録されているイチゴの重さの組み合わせ最適解を算出する。
図3は、YOLACTを用いた学習用のイチゴの画像(A)と実際にイチゴの面積を検出した結果(B)を示す図である。
図3(A)においてイチゴ画像を数百枚用意し、インスタンスセグメンテーション用のアノテーションを行い、その後画像の回転と輝度に変化を加えた画像を追加して学習を行っておく。作業対象としてのイチゴの画像を画像解析部32に入力することで、
図3(B)に示すようなイチゴの果肉部分の面積を抽出することができる。なお、
図3(B)の画像は、イチゴの果肉部分の領域を抽出して二値化した画像を示している。抽出された面積から相当する重量の最適解を求めることが可能となる。
【0025】
また、上記ではイチゴの面積を抽出しているが、そもそも作業対象がイチゴであるかどうかの判断も学習により特定することが可能である。さらに、イチゴの色についても判別可能である。
図4は、画像解析部32がイチゴの色を判別した場合の処理結果を示す図である。この場合も、予め完熟度合いを示す多数の画像データを学習しておくことで、イチゴの色から完熟度を算出することが可能となっている。
【0026】
なお、画像解析部32の上記処理はあくまで一例であり、他の作業対象についてもAI技術を用いることでその形状、サイズ(面積、重量)、種別、色、状態等をある程度求めることが可能である。
【0027】
最適動作演算部33は、画像解析部32による解析結果に基づいて最適動作を求める。
図5は最適動作が求められた結果の一例を示す図である。
図5の場合は、上記の具体例と同様にイチゴのパック詰め作業の最適動作を求めた結果であるが、ここでは、重量の総和、詰め込むイチゴのサイズ、完熟度がパック詰めの要件、すなわち予め設定された目的となる作業対象の状態として定義されている。具体的には、サイズSMLのうちMサイズ優先、数日内に完熟度が最適となり、総重量を重量W程度とするといった要件が定義されているとする。
【0028】
前述したように、作業対象であるイチゴの画像解析結果から、各イチゴの重量(面積から推定)、サイズ(重量と面積から算出)、完熟度(色から推定)を求めることができるため、上記の要件に合致するイチゴを個別に特定することが可能となる。
図5においては、現時点では(1)、(2)及び(6)が上記要件に合致すると判断できるため、(1)、(2)及び(6)のいずれかをパック詰めするということが最適動作として求められる。実際には、(1)、(2)及び(6)の中でもより上記要件に合致する順に優先順位が特定されており、厳密には、例えば(1)、(2)、(6)の順に優先してパック詰めを行うことが最適動作として求められる。
【0029】
この場合、各イチゴごとに上記要件を満たすかどうかを判定し、満たした要件の個数に応じて当該個数が最大のものを最優先のパック詰め対象として特定することで最適動作を求めるようにしてもよいし、以下に示すような作業対象評価部33aによる評価値の演算結果に基づいて最適動作を求めてもよい。
図6は、評価値に基づいて最適動作が求められた結果の一例を示す図である。
図6に示すように、作業対象であるイチゴの評価値R
1を算出するための関数f
1を設定し、画像解析結果により得られた情報をパラメータ(例えば面積S,完熟度T)として関数f
1を演算することで評価値R
1=f
1(S,T)を求め、評価値R
1が高いイチゴを優先してパック詰めするという最適動作を求めることも可能である。このとき、評価値R
1が最大となっている単一のイチゴをパック詰めすることを最適動作としてもよいし、評価値R
1が所定の閾値(例えば、
図6の場合は8.0)を超えている複数のイチゴのグループのうちR
1が大きいものから順次パック詰めすることを最適動作としてもよい。また、このような評価値による演算以外にも、例えばナップサック問題やパッケージング問題を解くための動的計画法などのアルゴリズムを用いて最適動作を求めることが可能である。
【0030】
また、上記においては、作業対象としてイチゴの画像解析処理及び最適動作の演算について説明しているが、パック側の画像も画像解析処理を行い、最適動作の演算のパラメータとして使用される。例えば、具体的には、作業過程においてパック全体に対するイチゴが占める面積(パックの深さが予めわかっている場合は体積)を画像解析部32の画像解析処理で算出し、残りの空間に詰め込むのに相応しいかどうかも評価値R1に反映されるような関数f1を用意してもよい。この場合、残りの空間が小さめで現在の総重量が小さいようなときには、空間が生じにくいような形状(例えば矩形に近い形状)のイチゴについて評価値R1が高くなるような関数f1を用意する。また、例えば、作業過程において既にパック詰めされているイチゴのサイズを画像解析処理で算出し、当該パック詰めされているイチゴのサイズが要件の範囲内で全体的に小さめである場合には、これからパック詰めする側のイチゴのうち要件を満たす範囲内で大きめのイチゴについて評価値R1が高くなるような関数f1を用意する。なお、上記R1の算出方法はあくまで一例であり、これ以外にも作業対象の形状、サイズ、新鮮度、価格、脆さ、硬さ、材質等の様々なパラメータを用いてR1が算出されてもよい。
【0031】
このように、作業対象評価部33aが、作業対象の状態を予め設定されている要件(目的)に合致する状態に近づける適合度合いを示す評価値を作業対象ごとに算出することで最適動作を求めることができ、この評価値を算出する関数f1を、実行する作業ごとに用意することで、様々な作業に対応した最適動作を求めることができる。
【0032】
また、最適動作演算部33は必要に応じて、作業者評価部33bが作業者に対する評価値を算出するようにしてもよい。作業者に対する評価値を算出するためのパラメータとしては、例えば作業者の疲労度や判断の鈍り具合などがある。1回の作業における連続作業時間やトータルの作業時間が長くなるほど作業者の疲労度が大きくなっていると見なすことができる。また、作業者の判断でロボット4を動かして作業する場合の動作速度が時間の経過と共に遅くなっているような場合には、作業者の疲労度が大きなっていると見なすことができる。つまり、作業者の評価値R2を算出するための関数f2を設定し、上記のような連続作業時間M1、トータル作業時間M2、作業速度の減少率Nといった情報をパラメータとして評価値R2=f2(M1,M2,N)を求める。ここで求めた評価値R2は、後述する駆動制御部34で利用される。
【0033】
なお、上記R2の算出方法はあくまで一例であり、R2を算出するためのパラメータは、これ以外にも例えば、作業者の生体情報40(体温、脈拍、血圧)や目の開き具合、瞬きの回数、誤作業の割合、得手、不得手、経験の有無、年齢、性別、体の大きさ等の様々なパラメータを用いてR2が算出されてもよい。これらの情報は、外部機器からの通信や作業管理者による入力操作などにより情報取得部31に入力されて、最適動作演算部33に送られる。
【0034】
駆動制御部34は、最適動作演算部33で求められた最適動作にしたがってロボット4が動作するようにロボット4のモータを駆動するための制御信号を生成し、その制御信号をロボッ4のモータに送信する。具体的には、例えば
図5の例で説明すると、マニピュレータの先端部(すなわち作業者の指先)が(1)のイチゴの上に移動するように関節部分を駆動させ、その状態で所定時間(例えば1秒程度)停止、又は画像解析により作業者がイチゴを掴んだと判断すると、マニピュレータの先端部をパックの上に移動させる。その状態で所定時間(例えば1秒程度)停止、又は画像解析により作業者がイチゴをパック内に配置したと判断すると、次のイチゴ(2)のパック作業に移行する。(1)、(2)及び(6)のイチゴがこの順番でパック詰めされると、最適動作演算部33で演算された最適動作が完了し、次の最適動作を求める処理が行われる。
【0035】
ここで生成される制御信号は、モータの回転数、回転速度、トルクなどの制御信号であるが、画像解析で求められる画面上のイチゴの座標、カメラ2の設置位置、マニピュレータの設置位置、関節、先端部分の現在の位置等の相対的な位置関係を示す情報を用いて生成される。駆動速度については、作業者の装着部への負担や安全性を考慮して予め固定値として設定するようにしてもよいし、後述するように作業対象や作業者の評価値に応じて可変できるようにしてもよい。
【0036】
また、上述したようにロボット4は、作業者の判断で最適動作とは異なる動作(以下、判断動作という)にしたがえることが可能であるが、このとき作業者が判断動作を行うために必要となる負荷は作業状態に応じて可変となっている。この負荷の大きさは、必要に応じて負荷調整部34aにより算出され、その制御信号が生成される。負荷調整部34aは、作業対象評価部33aで算出された評価値R1や作業者評価部33bで算出された評価値R2に値に応じて、作業者が判断動作を行うために必要となる負荷の大きさを制御する制御信号を生成する。
【0037】
例えば
図6の例で説明すると、最適動作として(1)のイチゴをパック詰めするようにマニピュレータが動作しているとき又は動作しようとしているときに、作業者の判断で(2)のイチゴをパック詰めする第1の判断動作を行う場合と、作業者の判断で(5)のイチゴをパック詰めする第2の判断動作を行う場合とでは、作業者がマニピュレータを判断動作にしたがえるために必要となる負荷が異なるように制御される。具体的には、(2)の評価値R
2は比較的高いが、(5)の評価値R
2はかなり低い値となっていることから、第1の判断動作は許容範囲であると判断することができ、第2の判断動作は許容範囲から逸脱していると判断することができる。この判断は、例えば許容範囲を示す予め設定された基準値とR
1との差から行うことができる。つまり、第1の判断動作に必要な負荷に比べて第2の判断動作に必要な負荷が大きくなるようにロボット4のモータを制御することで、(5)のイチゴはパック詰めされにくいものとなっている。
【0038】
また、負荷調整部34aは、評価値R2に基づいた負荷調整を行うようにしてもよい。すなわち、作業者の評価値R2が高い(R2が高いほど作業者が効率よく作業できるものとする)場合には、作業者の判断を優先しやすくするために判断動作を行うのに必要な負荷を小さくし、作業者の評価値R2が低い場合は、演算装置3の演算結果を優先しやすくするために判断動作に必要な負荷を大きくする。これらの負荷の調整は、ロボット4を駆動するモータのトルクを設定することで可能となる。
【0039】
なお、(5)のようにR1が低い作業対象については許容範囲から逸脱していると判断されるものの、特別な事情によりどうしてもパック詰めしないといけない場合もあり得ることから、第2の判断動作に必要な負荷の大きさはあくまで作業者が動かせる範囲での大きさとなる。
【0040】
さらに、駆動制御部34は、必要に応じてロボット4の駆動速度を調整する速度調整部34bを備える。速度調整部34bは、評価値R1や評価値R2の値に応じてロボット4の駆動速度を調整するための制御信号を生成する。具体的には、評価値R1が高い作業対象に対して行う最適動作はロボット4の駆動速度が評価値R1に応じて速くなるように制御信号を生成し、逆に評価値R1が低い作業対象に対して行う最適動作はロボット4の駆動速度が評価値R1に応じて遅くなるように制御信号を生成する。評価値R1が高いか低いかは、予め基準値を設けて当該基準値との比較で判断してもよいし、評価値R1の最大値と最小値とから、相対的に高いか低いかを判断してもよい。また、評価値R2に関しても同様の処理を行うことが可能であり、評価値R2が高い作業者の場合は、ロボット4の駆動速度がR2に応じて速くなるように制御信号を生成し、評価値R2が低い作業者の場合は、ロボット4の駆動速度がR2に応じて遅くなるように制御信号を生成する。
【0041】
駆動判定部35は、ロボット4が実際に駆動した駆動状態に関する情報を取得し、この駆動状態が最適動作演算部33で求められた最適動作にしたがった駆動状態に一致するかどうかを判定する。一致する場合は、引き続き最適動作にしたがった駆動を行い、一致しない場合は、情報取得部31が作業対象や作業者の現在の情報について、画像解析部32による画像解析等の処理を行い、最適動作演算部33が最適動作を再演算する。
【0042】
図5及び
図6の例で説明すると、最適動作として、パック詰めの対象が(1)、(2)又は(6)でこれらを優先してパック詰めすることが最適動作演算部33の演算で求められているとする。この場合に、(1)、(2)又は(6)を連続してパック詰めしている間はロボット4の駆動状態が常時最適動作であるため、駆動判定部35は駆動状態が最適動作に一致していると判定する。一方、(1)、(2)及び(6)のパック詰めが完了する前(例えば(1)のみをパック詰めした場合)に、これ以外のイチゴ(例えば、(4)のイチゴ)を判断動作でパック詰めしたときは、この判断動作を行うためにロボット4が駆動した駆動状態が最適動作に一致しないため、駆動判定部35は最適動作が行われなかったと判定する。そして、この一致していないという判定結果が出た段階で、最適動作演算部33による最適動作の再演算が実行される。すなわち、(1)と(4)を除いた残りのイチゴについて評価値の再計算や最適動作の再演算が実行される。
【0043】
なお、ロボット4が実際に駆動した駆動状態に関する情報は、モータの駆動情報であってもよいし、カメラ2で撮像されたロボット4の動きを画像解析で特定するようにしてもよい。画像解析する場合は、情報取得部31がロボット4から直接情報を取得する必要はなく、カメラ2から画像情報を取得して画像解析部32が画像解析処理を行った結果を駆動判定部35に送るようにしてもよい。
【0044】
仮想映像生成部36は、HMD5に表示するための映像を作成する。HMD5は、作業者が現実空間を視認しながら、ディスプレイ上に仮想映像を表示する拡張現実が実現される。具体例としては、
図5及び
図6に示したように、作業対象となっている実際のイチゴごとに画像解析部32で解析された重量、完熟度、サイズなどを表示すると共に、その中で最適動作演算部33が演算したパック詰めの対象となるイチゴを区分する表示を行うような映像が生成される。
【0045】
ロボット4は、最適動作演算部3が演算した最適動作にしたがえば、パック詰めに最も適した(1)、(2)、(6)のいずれかのイチゴを掴むように駆動するが、最適動作演算部3では処理しようがない特別な事情が生じている場合には、作業者が自己の判断で他のイチゴをパック詰めしなければならない場合がある。このときに、
図5及び
図6に示すような仮想映像が表示されることで、他のイチゴの中から最も合致したイチゴを選択しやすくなる。
【0046】
なお、仮想映像生成部36は、
図5及び
図6に示すようなこれから動作を行う対象を明示するような映像を生成してもよいし、最適動作を行った結果(例えば、(1)、(2)、(6)のいずれかがパック詰めされたパック側の状態)を示すような映像を生成してもよい。作業者は最適動作の結果を示す状態を事前に確認できることで、自己の判断を正確に行うことが可能となる。
【0047】
次に、本実施形態に係る協働システムの動作について説明する。
図7は、本実施形態に係る協働システムの動作を示すフローチャートである。一連の作業が開始されると、カメラ2により作業状態や必要に応じて作業者の状態が撮像され(S1)、撮像した情報が演算装置3の情報取得部31に入力される(S2)。入力された撮像情報を画像解析部32が画像処理による解析を行い(S3)、当該解析結果に基づいて最適動作演算部33が最適動作の演算を行う(S4)。駆動制御部34が、最適動作演算部33で演算された最適動作をロボット4に実行させるための制御信号を作成し、ロボット4に送信する(S5)。ロボット4が、送信された制御信号に応じて駆動する(S6)。情報取得部31がロボット4の駆動状態を取得する(S7)。駆動判定部35が、ロボット4の駆動状態がS4で演算した最適動作に合致するかどうかを判定する(S8)。合致していれば、S5に戻って引き続き最適動作に合致する制御を行う。合致していなければ、S1に戻って作業状態や必要に応じた作業者の状態を取得し、最新の状態に応じた最適動作が再演算される。
【0048】
このように、本実施形態に係る協働システムにおいては、作業対象を撮像し、撮像された撮像情報に基づいて作業対象の状態を解析し、解析結果から作業対象の状態が予め設定されている目的に合致する状態に近づくような最適動作を演算し、作業者の体の一部に装着され、前記最適動作にしたがって前記作業者の体の一部である装着部位の動きを制御して駆動し、又は前記装着部位の動きに合わせて動作するロボット4の駆動状態に関する情報を取得し、当該駆動状態が前記最適動作にしたがった駆動状態に一致するかどうかを判定し、前記ロボット4の駆動状態と前記最適動作にしたがった駆動状態とが一致しないと判定した場合に、前記作業対象の最新の状態を解析し、当該最新の解析結果に基づいて前記最適動作を再演算するため、ロボット4による最適動作の作業を実現しつつ、必要に応じて作業者の判断を優先することでロボット4と作業者との主導権の交換を適正なタイミングで行うことを可能にしつつ、作業状況に応じて短所を補い合った協働作業を実現することができる。
【0049】
また、本実施形態に係る協働システムは必要に応じて、ロボット4が、前記装着部位からの負荷を受けた場合に当該負荷にしたがった動作を行い、前記装着部位からの負荷がない場合に前記最適動作にしたがった駆動を行うため、作業者の判断でロボットを操作して作業することを許容しつつ、作業者の判断が難しい場合には最適動作演算部33が演算で求めた最適動作で作業を行うことができ、それぞれの短所を補い合うような作業を実現することができる。
【0050】
さらに、本実施形態に係る協働システムは必要に応じて、画像解析の解析結果に基づいて、前記目的に合致させるための適合度合を示す前記作業対象の評価値を算出する作業対象評価部33aと、前記ロボット4を前記最適動作とは異なるように動作させるのに必要となる前記装着部位から前記ロボット4に対する負荷の大きさを調整する負荷調整部34aとを備え、当該負荷調整部34aが、前記作業対象評価部33aが算出した評価値に応じて前記負荷の大きさを調整するため、作業対象に対して算出される作業達成状態の適合度合を示す評価値が高いほど作業者がロボット4を操作するために必要となる負荷を大きくし、当該評価値が低いほど作業者がロボットを操作するために必要となる負荷を小さくするといった調整がなされることで、作業の主導権を作業対象の状態に応じた評価値で重み付けすることができ、作業精度及び作業スピードを格段に向上させることが可能になる。
【0051】
さらにまた、本実施形態に係る協働システムは必要に応じて、前記作業対象に対して作業を実行する作業者の状態に関する作業者情報を取得する作業者情報取得手段としての情報取得部31と、前記作業者情報に基づいて、前記作業対象を前記目的に合致させるための作業効率についての前記作業者の評価値を算出する作業者評価部33bとを備え、当該負荷調整部34aが、前記作業対象評価部33aが算出した評価値、及び前記作業者評価部33bが算出した評価値に応じて前記負荷の大きさを調整するため、作業者の作業状態に対して算出される評価値が高いほど作業者がロボット4を操作するために必要となる負荷を小さく、当該評価値が低いほど作業者がロボット4を操作するために必要となる負荷を大きくするといった調整がなされることで、作業の主導権を作業者の作業状態に応じた評価値で重み付けすることができ、作業精度及び作業スピードを格段に向上させることが可能になる。
【0052】
さらにまた、本実施形態に係る協働システムは必要に応じて、前記作業をパッケージ対象を所定の空間にパッケージングする作業とし、前記ロボット4を前記作業者の腕に装着されるマニピュレータとする場合に、前記作業者評価部33bが、前記作業者が連続して作業している作業時間、及び/又は作業開始から作業終了までの積算された作業時間に応じて前記評価値を算出するため、例えば連続作業時間やトータル作業時間が多くなり、作業者の疲労度が高くなっていると推定できる場合に、主導権をロボット側に近づけるといったような重み付けの調整を行うことで、作業精度及び作業スピードを向上させることができる。
【0053】
さらにまた、本実施形態に係る協働システムは必要に応じて、前記作業をパッケージ対象を所定の空間にパッケージングする作業とし、前記ロボット4を前記作業者の腕に装着されるマニピュレータとする場合に、前記作業者評価部33bが、前記ロボット4が前記最適動作とは異なる駆動を行う場合における当該ロボット4の駆動動作速度の経時的な変化に応じて前記評価値を算出するため、例えば作業者主導で行っている作業におけるロボット4の駆動動作速度が作業時間の経過に伴って遅くなるような、作業者の疲労により判断が鈍り始めていると推定できる場合に、主導権をロボット側に近づけるといったような重み付けの調整を行うことで、作業精度及び作業スピードを向上させることができる。
【0054】
さらにまた、本実施形態に係る協働システムは必要に応じて、前記画像解析部32の解析結果に基づいて、前記目的に合致させるための適合度合を示す前記作業対象の評価値を算出する作業対象評価部33aと、前記ロボット4が前記最適動作にしたがって駆動する場合の駆動速度を調整する速度調整部34bとを備え、前記速度調整部34bが、前記作業対象評価部33aが算出した評価値に応じて前記駆動速度を調整するため、作業対象に対して算出される作業達成状態の適合度合を示す評価値が高いほどロボットの駆動速度を速くし、当該評価値が低いほどロボットの駆動を遅くするといった調整がなされることで、ロボットの駆動速度を作業対象の状態に応じた評価値で重み付けすることができ、作業精度及び作業スピードを格段に向上させることが可能になる。
【0055】
さらにまた、本実施形態に係る協働システムは必要に応じて、前記最適動作演算部33が演算した最適動作に関する情報が含まれる仮想画像を生成する仮想映像生成部36と、作業者の頭部に装着され、現実映像と前記仮想画像とを重ねて表示するヘッドマウントディスプレイ5とを備えるため、作業者はヘッドマウントディスプレイ5に表示された映像を見ながらコンピュータの演算通りに動作するか、自己の判断で動作を行うかを決めることができ、ロボット4と作業者とで協働して作業精度をより向上させることができる。また、作業になれない人であっても、ヘッドマウントディスプレイ5に表示されている映像にしたがってロボットに動作させつつ、自分の判断を反映して作業精度を向上させることができる。
【0056】
(その他の実施形態)
その他の実施形態について以下説明する。
図8は、本実施形態に係る協働システムにおける作業状態の一例を示す第1の図である。ここでは、上記と同様にパッケージングの作業を行う場合について説明するが、
図8(A)に示すようにパッケージされる対象は複数種類の形状を有するものであり、これらを矩形状のパックにパッケージする場合を例とする。
【0057】
この場合、作業当初においては矩形状のパックに長方形の作業対象をパッケージするのが簡単であるため、長方形の作業対象が作業が進むに連れて次第に少なくなる。そして
図8(B)に示すように、残りの作業対象の全体個数に対して、丸、四角、三角の各形状の割合が均一に近くなるような状態となる。
図8(A)のような状態であれば、作業者の判断も比較的容易であることから、作業者は比較的小さい負荷で最適動作とは異なる動作を行えるように負荷調整部34aが負荷を調整する。すなわち、そのために作業対象評価部33aが適当な評価値を算出又は補正する。しかしながら、作業が進んで
図8(B)のような状態になると、どれを選択するのが最適かを作業者が判断するのが難しくなる。一方で、
図8(B)のような状況において、パッケージ対象の形状とパッケージ空間とからパック詰めする最適な形状を求めるような演算は、コンピュータが比較的得意とする演算である。したがって、
図8(B)のような状況では、作業者は比較的大きい負荷を掛けないと最適動作とは異なる動作が行えないように負荷調整部34aが負荷を調整する。すなわち、そのために作業対象評価部33aが適当な評価値を算出又は補正する。
【0058】
このように、作業対象評価部33aが、前記作業対象に含まれる残りのパッケージ対象の全体個数に対する各形状の個数の割合に応じて前記評価値を算出するため、異なる複数種類の形状を有するパッケージ対象を効率よくパッケージングすると共に、例えば作業後半で各形状の割合が同率に近づいたような、作業者にとって次の作業判断が難しい状況となったような場合に、主導権をロボット4側に近づけるといったような重み付けの調整を行うことで、作業精度及び作業スピードを向上させることができる。
【0059】
図9は、本実施形態に係る協働システムにおける作業状態の一例を示す第2の図である。ここでも、上記
図8の場合と同様にパッケージングの作業を行う場合について説明するが、パッケージ側の残りの空間形状に応じて負荷調整部34aが負荷を調整する。
図9に示すように、作業が進むに連れてパッケージの空きスペースは狭くなると共に、パッケージ形状や作業対象の形状によっては、残スペースの形状が歪になってしまう場合がある。作業当初の状態であればパッケージスペースが十分にあり、作業者の判断も比較的容易であることから、作業者は比較的小さい負荷で最適動作とは異なる動作を行えるように負荷調整部34aが負荷を調整する。すなわち、そのために作業対象評価部33aが適当な評価値を算出又は補正する。しかしながら、作業が進んで
図9のような状態になると、限られたスペースに残りの作業対象を詰める必要があるため、作業の制限が多くなり作業者が判断するのが難しくなる。このような状況では、次に行う動作の主導権をロボット4(演算装置3のコンピュータ)とし、作業者は比較的大きい負荷を掛けないと最適動作とは異なる動作が行えないように負荷調整部34aが負荷を調整する。すなわち、そのために作業対象評価部33aが適当な評価値を算出又は補正する。
【0060】
このように、作業対象評価部33aが、パッケージする残空間の形状に応じて前記評価値を算出するため、例えば作業が進むに連れてパッケージ空間の形状が歪になったり狭くなってきたような、作業者にとって次の作業判断が難しい状況となったような場合に、主導権をロボット側に近づけるといったような重み付けの調整を行うことで、作業精度及び作業スピードを向上させることができる。
【実施例0061】
上記において説明したロボット4について、主にパッケージング作業で利用されるマニピュレータを実際に開発した。
図10は、開発したマニピュレータを用いた場合の協働システムの概念図である。ここでは、知能的な作業としてナップサック問題を採用した。この問題は、容量を超えずにその荷物の合計価値が最大となる組み合わせを求める問題である。ロボット4と作業者は同じ問題を解き、最適な作業対象を選択する作業を行う。人間は答えがわからなくてもマニピュレータに操作を任せることで、選択すべき物体へと手先を移動し、その作業対象を選択することができる。逆に答えがわかった場合にはマニピュレータの動きに関係なく自身の手先を移動して作業対象を選択することができる。このとき、作業者が導いた答えと演算された答えとが異なる場合には、演算装置が最新の状態に対して再計算を行う。
【0062】
図11は、開発したマニピュレータの構成を示す図である。マニピュレータはPID制御で2つのモータを制御する。このとき、関節の角速度θ^=(θ
1^,θ
2^)、手先の速度P^=(P
x^,P
y^)(「^」は上点を示す)との関係は以下のように表される。
【数1】
【0063】
ただし、J
-1は、以下のヤコビ行列Jの逆行列を表す。また、(l
1,l
2)は、リンクの長さを示している。
【数2】
【0064】
この式で求めた関節角度にモータを制御することで、マニピュレータの先端が目標点へ移動する。逆に、作業者がマニピュレータを動かした場合には、先端の座標や関節角度を計測することができる。
【0065】
ナップサック問題の解に基づいて候補となる作業対象の位置を目標位置(Px,Py)とし、マニピュレータを動かすことで作業者が作業対象を選択する作業を支援することができる。
【0066】
以下、基礎実験を行った結果を示す。
図12は実験環境を示す図であり、環境にA(4kg,価値20)、B(9kg,価値90)、C(10kg,価値175)、D(2kg,価値50)、E(20kg,価値200)、F(1kg,価値10)の6つの作業対象を配置し、制約を15kg以内とするナップサック問題を設定した。この際、最適解の組み合わせは、C,D,Fであり、合計重量は13kg、最大価値は235となる。
【0067】
図13はロボット主導の場合の基礎実験の様子を示す図である。ここでは、作業者がマニピュレーターに全ての操作を任せており、作業対象物の上に手先が一定時間静止することで作業対象物を把持したものとした。四角がA~Fの作業対象であり、黒丸がシステムが計算した解を示すマニピュレータの動き、白三角が実際のマニピュレータの動きを示している。システムは、C,D,Fを最適解として算出している。
図13(A)では、システムの解にしたがって作業対象Cを把持するように提示され、
図13(B)でマニピュレータの動きにしたがって実際に作業対象Cを把持するように動作している。そして、
図13(C)で次の作業対象Dを把持するように提示され、
図13(D)でマニピュレータの動きにしたがって実際に作業対象Dを把持するように動作している。最後に、
図13(E)で最後の作業対象Fを把持するように提示され、
図13(F)でマニピュレータの動きにしたがって実際に作業対象Fを把持するように動作している。このように、ロボット主導の動作が実行されることで、合計重量13kg、最大価値235を正確に選択できていることがわかる。
【0068】
なお、
図13においては静止画によるマニピュレータの動きを示しているが、実際にHMD5などに表示される場合には動きがわかる動画像として表示される。
【0069】
図14は作業者主導の場合の基礎実験の様子を示す図である。ここでは、作業者がシステムの解とは異なる動作を行った場合の一連の作業を示しており、
図13の場合と同様に作業対象物の上に手先が一定時間静止することで作業対象物を把持したものとした。四角がA~Fの作業対象であり、黒丸がシステムが計算した解を示すマニピュレータの動き、白三角が実際のマニピュレータの動きを示している。システムは、
図13の場合と同様にC,D,Fを最適解として算出している。
図14(A)では、システムの解にしたがって作業対象Cを把持するように提示されているにも関わらず、作業者の判断で作業対象Aを選択している。作業対象Aが選択されたことでシステムが最新の作業状態に応じた最適解(Aを除いていずれを選択するか)を演算し、次の選択対象としてC,Fが算出される。
図14(B)では、システムの解にしたがって作業対象Cを把持するように提示され、マニピュレータの動きにしたがって実際に作業対象Cを把持するように動作している。
図14(C)では、システムの解にしたがって作業対象Fを把持するように提示されるが、
図14(D)では、作業者の判断で作業対象Fではなく作業対象Eを選択しようとする。この時点で作業対象Eを選択すると重量オーバーとなるため、Eを選択することができず、最終的にマニピュレーターの動きにしたがってFを把持するように動作する。結果的にA,C,Fが選択され、合計重量が15kg、合計価値は205となった。
【0070】
なお、
図14の場合も
図13と同様に静止画によるマニピュレータの動きを示しているが、実際にHMD5などに表示される場合には動きがわかる動画像として表示される。
【0071】
図13及び
図14の結果から、最終的にはロボット主導で作業したほうが最適な結果を得ることができているが、作業環境や条件などによっては作業者主導の方が好ましい状況もあり、本システムにおいてはそのように主導権が交代できることを許容し、ロボットと作業者とが協働できるシステムとなっている。
【0072】
次に、イチゴのパッケージ作業について実験を行った。まず、カメラで取得した画像におけるイチゴの面積と重量との相関を求めた。
図15は、イチゴ部分の面積と重量との相関を調べた結果を示す図である。使用したイチゴは「ゆめのか」であり、
図15(A)は160個のイチゴの面積と重量の相関を求めた結果、
図15(B)はイチゴの面積平均と重量との相関を求めた結果を示す。それぞれの相関性に基づいて精度検証を行った結果を
図16に示す。
図16(A)が
図15(A)で得られた相関性に基づいて行った精度検証の結果、
図16(B)が
図15(B)で得られた相関性に基づいて行った精度検証の結果を示す図である。いずれの場合であっても誤差-1.0g~1.0gの間にほぼ半数が含まれる結果となっている。このことから、画像の面積から重量を推定することが可能であるもとが明らかとなった。
図17は、実際の重量と推定重量とを比較した結果を示す図である。
図17(A)が実際に測定した重量で、
図17(B)が演算で推定した重量である。
図17からわかる通り、パック詰めに問題がない範囲の誤差でイチゴの面積から重量を推定できることが明らかである。
【0073】
次に、完熟度の推定について検証を行った。完熟度の推定は、まずHSVで「赤」の範囲と「濃い赤」の範囲を設定する。イチゴの画像からヘタを除いたイチゴ全体のピクセル数に対して、設定されたHSVの範囲に含まれるピクセル数の割合を算出する。その割合に応じて完熟レベル(傷みあり、完熟、半熟、未熟)を区分することで推定する。
図18に完熟度の推定結果を示す。
図18に示すように、正確に完熟度を推定することが可能であった。
【0074】
次に、動的計画法の導入を行った。具体的には、簡単なイチゴのパック詰めを想定し、総重量W=60g以内、Mサイズの完熟イチゴを優先的にパック詰めするという条件で最適解を求めた。ここで、推定重量が20g以上をLサイズ、17g~20gをMサイズ、17g以下をSサイズとし、Lサイズ且つ完熟のものをコスト3、Mサイズ且つ完熟のものをコスト5、それ以外をコスト1とした。最適解の算出結果を
図19に示す。
図5及び
図6にも示したように、コンピュータにより(1)、(2)、(6)の組み合わせが最適であると算出され、それらのイチゴが区別できるような表示態様で明示されている。
【0075】
以上のように、イチゴのサイズや完熟度を推定し、条件を満たすような最適な組み合わせてでパック詰めを行うための演算を行い、それを作業者に明示することができることが明らかとなった。