【文献】
田中泰史 田中泰史 Yasufumi TANAKA Yasufumi TANAKA,生産現場における人間協調・共存型作業支援パートナロボットーPaDY− Human-Friendly/Cooperative Working Support Robot -PaDY-for the Production Site,ロボティクス・メカトロニクス講演会 ’12 講演論文集 Proceedings of the 2012 JSME Conference on Robotics and Mechatronics,一般社団法人日本機械学会
【文献】
田中泰史 田中泰史,生産現場における人間協調・共存型作業支援パートナロボットーPaDY−,第30回日本ロボット学会学術講演会予稿集DVD−ROM 2012年 The 30th Annual Conference of the Robotics Society of Japan
(58)【調査した分野】(Int.Cl.,DB名)
前記第2制御手段による前記供給手段の制御から前記第1制御手段による前記供給手段の制御に切り替えるよう、前記制御切替手段への指令の入力を受ける切替入力手段を備える、請求項1に記載の作業支援システム。
前記供給手段がロボットアームであり、前記作業位置決定手段は、現在の作業者の位置と所定範囲内の距離を保つように、該ロボットアームが把持する物品の載置部位に関する位置を決定する、請求項1に記載の作業支援システム。
前記作業位置決定手段は、前記入力手段からの信号に基づいて作業進度を把握し、工程表を参照しながら、必要に応じてオフセットを加味して次の作業位置を決定する、請求項1に記載の作業支援システム。
【背景技術】
【0002】
近年、人と共存できるロボットに関する研究開発が活発になされている(例えば特許文献1〜5)。このような研究開発の状況において、特許文献6に開示されている移動ロボットシステムでは、無人搬送車にロボットアームを搭載し、無人搬送車が設備間を移動してロボットアームにより作業を行わせる。
【0003】
一方、生産現場では、生産効率の向上を目指した産業用ロボットによる工場の自動化が進みつつある。ところが、工場内には、ロボットによるハンドリングが困難な部品を組み付ける作業や、巧みな力加減が要求される作業や、状況判断が必要な作業など、ロボットが行うことの難しい作業が数多く存在する。このように人手が必要な作業が未だに存在し、自動化が行われていない工程が数多く残されている。
【0004】
そのような例として自動車の組立工程が挙げられる。こういった工程では、作業者は車体への部品の組み付け作業の他に、ボルト等の組付部品の選定、部品を組み付けるための工具の取り出しを行わなければならない。部品や工具を保管して収納しているワゴン台車が作業空間端に位置するため、作業者は作業場所とワゴン台車との間を、部品の供給と工具の交換のために行き来することが必要である。このように、作業者は本来の組み付け作業以外に、その作業に付随する作業をも行わなければならず、作業者はこれらの作業に多くの時間と手間をかけることを余儀なくされている。
【0005】
そのため、本発明者らは、作業に応じて必要な工具や部品をロボットアームにより作業者の手元へ配送する作業支援ロボットシステムを研究開発してきた(例えば、特許文献7、非特許文献1及び非特許文献2)。そのような作業支援ロボットシステムについて、自動車の組立工程を例にとって説明する。
【0006】
自動車の組立工程において、作業者は多くの作業を行う必要があり、各作業は作業工程表に作業内容毎にまとめられている。作業工程表には、各作業において車体に対する位置で指定される作業場所、その作業に必要な部品や工具なども定められている。よって、作業者は車体一台分の特定の作業内容を決められた時間内にこなし、次の車体への組付作業に移行する。つまり、作業者はある場所での作業が終了すると次の場所に移動する。
【0007】
作業者は作業工程表に忠実に作業を行うものの、実際には作業者によって差異がある。そのため、作業者とロボットの協調作業を実現させるためには、ロボットは作業者に応じて部品や工具の供給時間及び供給場所を適応的に変化させて部品や工具を手元に届ける必要がある。
【0008】
そこで、本発明者らは、作業者の運動の統計的解析結果を基に、作業者に応じてロボットがサポートすることを次のように考えた。このシステムでは、車体座標系を一定幅のメッシュで離散化し、各セル内で作業者が計測された確率を3種類の統計的なモデルを用いて表している。
【0009】
統計的モデルの一つ目は、各作業において作業者がどの場所(セル)で作業を行っている割合が高いのかを表した確率(「位置に対する作業者の存在率」と呼ぶ。)を用いて、各作業に対してそれぞれの作業を行う可能性が高い場所(セル)を示す。これにより、部品や工具の供給位置を決定する。
【0010】
統計的モデルの二つ目は、供給時刻を決定するために、ある時刻において各作業を行っている確率(「時間に対する作業の実行率」と呼ぶ。)を求める。
【0011】
統計的モデルの三つ目は、作業者の位置からどの作業を行っている可能性が高いのかを表す確率(「位置に対する作業の実行率」と呼ぶ。)を用いて、その時の作業者の位置から作業内容を推定し、作業進度の推定を行っている。
【0012】
この3つ目の統計的モデルを用いることにより、次の供給時刻よりも早く作業者が次の作業場所へ移動した場合には、作業者の位置から次の作業場所へ移動したことを認識し、供給時刻を修正し、修正前の供給時刻よりも早く、作業者の作業進度に合わせて作業者へ部品や工具の供給を行う。
【0013】
このシステムでは、作業進度に合わせて、供給時刻について実時間の修正を行っている。これにより、作業者の作業進度が普段よりも早いペースで進んでいた場合、もともとの供給時刻よりも時間を前倒しして作業者のもとへ部品や工具を供給することができる。
【0014】
また、本発明者らは、作業者の移動に合わせたロボットアームの供給動作を行い、さらに作業効率を向上させるために、作業者の位置情報データからマルコフモデルを生成し、作業者の移動軌道を予測する手法を提案してきた(非特許文献2)。
【発明を実施するための形態】
【0027】
以下、図面を参照しながら本発明の実施形態を説明する。
【0028】
〔第1の実施形態〕
図1ないし
図4は、本発明の第1実施形態に係る作業支援システムを示しており、
図1は本発明の第1の実施形態に係る作業支援システムのブロック構成図である。
図2は
図1に示す作業支援システムを作業現場に配置した際の様子を模式的に示す図である。
【0029】
本発明の第1の実施形態に係る作業支援システム10は、ロボットアームなどの供給手段11と、入力手段12と、計測手段13と、作業者位置特定手段14と、作業状況特定手段15と、位置決定手段16と、第1制御手段17と、作業状況予測手段18と、第2制御手段19と、制御切替手段20と、切替入力手段21と、を備える。
【0030】
供給手段11は、作業者に対して必要な工具や部品を供給する手段であり、例えば
図2に示すようなロボットアーム11xであってよく、これ以外に、ベルトコンベアなどの搬送手段であってもよい。以下、供給手段11をロボットアーム11xとした場合を例に挙げて説明する。
【0031】
図2を参照しながら作業支援システム10を作業現場に配置した際の状況を説明する。自動車の組立ラインにおいては、車体1が図示しない一対のL字状のアームで支持され、車体1が移動しながら組み立てられる。図では筐体30は一つしか示していないが、車体1が移動するラインに沿って筐体30が間隔を開けて配備されている。筐体30には、作業者2が作業遂行に当たって必要とする物品、例えば工具や部品を載置可能なテーブル31が備えられ、テーブル31の上部には必要となる部品が排出される排出口32が設けられている。テーブル31の一端部には一又は複数のロボットアーム11xが駆動可能に取り付けられている。
【0032】
ロボットアーム11xは、複数の関節がリンク同士を駆動可能に結合して構成されている。ロボットアーム11xは例えば二自由度の水平多関節型のロボットアームであって、
図2に示すように、第1の関節部11aがテーブル31と第1のアーム11dとを連結し、第2の関節部11bが第1のアーム11dと第2のアーム11eとを連結し、第3の関節部11cが第2のアーム11eと工具取付用アタッチメント11f及びトレー11gとを連結している。第1乃至第3の関節部11a,11b,11cは、何れも鉛直方向に沿って平行に配置される回動軸を有している。筐体30において、ロボットアーム11が駆動可能に取り付けられている側と逆側には、複数の工具設置用ボックス33が設けられている。各工具設置用ボックス33にはドライバー、トルクレンチなどの手動又は電動の各種工具34が上から挿入され、ロボットアーム11x又は作業者により取り出し可能に収容されている。
【0033】
筐体30には、ロボットアーム11xにおける駆動用電源や駆動部のほか、ビスやナットなど比較的小さな各種の部品35が収容され、排出口32からテーブル31に向けて排出される。ロボットアーム11xの各関節部11a,11b,11cを駆動してトレー11gをテーブル31上に移動すれば、トレー11gに部品35を載せることができ、その後、ロボットアーム11xの各関節部11a,11b,11cを駆動すれば部品35を作業者の近くまで搬送することができるし、各種工具34を取り出すこともできる。
【0034】
入力手段12は、作業者から作業状況に関する入力を受ける手段であり、作業者2が作業支援システム10に対する指令や作業状況を入力するためのものである。ここで、入力手段12は、例えば工具類に備わる動作スイッチのようなものの組み合わせでもよい。
【0035】
計測手段13は、レーザーセンサを有し作業者の位置を計測する手段である。計測手段13は、例えば
図2に示すようにレーザーセンサ13a,13bを有する。作業者2の作業現場には、作業者2の位置を特定するために複数のレーザーセンサ13a,13bが配置される。このようなレーザーセンサ13a,13bは、レーザ式測域センサ(LRF:Laser Range Finder)と呼ばれ、例えば縦に並べて配置されており、LRFでそれぞれ作業者の腰と両脚の高さを計測することができる。レーザーセンサ13a,13bの配置等については
図2に示す場合に限らず、
図2に示す筐体30や建物の壁面でもよい。
【0036】
作業者位置特定手段14は、計測手段13から入力されたデータに基づいて作業者の位置を特定する手段であり、例えば、計測部13から入力されたデータをクラスタリングして作業者の位置を特定する。センサからのデータ、即ち反射点の集合をクラスタリングし、ある特徴空間上の点をその分布状態に応じて幾つかのグループに分類する。クラスタリングには、NN(Nearest Neighbor)法、K−NN(K Nearest Neighbor Algorithm)法、K平均(K Mean Algorithm)法などの周知の技術を用いる。
【0037】
作業者の位置の特定の仕方についての詳細は、特許文献7及び非特許文献1に開示されている。その手法の概要を説明する。例えば
図2を示して説明したように、作業者2の腰の高さ近傍と作業者の脚の高さ近傍とで、鉛直方向に上下に離れた第1のレーザーセンサ13aと第2のレーザーセンサ13bとが配置されている。そして、第1のレーザーセンサ13aからの出力データをクラスタリングして作業者の位置を特定するためのデータを求め、第2のレーザーセンサ13bからの出力データをクラスタリングして作業者の位置を特定するためのデータを求める。第1のレーザーセンサ13aの出力データからクラスタリングにより求めた結果を「腰クラスタ」と呼び、第2のレーザーセンサ13bの出力データからクラスタリングにより求めた結果を「脚クラスタ」と呼ぶことにする。
【0038】
作業者の腰と両脚との位置関係からすると、水平面で考えれば、作業者を示す腰クラスタの周りで一定距離内に、脚クラスタが二つ存在することになる。そこで、計測手段13から入力されたデータをクラスタリングした結果に基づいて、腰クラスタの中心から所定半径内に二つの脚クラスタがあるか否かにより作業者の位置に関するデータと判定し、作業者の位置を特定することができる。
【0039】
作業状況特定手段15は、入力手段12から入力されたデータに基づいて作業の状況を特定する手段である。前述した入力手段12の一部として、作業者2が現在行っている作業状況について意図的に入力するためのマイクロスイッチなどの入力ボタンが設けられてもよく、入力手段12としてマイクロスイッチや赤外線センサなどのセンサがロボットアーム11xの先端側のトレーや工具ホルダなどに設けられてもよい。そのようなセンサ検出信号が作業状況特定手段15に入力されると、作業状況特定手段15は入力された信号に基づいて何番目の作業であるかといった作業状況を特定する。なお、作業状況特定手段15には、作業工程に関する情報として、例えば作業手順、作業エリア、必要となる部品や工具などの情報が格納されており、そのような作業工程テーブルを参照することにより、作業状況を特定することができる。
【0040】
位置決定手段16は、作業者2へ追従するように供給手段11の特定の部位の位置を決定する追従位置決定手段であるか、又は、作業者2を誘導するように供給手段11の特定の部位の位置を決定する誘導位置決定手段である。位置決定手段16は、作業者位置特定手段14から入力された作業者の位置情報と、作業状況特定手段15から入力された作業の状況情報に基づいて、追従位置又は誘導位置の決定を行う。
【0041】
ここで、位置決定手段16が追従位置決定手段である場合には、現在の作業者の位置と所定の範囲内の距離を保つように、ロボットアーム11xのうち必要な物の載置部位、例えば
図2に示すトレーに関する位置を決定する。例えば、位置決定手段16は、新たに作業状況特定手段15により特定した作業状況と作業者位置特定手段14で特定した作業者の位置とから、作業者の移動状況を把握し、次にロボットアーム11xのうち必要な物の載置部位の位置を特定する。その際、前回決定した追従位置と前回からの時間との関係からその特定が妥当か否かを判断する。
また、ロボットアーム11xの載置部位が作業者の位置と仮想的なバネとダンパで繋がっているものとしてモデル化し、そのインピーダンス制御を用いて逐次制御を行ってもよい。
【0042】
一方、位置決定手段16が誘導位置決定手段である場合、次のような処理を行う。入力手段12からの信号により作業状況特定手段15が作業進度を特定するため、位置決定手段16が、作業状況特定手段15が保有する作業工程テーブルのような情報を参照し、その特定された作業進度から次の作業位置を特定する。その際、作業者位置特定手段14から入力された現在の位置情報を考慮する。また、必要に応じてオフセットを考慮し次の作業位置を特定する。
【0043】
第1制御手段17は、位置決定手段16により決定された位置に基づいて供給手段11を制御する。位置決定手段16により決定される位置は逐次更新されるため、第1制御手段はロボットアーム11xの先端の目標位置を逐次更新し、ロボットアームを制御する。
【0044】
作業状況予測手段18は、作業者位置特定手段14から入力された作業者の位置情報、つまり位置座標(Xw,Yw)から統計処理を行って作業状況を予測する手段である。ここでの統計処理は各種の処理が考えられるところ、特許文献6及び非特許文献1に開示した処理でも、非特許文献2で開示した処理でも、その他の処理でもよい。ここでは
図1に示した処理を説明する。
【0045】
図1に示す形態では、作業状況予測手段18は、特許文献6及び非特許文献1に開示したように、計算処理兼データベース部18a、供給位置決定手段18e、供給軌道計算部18f、供給タイミング決定部18g、作業進度推定部18hその他の各部により構成されている。
【0046】
計算処理兼データベース部18aは作業者位置特定手段14から作業者の位置(Xw,Yw)の入力を受けて統計的処理を行い、第1計算処理部18bにおいて位置に対する作業者の存在率E
m,n,i,jを求め、第2計算処理部18cにおいて時間に対する作業の実行率I
n,tを求め、第3計算処理部18dにおいて位置に対する作業の実行率R
n,i,jを求める。各処理部18b〜18dは、作業者位置特定手段14から作業者の位置(Xw,Yw)の入力を受けるたびに、E
m,n,i,j、I
n,t、R
n,i,jを求めて蓄積し、絶えず更新をする。
【0047】
供給位置決定部18eは、第1計算処理部18bから入力された、位置に対する作業者の存在率に基づいて供給位置を決定し、供給位置調整部18iに出力する。供給位置調整部18iは、入力された供給位置に対して外部から入力することにより教示された供給位置オフセットを加算して、供給軌道計算部18fに出力する。供給軌道計算部18fは、供給位置オフセットを加算して求めた供給位置に基づいて、供給手段11であるロボットアーム11xの供給軌道y(x)を計算し、第2制御手段19としてのロボットアーム軌道制御部に出力する。
【0048】
供給タイミング決定部18gは、第2計算処理部18cから、時間に対する作業の実行率I
n,tの入力を受けて供給タイミングt
nを決定する。作業進度推定部18hは、第3計算処理部18dから、位置に対する作業の実行率R
n,i,jの入力を受け、作業者位置特定部14から作業者の位置(Xw、Yw)の入力を受け、作業進度を推定し、供給時間の修正の必要性を加味して供給時間修正量Δt
uを求める。よって、供給タイミング決定部18gで決定して求めた供給タイミングt
nは、教示された供給時刻オフセットΔt
nを供給時刻調整部18jで加算され、さらに作業進度推定部18hで求めた供給時間修正量Δt
uを供給時刻実時間修正部18kで加算されて、第2制御手段19に出力される。
【0049】
第1計算処理部18bから供給軌道計算部18fまでのデータ処理の流れについて説明する。第1計算処理部18bには、「位置に対する作業者の存在率」の確率分布のデータが算出されて格納されている。この確率分布の計算手法は次の通りである。例えば一定の幅のメッシュで表され、かつ作業対象物である車両2を基準に設定されている座標系において、セル毎に作業者が観測された度数を求め、これを各作業におけるデータの総数で割ることにより、各作業nにおいて作業者がその位置(i,j)で作業を行っている割合、すなわち、作業nにおける位置(i,j)に対する作業者の存在率E
n,i,jを求める。つまり、E
n,i,jは、作業番号nが与えられたときにその作業をしている作業者がどの点にいる可能性が高いかを示している。E
n,i,jは式(1)から求められる。
【数1】
【0050】
第1計算処理部18bは上記の確率分布として、E
n,i,jを全ての作業及び全ての位置について求めて格納する。よって、ある作業が与えられたならば、その作業を行う際に、作業者が存在する可能性の最も高い位置を統計的に求めることができる。
【0051】
供給位置決定部18eは、第1計算処理部18bから入力された、位置に対する作業者の存在率に基づいて供給位置を決定する。E
n,i,jが最も高い位置(i,j)は、各作業についてその作業を行っている作業者が最も存在する可能性が高い位置であるので、この位置の座標を供給位置(x
n、y
n)として出力する。
【0052】
供給位置調整部18iは、供給位置決定部18eと供給軌道計算部18fとの間に設けられる。供給位置調整部18iは、第1計算処理部18bから出力された、位置に対する作業者の存在率から求めた供給位置(x
n、y
n)にオフセット量(Δx
n,Δy
n)を加減して供給軌道計算部18fに出力する。
【0053】
供給位置決定部18eは、当該作業を行う際、作業者が存在する可能性が最も高い位置を(x
n,y
n)として求める。この求めた値(x
n、y
n)は供給位置調整部18iに入力される。そこで、供給位置調整部18iは、その座標に作業者の体の大きさ分だけの任意のオフセット、即ち供給位置オフセット(Δx
n,Δy
n)を加えた座標を供給位置とする。このオフセットは作業者の好みなどに応じ適宜調整してもよい。
【0054】
ここで、ある作業、例えば作業Aと作業Eについては存在率が高い位置が複数存在するような場合、存在率の高い複数の位置の中から先に作業をする位置を選択して、供給位置オフセットを加えた位置を供給位置とする。また、この供給位置は車両に設定されている座標系における作業位置であるため、ロボット座標系に変換し、供給手段であるロボットアームへの手先の目標位置とする。
【0055】
このように、供給位置決定部18eが、第1計算処理部18bから、位置に対する作業者の存在率E
m,n,i,jの入力を受けて供給位置(Xn,Yn)を決定し、供給位置調整部18iに出力し、供給位置調整部18iが、その供給位置(Xn、Yn)に供給位置オフセット量(ΔXn,ΔYn)を加算して供給軌道計算部18fに入力し、供給軌道計算部18fがロボットアームの軌道計算y(x)を行って第2制御手段19としてのロボットアーム軌道制御部に出力する。
【0056】
一方、第2計算処理部18c、第3計算処理部18dのそれぞれから第2制御手段19までにおいては順にデータ処理がなされる。第2計算処理部18cには、「時間に対する作業の実行率」の確率分布が求められて格納されている。この確率分布の算出手法は以下の通りである。ある時間に作業nを行っている度数を、計測した車両の台数で割ることで、各時刻tに作業者がどの作業nを行っているかの割合、すなわち、作業nにおける時刻tに対する作業の実行率I
n,tを求めることができる。このI
n,tは、時刻tが与えられたとき、その時刻tにどの作業を行っている可能性が高いかを示し、次式(2)で求められる。
【数2】
ここで、W
n,tは時刻tにおいてn番目の作業が行われた回数であり、Mは計測した車両台数、即ち、開始後に作業がなされた作業対象物の数である。時刻tはタクトタイムが開始される度にゼロにリセットされる。第2計算処理部18cは、工場の車両搬送コンベヤからの情報を通信により得るなどの方法で、タクトタイムが開始される度にリセットされた時刻情報を得ることができる。
【0057】
供給タイミング決定部18gは、第2計算処理部18cから入力された、時間に対する作業の実行率に基づいて供給タイミングt
nを求める。第2計算処理部18cから出力された、時間に対する作業の実行率I
n、tに基づいて、ある時刻において一番度数の高い作業を作業者が行っているものとすると、ある作業から次の作業へと作業が切り替わる時刻が分かるので、次の作業の供給タイミングt
nが求まる。
【0058】
供給時刻調整部18jは、供給タイミング決定部18gと供給時刻実時間修正部18kとの間に設けられ、時間に対する作業の実行率から求めた供給タイミング、即ち供給時刻t
nにオフセット量Δt
nを加えて供給時刻実時間修正部18iに出力する。
【0059】
図3は供給タイミング決定部18g及び供給時刻調整部18jの機能を説明するための図である。
図3において、横軸が時刻(Time)、縦軸が繰り返し頻度(Frequency)である。
図3のようにタクト時間を100%に規格化したときの時刻から、何番目の作業が行われているかを判別することができる。作業が切り替わる時刻は、統計的に作業が切り替わる可能性の高い時刻であると仮定して、この時刻をそのまま供給タイミングt
nとして設定すると、供給が遅れる場合も存在し得る。そのため、供給時刻調整部18jにおいて、供給タイミングt
nに任意の調整時間である前倒し時間Δt
nが加えられる。なお、前倒し時間Δt
nは必ず負の値をとる。作業者が実際に作業に取り掛かる時刻と比べて実際の供給時刻が必ず若干早くなるようにオフセットが設定されていれば、作業者の好みなどに応じてオフセット量を任意に設定してもよい。
【0060】
第3計算処理部18dには、「位置に対する作業の実行率」の確率分布が求められて格納されている。この確率分布の算出手法は次の通りである。ある一定の幅の刻みのメッシュでセルに分割された車両座標系において、各作業に対し、セル毎に作業者が計測された度数を当該セルにおけるデータの総数で割る。これにより、作業者がその場所に存在するとき各作業を行っている可能性の割合、すなわち、位置に対する作業の実行率R
n,i,jが求まる。このR
n,i,jは、作業者の位置(i,j)が与えられたときにその位置にいる作業者がどの作業を行っている可能性が高いかを示しており、式(3)により求められる。
【数3】
ここで、B
m,n,i,jは、l(エル)台目に(i,j)番地において計測されたデータ点の数であり、Lはその番地で作業者が作業した車両の台数である。nは作業番号である。
【0061】
作業進度推定部18hは、第3計算処理部18dから入力された、位置に対する作業の実行率と、作業者位置特定部14から入力された作業者の位置と、から現在行われている作業を推定して供給時刻の修正量を求める。作業進度推定部18hは、実際の作業者の位置に関して実時間で計測した位置から、その時に作業者が最も行っている確率の高い作業を推定し、供給時刻以前に作業者が次の作業に進んでいるか否かを判断する。作業者が次の作業に進んでいる場合には即時に次の工具や部品を供給するよう、供給時刻修正量を出力する。
【0062】
供給時刻実時間修正部18kは、供給タイミング決定部18gで求めた供給タイミングと、作業進度推定部18hで求めた供給時刻の修正量とを加えることで供給時刻を求める。
【0063】
供給軌道計算部18fは、供給位置決定部18eから入力された供給位置(x
n,y
n)に供給位置オフセット(Δx
n,Δy
n)を足した値と、ロボットアームに対し部品や工具を補給する位置について予め設定された値と、に基づいてロボットアーム41bの先端の空間軌道を求める。
【0064】
第2制御手段19としてのロボットアーム軌道制御部は、供給軌道計算部18fで決定されたロボットアーム11xの先端の空間軌道y(x)と、供給タイミング決定部18g及び供給時刻調整部18jを経由して供給時刻実時間修正部18kから入力された供給時刻T
n(=t
n+Δt
n+Δt
u)と、さらにロボットアームに対し部品・工具を補給するタイミングについて予め設定された値と、に基づいてロボットアームの先端の時間軌道を求め、その通りにロボットアームを制御し、運動する。このように第2制御手段19は、作業状況予測手段18により予測された作業状況に基づいて供給手段20を制御する。
【0065】
以上のように、
図1に示す形態では、
図1に示す作業状況予測手段18が、必要となる部品、工具の何れか一方又は双方を供給するタイミング及び位置を決定し、その決定した供給位置に供給手段11としてのロボットアーム11xの先端を変位するようロボットアーム11xの軌道を計算し、計算結果を第2制御手段19に入力する。第2制御手段19には、供給軌道計算部18fから入力された供給軌道y(x)と、供給タイミング決定部18gから出力された供給タイミングtnに供給時刻オフセット量Δtn及び供給時間修正量Δtuを加えた供給時刻とが入力されるので、それら入力されたデータに基づいてロボットアーム11を制御する。
【0066】
制御切替手段20は、第1制御手段17、第2制御手段18の何れかに基づいて供給手段20を制御するように、入力スイッチ20aを切り替える。入力スイッチ20aは、第1制御手段17、第2制御手段18の何れか一方にだけ接続される。予め、入力スイッチ20aは第1制御手段17に接続された状態になっている。作業状況予測手段18が統計処理を行うのに十分なデータ量を超えると、例えば計算処理兼データベース部18aから制御切替手段20に対して信号が送信されることにより、入力スイッチ20aが第2制御手段18に接続された状態に切り替わる。
【0067】
作業者などが切替入力手段21にスイッチの切替指令を入力することによりその指令を制御切替手段20が受けると、入力スイッチ20aは第2制御手段17に接続された状態から第1制御手段17に接続された状態に強制的に切り替わり、或いはその逆に切り替わる。
【0068】
これにより、作業者2の作業工程の変更又は作業者2の交代などにより、計算処理兼データベース18aに蓄積されているデータがそのまま使用することができない場合であっても対処することができる。
【0069】
本発明の第1の実施形態に係る作業支援システム10では、作業状況予測手段18に統計処理を行うのに十分な情報が蓄積されていない場合には、制御切替手段20内の入力スイッチを第1制御手段17に接続しておく。つまり、作業状況予測手段18による統計処理が可能となるまで作業者位置特定手段14から入力された作業者の位置情報を作業状況予測手段18に蓄積させながら第1制御手段17により供給手段11を制御する。そして、作業状況予測手段18による統計処理が可能となるまで作業状況予測手段18が作業者の位置情報を蓄積したことを、例えば制御切替手段20が判断すると、制御切替手段20は、入力スイッチ20aを第1制御手段17から第2制御手段19に切り替えて接続する。これにより、第2制御手段19が供給手段11としてのロボットアーム11xを制御する。
【0070】
本発明の第1の実施形態では、作業状況予測手段18が統計処理を行えるのに十分な情報を未蓄積であっても、第1制御手段17により供給手段11の作業者への追従制御又は誘導制御を行える。よって、作業支援システム10を作業者による作業現場に導入し易くなる。
【0071】
また、作業支援システム10は切替入力手段21を備えているため、この切替入力手段21により入力スイッチ20aを第1制御手段17、第2制御手段19の何れか一方に強制的に切り替え制御することができる。よって、一旦システム導入をした後、作業工程に変更等が生じても次のようにすればよい。すなわち、作業者が切替入力手段21を用いて入力スイッチ20aを第2制御手段19から第1制御手段17に切り替える。これにより、作業者は変更後の新たな作業工程を行いつつ供給手段11を第1制御手段17により制御しながら作業者に必要な物を供給し、同時に作業者の行動に関するデータを作業状況予測手段18に蓄積することが可能となる。
【0072】
次に、
図1に示す作業支援システム10による作業支援方法の一例を説明する。
図4は、
図1に示す作業支援システム10による作業支援方法の一例の概略フロー図である。
STEP1として、入力手段12又は切替入力手段21に対して逐次追従制御を行うか、統計処理結果に基づく制御を行うかの何れかが入力される。入力手段12又は切替入力手段21は逐次追従制御の指令があったかを判断し(STEP2)、STEP2でYESの場合にはSTEP3に移り、STEP2でNoの場合にはSTEP4に移る。
【0073】
STEP3では次に示す逐次追従制御を行う。
STEP3−1において、作業者位置特定手段14が作業者の位置をセンサデータから求める。
STEP3−2において、位置決定手段16がロボットアーム11xの先端に関する目標位置を演算する。
STEP3−3として、第1制御手段17がフィードバックによりロボットアーム11xの先端の現在の位置の入力を受け、その現在の位置とSTEP3−2で演算した目標位置との差分が一定の範囲を超えるか否かを判定する。STEP3−3による判定がYesであればSTEP3−4に移り、NoであればSTEP3−1に戻る。
STEP3−4として、第1制御手段17はロボットアーム11xの軌道計算を生成する。
STEP3−5として、第1制御手段17はSTEP3−4で求めた軌道に従い作業者に対する部品や工具の供給位置にロボットアーム11xを動作する。
STEP3−6として、所定のサイクル数動作したかを例えば切替制御手段20が判定する。ここで、所定サイクル数とは、ロボットアーム11xの逐次追従制御により作業者の位置データなどが計算処理兼データベース部18aに所定量蓄積されるに必要なサイクル数であり、その必要なサイクル数は作業者の作業内容に応じて決定される。STEP3−6としての判定がYesであれば、STEP4の統計処理結果に基づいた制御に移行する。一方、STEP3−6としての判定がNoであれば、STEP3−1に戻る。
【0074】
STEP4では次に示す統計処理結果に基づく制御を行う。
STEP4−1において、作業者位置特定手段14が作業者の位置をセンサデータから求める。
STEP4−2において、供給位置決定部18eにおいて、供給位置となる、ロボットアーム17先端の目標位置を演算する。
STEP4−3として、供給軌道計算部18fにおいてロボットアーム11xの軌道を生成する。
STEP4−4として、第2制御手段19はSTEP4−4で求めた軌道に従い部品や工具の供給位置にロボットアーム11xを動作する。
STEP4‐5として、動作終了か否かを判断し、動作終了でなければSTEP4‐1に戻る。
【0075】
ここで、LRFの検出データは、誤差や作業者の僅かな動きによりセンサの性能が一定にならない。そのため、STEP3の逐次追従制御において、STEP3−3を設けないと、仮にロボットアーム17が同じ位置にある状態にもかかわらず振動してしまう。すると、ロボットアーム17により部品や工具などの必要な物品を供給しても、作業者は必要な物品を受け取りにくくなる。
【0076】
そこで、STEP3の逐次追従制御にあっては、STEP3−3においてロボットアーム17先端の現在の位置とロボットアーム17の先端の目標位置との差分を計算し、その差分が閾値を超えた場合に限り、STEP3−4においてアーム17の軌道計算を行い、STEP3−5においてロボットアーム17を動作させる。
【0077】
なお、STEP3の逐次追従制御においても、STEP4の統計処理結果に基づく制御と同様、レーザーセンサ12A,12Bにより作業者2の位置を検出すると、統計データとしてデータベース13aに蓄積される。
【0078】
〔第2の実施形態〕
次に、本発明の第2の実施形態について、
図5及び
図6を用いて説明する。
図5は、第2の実施形態に係る作業支援システムの構成図である。第1の実施形態に係る作業支援システム10とは、作業位置決定手段14と第2制御手段19の間の構成が異なる。
【0079】
作業状況予測手段40は、予測手段41と供給位置決定手段42と供給軌道計手段43で構成される。予測手段41は、作業者の移動データから生成したマルコフモデルを用いて作業者の行動を予測するものである。つまり、予測手段41が、マルコフモデルを用いて作業者の一連の作業中の運動をモデル化し、そのモデルに基づいて、作業毎の作業者位置、作業者の予測軌道、次の作業の開始時刻などを予測すること、及び、そのモデルに基づいて現在の位置を特定すること、のうち一つ以上を行う。そして、第2制御手段19が、予測手段10により予測、推定した結果のうち、一又は複数の結果に基づいて、供給手段11を制御して工具や部品その他の必要な物品を作業者に供給する。
【0080】
供給位置決定手段42は、予測手段41から入力された値であって作業に対する作業者の存在率の期待値に基づいて供給位置を決定するための手段である。供給軌道計算手段43は供給手段11による供給タイミングの決定及び供給軌道の計算を行って供給手段11に対して供給軌道を出力する。
【0081】
作業者の作業空間が状態変数として複数のセルに区分されていることを前提にして説明すると、予測手段41は、作業者の移動データからマルコフモデルを生成し必要に応じて更新を行い、そのマルコフモデルを用いて作業者が次の作業場所へ移動する到達時間及び移動軌道などを予測するものである。
【0082】
ここで、マルコフモデルとは、マルコフ連鎖で記述される確率モデルであり、マルコフ連鎖とは、状態を離散的に表し未来の状態を現在の状態のみによって決定しようとする確率的手法の一つである。
【0083】
作業者の作業空間が状態変数として複数のセルに分割されている場合を例に挙げて、マルコフモデルをどのように生成するかを説明する。状態変数は作業空間を離散化して定義される。例えば、作業空間が4m×8mの空間とすると、32×64個のセルに区分し、各セルにセル番号を付してこれを状態変数として定義する。そして、或る時刻に或るセルに作業者が存在するとして現在のセルに留まるか隣接する他のセルに移動するかを状態遷移確率行列で記述する。この状態遷移確率行列を作成すること又は更新することをマルコフモデルの生成、更新と呼ぶ。この状態遷移確率行列に基づいて作業者の移動軌道を予測する。
【0084】
作業者の位置については、計測手段13によって、作業者の腰の高さに設定されたLaser Range Finder(LRF)によって計測され、作業者位置推定手段14によって、計測された点群についてクラスタリング手法とパーティクルフィルタを適用して、作業者の位置を推定する。この推定手法については、先ず、LRFにより得られたデータ点から背景差分法を用いて障害物と作業者を区別して作業者のデータを抽出し、クラスタリング手法をその抽出結果に適用して生成したクラスタの数を作業者の数とする。次に、各々の作業者をパーティクルフィルタにより追跡することで、パートナーである作業者とそれ以外の作業者の位置推定を行うものである。ここで、パーティクルフィルタとは、多数のパーティクルを用いて過去の状態からの予測と現在の観測情報とを利用することにより、現在の状態を推定する手法である。
【0085】
予測手段41は、マルコフモデル生成手段41aと、マルコフモデル生成手段41aにより生成されたマルコフモデルを用いて作業に対する作業者存在位置の期待値を計算する第1計算処理部41bと、作業者の現在の作業を推定する第2計算処理部41cと、マルコフモデル生成手段41aにより生成されたマルコフモデルを用いて作業者の予測移動軌道を計算する第3計算処理部41dと、次の作業場所への予測到達時間及び予測移動軌道を計算する第4計算処理部41eと、を備える。
【0086】
第1計算処理部41bは、マルコフモデル生成手段41aにより生成したマルコフモデルから状態遷移確率の低い状態変数を抽出し、その抽出した状態変数の分布から、各作業毎に作業者の状態の期待値を求める。状態変数がセルの場合を例にとって具体的に説明すると、第1計算処理部41bは、マルコフモデルにおいて同じセルに居続ける確率の高いセルを抽出し、その抽出したセルの分布を作業数だけのガウス分布で近似し、この中心の座標を各作業毎の作業者が存在する位置の期待値とする。セルの分布をガウス分布で近似しているが、セルの分布をガウス分布以外の近似式で求めてもよい。
【0087】
第2計算処理部41cは、第1計算処理部41bで求めた各作業毎の作業者位置に関するガウス分布その他の近似分布と、作業者位置推定手段14から入力される作業者の現在の位置(Xw,Yw)とを比較することにより、作業者が現在行っている作業を推定する。
【0088】
第3計算処理部41dは、マルコフモデル生成手段41aで生成したマルコフモデルから、任意の状態変数のままである期間(「状態継続時間長」と呼ぶ。)の期待値を計算すること、及び、その状態継続時間長が経過したときの移動先を決定することにより、作業者の移動軌道を予測する。状態変数がセルの場合を例にとって具体的に説明すると、第3計算処理部41dは、マルコフモデル生成手段41aにより生成したマルコフモデルにおいて、作業者が各セルに留まり続ける期間(「状態継続時間長」と呼ぶ。)の期待値を計算し、またその状態継続時間長が経過したときの移動先セルをその瞬間の遷移確率が最も高いセルへと決定する。これを繰り返すことにより、予測される作業者の移動軌道を計算する。
【0089】
第4計算処理部41eは、第2計算処理部41cで推定した現在の作業と第3計算処理部41dで計算した予測移動軌道とに基づいて、次の作業場所へ移動する到達時間と次の作業場所への予測移動軌道を求める。
【0090】
供給位置決定手段42は、第1計算処理部41bで求めた値であって作業に対する作業者の存在率の期待値に基づいて、供給位置(Xn,Yn)を決定する。
【0091】
供給軌道計算手段42は、供給手段11による供給タイミングの決定及び供給軌道の計算を行う。
【0092】
本発明の第2実施形態に係る作業支援システム50では、第1計算処理部41b乃至第4計算処理部41eに作業者の位置情報等のデータが統計処理をするのに十分蓄積されていない場合には、第1実施形態と同様、切替スイッチ20aを第1制御手段17に接続しておく。つまり、作業状況予測手段40による統計処理が可能となるまで、作業者位置特定手段14から入力された作業者の位置情報を予測手段41の各計算処理部で処理しながら蓄積させつつ、第1制御手段17により供給手段11を制御する。そして、作業状況予測手段40による統計処理が可能となるまで、各計算処理部41乃至41eに作業者の位置情報を蓄積したと、例えば制御切替手段20が判断すると、制御切替手段20は、入力スイッチ20aを第1制御手段17から第2制御手段19に切り替えて接続する。これにより、第2制御手段19が供給手段11としてのロボットアーム11xを制御する。
【0093】
作業者の移動データから生成したマルコフモデルを用いて、作業者が次の作業場所へ移動する到達時間及び移動軌道について、作業状況予測手段4がどのように予測するかについて説明する。
【0094】
いま、作業空間が複数のセルに区分されてセル番号が付され、そのセル番号が状態変数として定義されているとする。また、座標Xcと座標Ycからなる車体座標系Σcの作業空間をセルに分割し、車一台毎に作業者が一連の作業を繰り返し行うものとすると、計測手段13により、例えばLRFにより作業者の位置が計測されるので、作業者位置推定手段14により、自動車一台分の作業者の移動軌道データが得られる。マルコフモデル生成手段41aにはその自動車一台分の作業者の移動軌道データが入力される。マルコフモデル生成手段41aは、その入力を受けて状態遷移確率行列で記述されることにより、マルコフモデルを生成し、更新する。
【0095】
作業者の移動経路を予測するために、マルコフモデル生成手段41aが作業者の行動データからマルコフモデルを生成する。いま、作業者の動きについて、前述のように作業空間を複数のセルに区分けして、各セルにセル番号を付して状態変数を定義する。作業者の作業空間、例えば車体座標系における作業空間をメッシュ状に離散化し、それぞれのセルに状態変数を定義する。各セルに対して離散時間間隔Δt(秒)毎に作業者の存在した回数をカウントし、統計的にマルコフモデルを生成する。
【0096】
この作業状況予測手法では、状態遷移確率a
ijは各セルに固有であって、時間によって変化しない値である。つまり、あるセルに作業者が入ったら、この工程の作業開始からの時間は一切関係なく、ある状態継続時間長の期待値分の時間だけそのセルにとどまり、その後状態遷移確率の一番高いセルに移動する、というように作業者の運動をモデル化する。
【0097】
具体的に説明すると、式(4)を用いて、状態遷移確率a
ijを計算する。
【数4】
ここで、iは時間t−Δtのときの状態を示し、jは時間tのときの状態を示す。N
ijは作業者が存在したセルがiからjへ遷移した回数を示し、N
iは作業者がセルiに存在した回数を離散時間間隔ごとにカウントしたものである。この状態遷移確率a
ijを全iとjの組み合わせについてすべて求め、行列[a
ij]として表したものがこの形態でのマルコフモデルである。なお、i,jは状態変数の数がm個であれば、i,jは1≦i,j≦mの関係式を満たす自然数である。
【0098】
このようにして作業者の移動データからマルコフモデルを生成するわけであるが、マルコフモデル生成手段41aは、車一台分の作業者の移動軌道データの入力のたびにマルコフモデルを更新してもよいが、必ず更新しなければならないというわけではない。
【0099】
次に、上述の生成したマルコフモデルから作業行動をモデル化し作業行動を推定する。第1計算処理部41bによって、作業に対する作業者の存在位置について期待値を計算する。この期待値は、まず作業数のみを既知とし、マルコフモデルにおいて同じセルに居続ける確率の高いセルを抽出し、その抽出したセルの分布を作業数だけのガウス分布その他の分布で近似する。具体的にはEMアルゴリズムを用いて各作業におけるガウス分布のパラメータを計算し、そのガウス分布の中心の座標を各作業毎の作業者が存在する位置の期待値とする。ここで、EMアルゴリズムとは、統計学において、確率モデルのパラメータを最尤法に基づいて推定する手法であり、期待値(expectation,E)ステップと最大化(maximization,M)ステップとを交互に繰り替えることで計算を進行させるものである。
【0100】
作業者の現在の位置については、第2計算処理部41cによって、前述のように計測手段13及び作業者位置推定手段14から求めた作業者の位置と、既に求めた分布であって各作業における作業者位置のガウス分布を比較することにより、作業者がその位置にいるならばどの作業を行っている確率が高いかが計算できるので、その作業を行っていると推定することができる。
【0101】
第3計算処理部41dによって、作業者の移動軌道を予測する。作業者の移動軌道予測は、作業者の移動データから生成したマルコフモデルを利用して行われる。この予測は次の2つのステップから成っている。一つは、状態継続時間長の期待値の計算ステップであり、一つは状態遷移確率に従った遷移先の決定ステップである。
【0102】
状態継続時間長の期待値の計算ステップについて説明する。
状態継続時間長とは、マルコフ過程において状態iに留まり続ける期間を意味する。状態継続時間を指定すると、式(5)から、状態iが指定した時間d(秒)続く確率p
i(d)を求めることができる。
【数5】
【0103】
ここで、π
iは初期確率を表す。状態継続時間長の期待値d
expは状態iが続く期間の平均を表したもので、式(6)から求めることができる。
【数6】
【0104】
この状態継続時間長の期待値は、作業者がこのセルに留まり続ける期間の長さの期待値であるので、このd
exp後には別のセルに移動すると考えられる。したがって、移動軌道予測手法において、この期待値が移動時間を予測するために用いられる。
【0105】
状態遷移確率に従って遷移先を決定するステップについて説明する。
状態継続時間長の考え方から、状態iが状態継続時間長の期待値d
expだけ続いた直後、状態は状態i以外の状態jに遷移すると考えられる。すなわち、この状態jはj≠iを満たす何れかの状態である。状態の遷移先は状態遷移確率に従い、状態遷移確率が最大である状態に決定される。
【0106】
よって、以上の、状態継続時間長の期待値を計算するステップ(Step1)と状態遷移確率に従って遷移先を決定するステップ(Step2)とを順に繰り返すことにより、作業者の移動軌道を求めることができる。
【0107】
図6は、
図5に示す入力スイッチを第2制御手段に接続した場合において、作業者の移動軌跡予測に関する説明図であり、(a)はStep1とStep2とを繰り返し、予測される観測系列を求める様子を示したものであり、(b)は、予測された観測系列を基に、離散化された状態空間上において,予測される作業者の移動場所と移動経路を示している。
【0108】
予測の手順としては、まず現在の作業者が離散化された状態空間上の状態3に存在したとして、Step1により状態3に作業者が存在し続ける時間を計算する。次に、Step2によって状態遷移確率に従った遷移先を決定する。いま、遷移先が状態9になったとする。そして、再びStep1を行い、状態9に作業者が存在し続ける時間を求め、Step2を再び適用して次の遷移先を決める。
【0109】
このように、2つのステップを繰り返し、状態継続時間長の期待値の合計が対象とする予測時間Tpとなったときに、最終的な遷移状態が、予測されるTp時間後の作業者の移動場所である。図では、作業者の予測される移動場所は状態20であり、予測される移動経路は、3,9,14,20であり,各セルに滞在する時間を含めた移動軌道としては3,3,3,9,9,14,14,14,14,20,20,20,20となる。
【0110】
次に、第4計算処理部41eでは、第2計算処理部41cで求まった作業者の現在位置と、第3計算処理部41dで求まった予測移動軌道とから、次の作業場所への予測到達時刻と予測移動軌道の計算を行う。具体的には、現在の作業から次の作業を特定し、次の作業箇所への移動が終了する時刻を求め、これと現在の時間の差から到達時間を求める。また次の作業場所への予測移動軌道は全予測軌道のうち現在の場所から次作業場所までの軌道をそのまま用いる。なお、第3計算処理部41dで求まる予測移動軌道とは、一連の作業を通した作業者の予測移動軌道であり、第4計算処理部41eで求める予測移動軌道とは、次の作業場所への作業者の予測移動軌道である。つまり、第4計算処理部41eでは一連の作業者の予測軌道から、次の作業へ向かう予測軌道を抜き出している。
【0111】
以上のように予測手段40において、作業者に対する作業者の存在率の期待値と、次の作業場所への予測到達時間及び予測移動軌道とが求まる。
【0112】
そこで、供給位置決定手段42において、第1計算処理部41bから入力される「作業に対する作業者の存在率の期待値」が最も高い位置を供給位置(Xn,Yn)として決定する。この後、作業者が手を伸ばしやすい位置などのオフセット(Δx
n,Δy
n)を加えて最終供給位置とする。このオフセット値は教示などにより作業者の作業のしやすさなどを考慮した微調整を行うためにも用いられる。
【0113】
供給軌道計算手段43は、供給手段11によって作業者に対して部品、工具その他の必要な物品を供給するタイミングを決定すると共に、供給手段11の供給軌道x(t),y(t)を計算する。タイミングの決定は、予測手段41から入力される、次の作業場所への予測到達時間から、供給手段11によって部品、工具その他の物品を供給するタイミングを決定する。もっとも簡単には、供給タイミングは作業者の予測到達時間をそのまま用いることができ、また意図的に前倒しの時間を設けて早めに供給することができる。供給手段11の軌道計算は、予測手段40から入力される、次の作業場所への作業者の予測移動軌道と、供給位置決定手段23から入力される供給位置に供給位置オフセット情報(ΔXn,ΔYn)を加えた最終供給位置と、決定した供給タイミングとから、供給手段11の供給軌道を計算する。ここで、供給軌道は、ただ単に工具、部品その他の必要な物品の補給位置から最終供給位置までを直線で結んだものを、時間軸に関して例えば多項式で補間した軌道でもよいし、作業者の予測移動軌道を考慮して衝突が起こりにくいように作成した軌道であってもよい。
【0114】
第2制御手段19は、供給軌道計算手段43から入力された供給軌道x(t),y(t)に従って、ロボットアームなどの供給機構11の先端、例えばロボットアーム11xの手の先を移動させる。この供給手段11には、搬送機構の他、作業に応じて部品、工具などの必要な物品のリストが情報として蓄積されており、供給軌道計算手段43からの入力により、そのリストアップの中から、必要な物品が選択され、搬送機構により、作業者の手元に供給される。
【0115】
このように、第2の実施形態に係る作業支援システム50においても、作業状況予測手段40が統計処理を行えるのに十分な情報を未蓄積であっても、第1制御手段17により供給手段11の作業者への追従制御又は誘導制御を行え、データが或る程度蓄積されると、制御切替手段20により、入力スイッチ20aを第1制御手段17から第2制御手段19に切り替え、作業状況予測手段40によりマルコフモデルに基づいて作業支援を行うことができる。よって、作業支援システム10を作業者による作業現場に導入し易くなる。
【0116】
なお、第2実施形態においては、作業状況予測手段40による予測は、作業者の作業空間が状態変数として複数のセルに区分されている場合を例にとって説明しているが、例えば作業者の運動パターンを別途用意したセンサで取得し、この取得した運動パターンから作業状況を推定し、その推定値を状態変数としてもよい。状態変数をこのように設定しても、作業者の運動パターンから生成したマルコフモデルを用いて作業者が次の作業場所へ移動する到達時間及び移動軌道などを予測することができ、その予測結果に応じて作業者の移動軌道を求めて、供給手段を制御するようにしてもよい。