next up previous contents
Next: About this document ... Up: ロボット群,ロボット−人間の協調動作の実現 Previous: 実験   Contents

分散協調視覚を用いた機械組立てのための人間-ロボット協調作 業システム

担当:池内 克史(東京大学)

将来の育児や介護への応用を目指して,ロボットが人と協調して作業を行う, 特に,人の作業の補助を行うことを考えると,各時点でロボットは人により何 が行われているかを正確に理解し,それに合った補助を行う必要がある. 人間の動作の観察・認識において,最も重要な役割を担うのは視覚である.ロボッ トは視覚を用いて,現在の作業対象物や人間の把持形態を認識し,作業目的・ 動作文脈に基づいて,必要な補助作業を計画・実行しなければならない.

筆者らは,上記の問題の解決のために,人とロボットによるおもちゃパーツの組 み立てを対象とし,タスクモデルの枠組を定義した上で, 人間のデモよりタス クモデルを自動生成し, タスクモデルに基づいてロボットの協調動作を生成す る枠組を提案した [1]. しかし,そこでは,人の手形状の認識は行われておらず,人の動作に対応して ロボットに適切な補助を行わせる手法が明確でなかった. 本稿では,これら問題点の解決方法と実験結果について述べる.

実験システムは,7自由度マニピュレター,3本指ハンド,2セットの3眼ステレ オ・カラーカメラ (SCC),リアルタイム・レンジファインダ (RRF)から構成さ れる. おもちゃパーツの3次元認識は,SCCにより行われる [1]. 人の手によるおもちゃパーツの把持の有無, 手形状の認識は,SCCとRRFにより 行われる. 手形状の認識においては,指の関節角度の計測はできないが,precision graspやpower graspなどあらかじめ登録した型に手形状を分類するこができる.

人の動作解析部は,前述の視覚処理により, パーツ把持の有無, 把持形状,パーツ機能部(穴,軸など)間の関係を検出し,eventを発生するこ とができる. タスクモデルは,result(組み付けられる2つの対象物の機能部の状態)と preconditions(resultが発生する前提条件)から構成される(図2.38-(1)) [1]. 人間が単独で行う一連の作業の観察(図2.39)から,event stackを用いた解析により作業モデルを自動生成した(図2.38-(2)) [1].

ここで, 図2.40のようにタスクモデルが連続したものに より,作業モデル(series of task models)を表す. このとき, task_model(i)のresultはtask_model(i+1)のpreconditionsの一つとなる.

Figure 2.38: (1) タスクモデルの枠組. (2) タスクモデルの自動生成: (a), (b)-1,2, (c) は図2の(ii), (iv), (vi)にそれぞれ対応している.
\epsfile{file=KI/figs/task-model1.eps,width=3cm} (1) \epsfile{file=KI/figs/state-buffer.eps,width=5cm} (2)

Figure 2.39: 人の作業の解析.
\epsfile{file=KI/images/analyzing/analyze.eps,width=9cm}

Figure 2.40: 図2の解析により生成された作業モデル.
\begin{figure}
\begin{center}
\epsfile{file=KI/figs/taskmodel-series.eps,width=8cm} \end{center}\vspace{-5pt}
\end{figure}

Figure 2.41: 補助動作計画のフローチャート.
\begin{figure}
\begin{center}
\epsfile{file=KI/figs/coop-flow-chart-j.eps,width=10cm} \end{center}\vspace{-5pt}
\end{figure}

Figure 2.42: 作業モデルに基づいた協調作業実験. 人間の動作によって次の6つの 協調作業が実行される. (a)→(b)→(c)→(d), (a)→(b)→(c)→(e)→(f), (a)→(g)→(c)→(d), (a)→(g)→(c)→(e)→(f), (a)→(g)→(h)→(i)→(e)→(f), (a)→(g)→(h)→(i)→(j).
\begin{figure}
\begin{center}
\epsfile{file=KI/images/exp-coop-flow-yoko.eps,width=13cm} \end{center}\vspace{-5pt}
\end{figure}

補助動作計画部は, event stack上に積まれたeventsとtask modelの preconditionsとresultを比較しながらロボットの補助動作(operation)を計画 する [1] が, 適切な補助のためにはtask modelのどの部分を人 とロボットがそれぞれ実行するかを決める必要がある.

本研究では,次の3つの補助動作を考え,作業モデルと人の動作状況(event stack)に対して,図2.41に基づいて,ロボットに適切な補助 動作を選択させる.

(A)
タスクの目的を実現するための補助
人が task_model(i) の preconditons の一部を行い,最後のeventから一定時 間以上経過したときは,タスクの目的を実現するために ロボットの補助が必要であると判断し,task_model(i) の残りの preconditoins と result を OP-FIFO に入れる(図2.41-(A)).

(B)
協調作業全体を効率良く行うための補助
人が task_model(i) の preconditons を全て行った場合,人によりそのtask model の result が実行されると判断して,全体の作業効率を上げために,次 のtaskの準備としてtask_model(i+1) の preconditions のうち task_model(i) の preconditons とresult を除いたものを OP-FIFO に入れる (図2.41-(B)). さらに,task_model(i+1) の目的を実現するためにその result も OP-FIFO に入れる.

(C)
把持した対象物を人に手渡す補助
ロボットが対象物を把持した状態で人がそれを受けとる動作を行った場合,人 がその対象物を用いた組み付けを行うと判断して,対象物を人に手渡す (図2.41-(C)). その際,その対象物を用いた組み付けのための operation は OP-FIFO から除 かれる. 人の受け取り動作を補助動作計画部が認識できるように,人の受け取り手形状が視覚システムに登録されている.

ロボットは OP-FIFO から operation を取りだし,動作解析部で設定された属 性を利用して operation を実行することができる [1]. 図2.40に示す作業モデルと図2.41に基づ いて,人の動作に対応してロボットハンドに補助動作を行わせた (図2.42). たった2つのタスクモデルから成る作業モデルにおいても, 受渡しを考慮すること によりロボットの補助には6つのパターンが存在しており, 結果として,作業モデルと補助動作の計画に基づき, ロボットは視覚により現 在の人間の動作を理解することで, 適切な補助動作を選択・実行することがで きた.

今後の課題として, 力感覚を用いた実行制御, より複雑な状況での適切な作業 モデルの選択などを行う必要がある.


参考文献

[1] 木村, 池内, 視覚による動作認識に基づく人とロボットの協調, 第2回ロ ボティクスシンポジア予稿集, pp.120-126, 1997.


next up previous contents
Next: About this document ... Up: ロボット群,ロボット−人間の協調動作の実現 Previous: 実験   Contents
wsbmaster@vision.kuee.kyoto-u.ac.jp