(57)【特許請求の範囲】
【請求項１】
センサを有する計測部と、
上記計測部から入力されたデータから作業者の位置を特定する作業者位置特定部と、
複数の作業のうち或る作業が指定されることにより当該或る作業をしている作業者の存在可能性を示す位置に対する作業者の存在率に関する確率分布を計算して保有可能としており、上記作業者位置特定部から入力された作業者の位置に応じて、位置に対する作業者の存在率を求める計算処理兼データベース部と、
上記計算処理兼データベース部で求めた、位置に対する作業者の存在率に基づいて供給位置を決定する供給位置決定部と、
上記供給位置決定部で決定された供給位置に基づいて搬送手段の軌道計算を行う供給軌道計算部と、
を備える、作業支援ロボットシステム。
【請求項２】
前記供給位置決定部と前記供給軌道計算部との間には、前記計算処理兼データベース部から出力された、位置に対する作業者の存在率から求めた供給位置に対し、供給位置に関するオフセット量を加減して前記供給軌道計算部に出力する供給位置調整部を備える、請求項１に記載の作業支援ロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作業工程に応じて、例えば必要な部品や工具類等を作業者に渡す作業支援ロボットシステムに関する。
【背景技術】
【０００２】
自動車の組立ラインでは未だに多くの作業が人為的になされている。それは、多くの部品がロボットでハンドリングすることが難しいことや工程の頻繁な組み替えに柔軟に対応する必要があることなど様々な理由による。
【０００３】
小物部品の組み付け工程では、車体を搬送する移動手段に対しワゴン台車が備えられている。ワゴン台車は車体の搬送に同期して移動し、ワゴン台車の作業台に比較的小さな部品や工具が載置されている。作業者は次のような一連の作業を行う。第一の作業として、作業者は、部品を作業台から取り出し、その部品の取付位置まで移動して車体にその部品を取り付け、ワゴン台車の位置まで戻る。第二の作業として、作業者は、別の部品と工具を作業台から取り出し、別の部品の取付位置まで移動して車体に別の部品を取付工具により締め付けてワゴン台車の位置まで戻る。第三の作業として、作業者は、別の工具を取り出し、増し締めを行うところまで移動して増し締め作業を行い、ワゴン台車の位置まで戻る。第四の作業として、作業者は、ワゴン台車を初期位置となる原位置まで手押しで戻す。この一連の作業を行う組立ラインでは、部品棚を設置することなく、作業者の歩行数を低減している。自動車の組立ラインの別の例としては、作業者が配置される代わりにロボットが所定の位置に設定されており、組立ライン作業の自動化が図られている。
【０００４】
人と共存できるロボットに関する研究開発がなされている（例えば特許文献１〜５）。特許文献１に開示されているロボットアームの制御技術では、多関節型のロボットアームであっても安全に人とロボットアームとが接触することができ、人の動きに応じた最適な接触動作が可能で、人への接触ダメージを与えることがない。特許文献２に開示されている技術では、ロボットが所定の作業を完遂するのに最低限度必要な出力を得て、その限度を超える出力を制御することで、ロボットと人との共存、協調を図っている。特許文献３に開示されている技術では、ロボットの可動範囲と作業者の侵入禁止領域を任意の領域に確実にかつ簡便に設定し、また可動範囲と侵入禁止領域とを随時変更することができる。特許文献４に開示されている技術では、人間と共同作業するロボットとの共同作業中にヒューマンエラーが発生し突入してはいけない領域に突入する事態の発生を防止しながら、不用意にロボットの移動を規制しないようにしている。特許文献５に開示されている技術では、動作中に人間と接触する可能性がある関節部を有する人間共存ロボットにおいて、接触センサを設け、制御手段がその接触センサから検知信号を受けたときには人間に危害が加わらないよう駆動部を制御して危険回避動作をさせている。
【０００５】
そのような技術状況において、特許文献６に開示されている移動ロボットシステムでは、無人搬送車にロボットアームを搭載し、無人搬送車が設備間を移動してロボットアームにより作業を行わせる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−３０２４９６号公報
【特許文献２】特開２００８−２６４８９９号公報
【特許文献３】特開２００７−２８３４５０号公報
【特許文献４】特開２００４−０１７２５６号公報
【特許文献５】特開２００２−０６６９７８号公報
【特許文献６】特開２００１−３４１０８６号公報
【非特許文献】
【０００７】
【非特許文献１】P.J.Clark et al, Ecology, Vol.35, No.4,pp.445-453, Oct.1954
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、ワゴン台車が車体の移動と同期して移動していても、作業者の作業が遅れた場合にワゴン台車が待機状態となる一方、作業者の作業が早く進む場合には作業者が待機状態となる。このように、ワゴン台車が車体の移動と連動していてもライン全体としての効率が悪くなる。また、作業者は、ワゴン台車からの部品や工具の取り出しと、これを行うためにワゴン台車と作業箇所との間を行き来する移動を行わねばならず、作業効率が悪い。
【０００９】
一方、特許文献６では、移動ロボットを複数の設備に沿って設けられた走行路を移動させ、設備前の所定の作業位置に停止させた状態でロボットアームによりワークの受渡しや組付け等の各種の作業を行わせるようになっていると説明されているに過ぎない。
【００１０】
そこで、本発明では、作業者の作業に応じて必要な物品、例えば当該作業にとって必要な部品や工具などをその作業を行うべき個所において作業者に正確且つ確実に渡すことができる作業支援ロボットシステムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、本発明における作業支援ロボットシステムは、センサを有する計測部と、計測部から入力されたデータから作業者の位置を特定する作業者位置特定部と、複数の作業のうち或る作業が指定されることにより当該或る作業をしている作業者の存在可能性を示す位置に対する作業者の存在率に関する確率分布を計算して保有可能としており、作業者位置特定部から入力された作業者の位置に応じて、位置に対する作業者の存在率を求める計算処理兼データベース部と、計算処理兼データベース部で求めた、位置に対する作業者の存在率に基づいて供給位置を決定する供給位置決定部と、供給位置決定部で決定された供給位置に基づいて搬送手段の軌道計算を行う供給軌道計算部と、を備える。
上記構成において、供給位置決定部と供給軌道計算部との間には、計算処理兼データベース部から出力された、位置に対する作業者の存在率から求めた供給位置に対し、供給位置に関するオフセット量を加減して供給軌道計算部に出力する供給位置調整部を備える。
【発明の効果】
【００１２】
本発明によれば、計測部におけるセンサから取得した作業者の位置とその際の作業内容との関係を計算処理兼データベース部として統計的に記述して記憶更新し、計算処理兼データベース部に基づいて作業支援動作を生成する。よって、作業者の位置の時系列データを統計的に解析することで作業に実際にかかっている時間、作業者の移動経路、作業者の癖などを把握して作業状況を統計的に処理し、作業者の動きに合わせてスムーズに部品や工具を供給することができる。これにより、作業者は、従来のように、作業位置から部品を取りにワゴンへ戻って部品を選び、また作業位置へ戻るという繰り返し動作をしなくて済む。本発明は、作業効率の向上、作業手順の間違い防止など優れた効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１の実施形態に係る作業支援ロボットシステムのブロック構成図である。
【図２】図１に示す作業支援ロボットシステムの一例を示すブロック構成図である。
【図３】本発明の第１及び第２の実施形態に係る作業支援ロボットシステムが適用される場面を模式的に示す図である。
【図４】図３に示す計測部におけるセンサの設置状況を示す図である。
【図５】作業スペースの一例を模式的に示す図である。
【図６】作業進行状況推定部における作業者位置特定機能を説明するための模式図である。
【図７】本発明の第２の実施形態に係る作業支援ロボットシステムのブロック構成図である。
【図８】図７に示す作業支援ロボットシステムの変形例のブロック構成図である。
【図９】第一計算処理部に格納されている確率分布の算出を説明する図である。
【図１０】供給位置決定部及び供給位置調整部における機能を説明する図である。
【図１１】供給タイミング決定部及び供給時刻調整部の機能を説明する図である。
【図１２】位置に対する作業の実行率について模式的に描いたもので、（Ａ）〜（Ｉ）は各作業の位置に対する実行率を示す図である。
【図１３】図１２に示す位置に対する作業の実行率について模式的に描いたもので、位置に対する実行率が最も高い作業を車両からの座標系Ｘｃ、Ｙｃで示す図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照しながら、作業支援ロボットシステムが自動車の組立ラインに配置されている場合を前提に、本発明の実施形態を幾つか詳細に説明する。搬送機構、例えばロボットアーム又はこれに準ずる機構を制御して作業者による作業を支援する各種の場合においても、本発明の要旨を変更しない範囲で適用することができる。
【００１５】
〔第１の実施形態〕
図１は本発明の第１の実施形態に係る作業支援ロボットシステムのブロック構成図である。図２は図１に示すシステムの一例を示すブロック構成図である。図３は図１及び図２に示す作業支援ロボットシステムが自動車の組立ラインに配備されている場面を模式的に示す図である。各図において同一又は実質的に同一のものについては同一の符号を付すことにする。
【００１６】
〔作業支援ロボットシステムの全体的な構成〕
本発明の第１の実施形態に係る作業支援ロボットシステム１０Ａは、図１に示すように、部品や工具などの物品を搬送する搬送機構１１Ａと、作業者の位置を計測する計測部１２と、作業進行状況を推定して部品や工具などの物品を選択する作業進行状況推定部１３と、搬送機構１１Ａを制御する運動計画部１４Ａと、を備えている。作業進行状況推定部１３は、作業手順に関するデータを参照しながら計測部１２から入力されたデータに基づいて作業進行状況を推定し、作業工程が次の工程に遷移したと判断したときその次の工程において必要となる部品や工具などの物品を選択する。上記運動計画部１４Ａは、作業進行状況推定部１３が推定した作業進行状況と選択した物品とに応じて搬送機構１１Ａの運動を計画して搬送機構１１Ａを制御する。
【００１７】
図２に示す作業支援ロボットシステム１０は、搬送機構１１Ａとして一又は複数のロボットアーム１１を備え、運動計画部１４Ａとしてアーム運動計画部１４を備える。アーム運動計画部１４は、作業進行状況推定部１３が推定した作業進行状況と選択した物品とに応じてロボットアーム１１の軌道を計画してロボットアーム１１を制御する手段である。
【００１８】
図２に示す作業支援ロボットシステム１０には、一又は複数のロボットアーム１１と、作業者の位置を計測する計測部１２と、作業手順に関するデータを参照しながら計測部１２から入力されたデータに基づいて作業進行状況を推定し、作業工程が次の工程に遷移したと判断したときその次の工程において必要となる物品としての部品や工具などを選択する作業進行状況推定部１３と、作業進行状況推定部１３が推定した作業進行状況と選択したものとに応じてロボットアーム１１の軌道を計画してロボットアーム１１を制御するアーム運動計画部１４と、が備えられている。以下の説明では、特に図２に示す作業支援ロボットシステム１０を前提とする。
【００１９】
作業支援ロボットシステム１０は、図２に示すように、部品やツールを供給する補給部１５と、作業者からロボットアーム１１に対する指令の入力を受ける入力部１６と、ロボットアーム１１が作業者に接触せずロボットアーム１１が車体や設備と衝突しないよう作業安全を確保するための安全保障部１７と、入力部１６からの入力を受けロボットアーム１１の動作を計画する上位動作計画部１８と、安全保障部１７からの入力を受けロボットアーム１１を緊急制御する緊急動作制御部１９と、ロボットアーム１１におけるインピーダンスを制御するインピーダンス制御部２０と、を備える。ここで、補給部１５は、部品やツールをロボットアーム１１のトレー１１Ｇに供給するものであるので、供給部と呼んでもよい。
【００２０】
図２に示す作業支援ロボットシステム１０では、作業進行状況推定部１３、上位動作計画部１８、アーム運動計画部１４、インピーダンス制御部２０及び緊急動作制御部１９が次に説明するように有機的に連関することで統合制御部２１が構成されている。
作業進行状況推定部１３及び上位動作計画部１８からの各出力情報がアーム運動計画部１４に入力され、アーム運動計画部１４はそれらの出力情報に基づいてロボットアーム１１の軌道を計画する。アーム運動計画部１４、インピーダンス制御部２０及び緊急動作制御部１９からの各出力情報がロボットアーム１１に入力され、ロボットアーム１１が制御される。
【００２１】
図２に示す作業支援ロボットシステム１０には、作業手順データ蓄積部２２が備えられ、この作業手順データ蓄積部２２には、作業者の作業手順に沿って各作業工程の内容のほか、後述するような作業手順データが蓄積されている。この作業手順データは、作業進行状況推定部１３及びアーム運動計画部１４によって参照される。
以下の説明においては、作業手順データ蓄積部２２が備えられている場合を説明するが、作業手順データが作業支援ロボットシステム１０に外部から構内ＬＡＮなどのネットワークを介して必要に応じて統合制御部２１にデータ配信される場合であっても同様である。
【００２２】
作業支援ロボットシステム１０が自動車の組立ラインに配備される場合について説明する。図３は、作業支援ロボットシステム１０が適用される場面を模式的に示す図である。自動車の組立ラインにおいては、車体１が例えば図示しない一対のＬ字状のアームで支持され、その車体１が移動しながら組み立てられる。図では筐体３０は一つしか示していないが、車体１が移動するラインに沿って筐体３０が間隔を開けて配備されている。筐体３０には、作業者２が必要な物品、例えば工具や部品を載置可能なテーブル３１が備えられ、テーブル３１の上部には必要となる部品が排出される排出口３２が設けられている。テーブル３１の一端部にはロボットアーム１１が駆動可能に取り付けられている。ここで、図３では、一台のロボットアーム１１の場合を示しているが、工程に応じて複数のロボットアーム、一般的にはアームを備えてもよい。
【００２３】
複数の関節がリンク同士を駆動可能に結合することでロボットアーム１１が構成されている。ロボットアーム１１は例えば二自由度の水平多関節型のロボットアームであって、例えば図３に示すように、第一の関節部１１Ａがテーブル３１と第一のアーム１１Ｄとを連結し、第二の関節部１１Ｂが第一のアーム１１Ｄと第二のアーム１１Ｅとを連結し、第三の関節部１１Ｃが第二のアーム１１Ｅと工具取付用アタッチメント１１Ｆ及びトレー１１Ｇとを連結している。第一乃至第三の関節部１１Ａ，１１Ｂ，１１Ｃは、何れも鉛直方向に沿って平行に配置される回動軸を有している。筐体３０においてロボットアーム１１が駆動可能に取り付けられている側と逆側には、複数の工具設置用ボックス３３が設けられている。各工具設置用ボックス３３にはドライバー、トルクレンチなどの手動又は電動の各種工具３４が上から挿入され、ロボットアーム１１又は作業者により取り出し可能に収容されている。
【００２４】
筐体３０にはロボットアーム１１における駆動用電源や駆動部のほか、ビスやナットなど比較的小さな各種の部品３５が収容され、排出口３２からテーブル３１に向けて排出される。ロボットアーム１１の各関節部１１Ａ，１１Ｂ，１１Ｃを駆動してトレー１１Ｇをテーブル３１上に移動すれば、トレー１１Ｇに部品３５を載せることができ、その後ロボットアーム１１の各関節部１１Ａ，１１Ｂ，１１Ｃを駆動すれば部品３５を作業者の近くまで搬送することができるし、各種工具３４を取り出すこともできる。
【００２５】
〔作業支援ロボットシステムの各部の構成〕
図１及び図２に示す作業支援ロボットシステム１０，１０Ａの構成について詳説する。搬送手段１１Ａとしてのロボットアーム１１は、アームが関節部で連結されて構成されている。図３に示すような多関節型ロボットアームで同一水平面のみで駆動されるものでも、水平および垂直の何れにも駆動されるものであってもよい。また工程によっては、図１に示す搬送機構１１Ａは、図２に示すロボットアーム１１だけでなく、関節を複数持つものでなく１自由度の直動テーブルのように、工具、部品の何れか又は双方を搬送するものであればよく、またそれ自身が移動する台車であっても工具、部品の何れか又は双方を搬送するものであればよい。ロボットアーム１１は、図３に示すように筐体３０に駆動可能に取り付けられていても、ラインの固定設備に取り付けられていても、台車のような移動可能なものに取り付けられていてもよい。
【００２６】
補給部１５は、サイズや規格が異なる各種のボルトやナットなどの部品を種別毎に分類しており、外部からの指令、例えばアーム運動計画部１４からの指令に基づいて必要な部品を所定の排出口に適時に排出する。補給部１５には、作業に必要となる工具などのツールを選択することができるよう設置されている。
【００２７】
計測部１２はＩＣタグとレシーバとを床面などに取り付けて構成してもよく、床面に感圧センサを敷き詰めて直接作業者の位置を取得できるよう構成してもよいが、計測部１２は一以上の各種のセンサで構成されている。センサの種類としては、簡便のために、例えばレーザ式測域センサやＣＣＤカメラなどの光学センサが用いられる。レーザ式測域センサは、レーザ光を照射し、設置物や移動しつつある作業者や車体など、各種のものによって反射したレーザ光を検知する。このレーザ式測域センサはＬＲＦ（Laser Range Finder）とも呼ばれ、例えば図３に示す筐体３０に取り付けられていても、それ以外のラインの設備に取り付けられていてもよい。例えば、二つのセンサは鉛直上下方向に隔離して設置される。図４は、計測部１２におけるセンサの設置状況を示す図である。一方のセンサとしての第一のセンサ１２Ａは、作業者の腰の位置を検知するため、床面から作業者の標準的な腰の高さ近辺に設置される。他方のセンサとしての第二のセンサ１２Ｂは、作業者の脚、例えば膝関節や踝の位置近傍を検知するため、床面から作業者の標準的な脚の高さ近辺に設置される。図４において、Ｘ軸及びＺ軸は床面に固定されている固定座標系である。
【００２８】
入力部１６は、作業者からロボットアーム１１に対する指令の入力を受けるものであり、マイクと音声認識機能とを有する音声教示部と、操作ボタン及び／又は操作レバーとその操作状況を検知して信号に変換する無音声教示部との何れか又は双方を備えている。
【００２９】
安全保障部１７は、ロボットアーム１１がその他のもの、例えば移動しつつある車体１や作業者２や設備と衝突の可能性が大きくなると、緊急動作制御部１９に信号を入力する。
【００３０】
統合制御部２１は、計測部１２、入力部１６及び安全保障部１７からの入力を受け、ロボットアーム１１及び補給部１５を制御するものである。統合制御部２１は、詳細には、作業進行状況推定部１３、上位動作計画部１８、アーム運動計画部１４、インピーダンス制御部２０及び緊急動作制御部１９を有する。図１に示す例では、統合制御部２１は作業支援ロボットシステム１０内の作業手順データ蓄積部２２に接続されているが、作業支援ロボットシステム１０が図示しないコントロールセンターに接続されており、作業ラインを統括的に制御するコントロールセンターから統合制御部２１に、作業手順データが随時入力されるようにしてもよい。
【００３１】
〔統合制御部の各部の構成〕
統合制御部２１における各部の構成について詳説する。
作業進行状況推定部１３は、計測部１２からセンサの出力データが入力され、作業者による作業の進行状況を推定するものである。詳細には、作業進行状況推定部１３は、作業者の位置を特定する機能と、作業者の位置から作業者の行動を判別する機能とを有する。前者を作業者位置特定機能と呼び、後者を作業者行動判別機能と呼ぶことにする。
【００３２】
作業者位置特定機能は、センサの出力データをクラスタリングし、作業者のクラスタを特定して作業者の位置を特定する機能である。センサの出力データ、即ち反射点の集合をクラスタリングし、ある特徴空間上の点をその分布状態に応じて幾つかのグループに分類する。クラスタリングには、ＮＮ(Nearest Neighbor)法、Ｋ−ＮＮ(K Nearest Neighbor Algorithm)法、Ｋ平均（K Mean Algorithm）法などの周知の技術を用いる（非特許文献１）。センサからの出力データをクラスタリングしても、作業者で反射したレーザ光を検出したデータと、作業者以外のもの例えば組立ライン上に設置されているものや車体１などで反射したレーザ光を検出したデータと、を区別することは難しい。
【００３３】
そこで、例えば図４を示して説明したように、作業者の腰の高さ近傍と作業者の脚の高さ近傍とで、鉛直方向に上下に離れた第一のセンサ１２Ａと第二のセンサ１２Ｂとが配置されている。そして、第一のセンサ１２Ａからの出力データをクラスタリングして作業者の位置を特定するためのデータを求め、第二のセンサ１２Ｂからの出力データをクラスタリングして作業者の位置を特定するためのデータを求める。第一のセンサ１２Ａの出力データからクラスタリングにより求めた結果を「腰クラスタ」と呼び、第二のセンサ１２Ｂの出力データからクラスタリングにより求めた結果を「脚クラスタ」と呼ぶことにする。作業者の腰と両脚との位置関係からすると、水平面で考えれば、作業者を示す腰クラスタの周りで一定距離内に、脚クラスタが二つ存在することになる。そこで、作業進行状況推定部１３は、先ず、計測部１２から入力されたデータをクラスタリングした結果に基づいて、腰クラスタの中心から所定半径内に二つの脚クラスタがあるか否かで、作業者に関するデータと判定する。説明の便宜上、一つの腰クラスタと二つの脚クラスタとの組合せを作業者クラスタと呼ぶことにする。このように、作業進行状況推定部１３は計測部１２からセンサの出力データが入力される度に、又は入力された回数に応じて所定の複数の回数だけ、作業者に関するデータ、即ち作業者クラスタを判定する。これとは異なり、作業進行状況推定部１３は、計測部１２からの出力データに基づいて作業者クラスタを一旦特定した後は、センサから一周期前の作業者クラスタと現在計測されている各腰クラスタとの距離を計算し、最も距離の短い腰クラスタを作業者クラスタと特定する。以後、作業者クラスタを更新し続けてもよい。この場合、作業進行状況推定部１３は、作業者が大きく移動することがない限り、作業者クラスタを腰クラスタのみから特定する。作業進行状況推定部１３は、以上説明した手順により、作業者クラスタを特定する。また、作業者クラスタに含まれる全てのデータに基づいて、作業者の位置を示す代表となる点を「作業者代表点」として定め、作業者位置情報として行動判別に用いる。作業者代表点は、例えば、作業者クラスタに含まれている全てのデータ（例えば座標）について平均化して算出される。
【００３４】
図５に例示するように、作業スペースが複数の領域に区分されている。図５に示す座標系は、組立ラインに沿って移動する車体を基準にＸｃ軸、Ｙｃ軸として定められている。Ｘｃ−Ｙｃ軸に対して領域Ａ、領域Ｂ、領域Ｃ、領域Ｄ、領域Ｅの計５つの区分領域に分けられている。区分領域の大きさ、位置、数は工程に合わせて任意に決めることができる。各領域は、各作業に応じて行われるべき作業領域が一対一に対応して定められている。図６は作業進行状況推定部１３における作業者位置特定機能を説明するための模式図である。図６から、Ｘｃ−Ｙｃ平面上で、腰クラスタが求まり、その中心に作業代表点が定まり、作業代表点のＸｃ−Ｙｃ平面座標において領域Ａで作業者が作業していることが分かる。
【００３５】
作業進行状況推定部１３における他方の機能、即ち、作業者行動判別機能とは、作業者の位置から作業者の行動を判別する機能であり、前述した作業者位置特定機能で得られる作業者代表点と事前に定められている作業手順データとに基づいて作業者の行動を判別する機能のことである。以下、作業者行動判別機能について詳細に説明する。ある作業者が作業する工程に基づいて、作業手順が定められている。作業手順データには、少なくとも作業番号と作業スペースとが必須要素として、好ましくは作業番号と作業スペースと作業時間とが必須要素として含まれている。作業スペースは、作業者が作業すべき空間が複数の領域に区分されており、どの領域が該当作業の領域であるかを示している。なお、各区分された領域を、便宜上、区分領域と呼ぶことにする。
【００３６】
図５は、作業スペースの一例を模式的に示す図である。図５に示す例では組立ラインに沿って移動する車体を基準に座標系が定められており、図ではＸｃ軸、Ｙｃ軸として示している。Ｘｃ−Ｙｃ軸に対して領域Ａ、領域Ｂ、領域Ｃ、領域Ｄ、領域Ｅの計５つの区分領域に分けられている。各領域は、各作業に応じて行われるべき作業領域が一対一に対応して定められている。作業番号ｉに応じて作業スペースＡ（ｉ）が変わる場合には、作業手順データの要素として少なくとも作業番号ｉと作業スペースＡ（ｉ）とが含まれておればよく、作業番号ｉが次の作業番号ｉ＋１に変わっても作業スペースＡ（ｉ＋１）が作業スペースＡ（ｉ）と同じ場合には、作業手順データの要素として作業番号ｉと作業スペースＡ（ｉ）と作業時間ｔ（ｉ）とが含まれていればよい。ここで、ｉとは１以上で作業工程の数以下の自然数である。
【００３７】
作業手順データはこのようなデータ構造を備えているので、作業工程の移り変わりを作業領域の移り変わりと置き換え、作業者代表点の位置から作業工程の進度を推定する。即ち、作業者代表点が存在する作業領域から次の作業領域へ移り変わると、作業工程の判別結果についても次の作業へ遷移することになる。ただし、同じ作業領域で複数の作業が連続して行われる場合、作業者代表点の位置のみでは作業工程の移り変わりを識別できない。そこで、各作業の作業時間と時間経過を比較しながら作業工程の遷移の有無を判断する。各作業は作業番号順に行われるため、前の作業に戻ることはない。よって、作業工程の遷移があると、作業者代表点が一つ前の作業工程の作業領域に入ることはあっても作業工程番号はリセットされない限り、元に戻らない。
【００３８】
作業進行状況推定部１３は、前述したように計測部１２からのセンサの出力データに基づいて作業者の位置を特定し、作業者による作業の進行状況を推定する。作業進行状況推定部１３は、作業工程の遷移があると、アーム運動計画部１４に対して作業工程が遷移した旨の信号を出力する。
【００３９】
上位動作計画部１８は、入力部１６を介して作業者からロボットアーム１１に関する強制的な指令をアーム運動計画部１４に対する信号に変換し、その結果をアーム運動計画部１４に出力する。
【００４０】
アーム運動計画部１４は、作業手順データ蓄積部２２に蓄積されている作業手順に関するデータを参照しながら、作業進行状況推定部１３から作業遷移があった旨の信号の入力を受けると、ロボットアーム１１を次の作業に応じてどのように駆動するかについて計画する。基本的には、ロボットアーム１１は次の作業、すなわち作業者が現在行っている作業の次の作業において必要な工具及び部品をトレーにセットし次の供給位置に向かう。アーム運動計画部１４は、上位動作計画部１８を介して作業者のロボットアーム１１に関する指令の入力を受けると、作業進行状況が許容する場合に限り、ロボットアーム１１を作業者の指令に基づいて駆動する。アーム運動計画部１４には、例えばロボットアーム１１の駆動に関する多数の動作ファイルが格納されている。アーム運動計画部１４は、作業進行状況推定部１３及び上位動作計画部１８から入力される結果に基づいて一つの動作ファイルを選択してロボットアーム１１に出力する。すると、アーム運動計画部１４は、ロボットアーム１１を動作ファイルに基づいて駆動する。
【００４１】
ロボットアーム１１の各関節部にはモータとエンコーダが取り付けられている。インピーダンス制御部２０は、エンコーダからのフィードバック信号や入力部１６からの操作力によりインピーダンス移動量を算出して、ロボットアーム１１をスムーズに制御する。
【００４２】
緊急動作制御部１９は、安全保障部１７から信号の入力があると、ロボットアーム１１が安全領域に位置するようロボットアーム１１を強制的に制御するものである。この強制制御により、ロボットアーム１１と例えば移動しつつある車体１、作業者２、設備などとの衝突を回避する。
【００４３】
〔作業支援方法〕
作業支援ロボットシステム１０が図３に示した自動車の組立ラインに組み込まれている場合を例に挙げて、作業支援方法について詳細に説明する。
【００４４】
作業者は、作業工程に基づいて組立ラインに沿って移動する車体１に対して組立作業を行う。作業者の一人は組立ラインの所定の位置に配備され、例えば、第一工程としてフロントサイドメンバ後側の増し締め作業、第二工程としてフェンダーライナーグロメットの取付作業、第三工程として左側フロントブレーキホースクリップのはめ込み作業、などを順に行う。
【００４５】
計測部１２は、所定のタイミングでレーザを水平に照射して反射してくるレーザ光を検出し、レーザ光のはね返ってくる時間や方向から、作業者を含む反射点の位置を計測し、第一のセンサ１２Ａ及び第二のセンサ１２Ｂの各出力データを作業進行状況推定部１３に入力する。
【００４６】
作業進行状況推定部１３は、第一のセンサ１２Ａ及び第二のセンサ１２Ｂから各出力データの最初の入力があると、出力データを前述したようにクラスタリングして腰クラスタと脚クラスタとを求め、腰クラスタの中心から所定の半径内に脚クラスタがあるような腰クラスタと脚クラスタとのペアを抽出することで、作業者クラスタを求める。
【００４７】
作業進行状況推定部１３は、第一のセンサ１２Ａ及び第二のセンサ１２Ｂから各出力データの二回目以降の入力があると、出力データをクラスタリングし前回求めた腰クラスタ近傍のものを今回の腰クラスタとして求める。
【００４８】
作業進行状況推定部１３は、このようにして求めた腰クラスタから作業者の位置を計測部１２からデータの入力毎に特定し、予め区分けされている区分領域のどれに作業者が存在しているかを推定する。作業進行状況推定部１３は、作業領域が別領域になったか、又は同じ作業領域でも一つの作業が開始してから作業手順データ内に規定されている作業時間を経過したか、の何れかを満たしたかについて判定する。作業進行状況推定部１３は、肯定的な判定をした場合には、一つの作業が終了し別の作業に移ったと判断し、アーム運動計画部１４にその判断結果を出力する。
【００４９】
すると、アーム運動計画部１４は、作業進行状況推定部１３から作業遷移についての情報の入力があるので、その入力を受ける度に、作業手順データ蓄積部２２を参照して次の作業において補給部１５における排出口３２から部品供給があるか否か、必要となる工具３４があるか否かを判断する。アーム運動計画部１４は、排出口３２から部品供給があるべきと判断した場合には、供給されるべき部品の種別や数などの情報を補給部１５に通知する。それと共に、アーム運動計画部１４は、排出口３２の手前にロボットアーム１１の先端に取り付けたトレー１１Ｇを所定の時間だけ配置し、排出口３２から部品３５の補給を受けるようロボットアーム１１を駆動する指令を出力する。その際、補給部１５は、供給されるべき部品の種別や数などの情報をアーム運動計画部１４から入力されるので、その情報に基づいて排出口３２から部品供給を行う。アーム運動計画部１４は、指令の出力と同時に、次の作業工程において工具が必要と判断する場合には、例えば筐体３０に取り付けられている工具３４の一つを選択し、工具３４を工具取付用アタッチメント１１Ｆに引っ掛けるなどして保持し、ロボットアーム１１を駆動して作業者の近傍まで搬送するよう指令する。
【００５０】
以上説明したように、計測部１２からセンサの出力データが作業進行状況推定部１３に入力されると、作業進行状況推定部１３は作業者の位置を特定し、次の作業に遷移したか否かを判定する。次の作業に遷移したと作業進行状況推定部１３が判断すると、アーム運動計画部１４に入力される。アーム運動計画部１４には作業遷移に関する情報が入力されるので、作業手順データに基づいてロボットアーム１１の軌跡などを計算してロボットアーム１１を駆動すると共に、作業手順データにおいて次の作業に供給部品の種類や数が設定されている場合には補給部１５にその情報を通知する。よって、作業工程が遷移しても作業者は予め作業を行うべき領域に移動するだけで、必要となる部品や工具をあたかも手渡しであるかのように受け取ることができる。
【００５１】
つまり、作業支援ロボットシステム１０は、次のような一連の作業を繰り返す。即ち、計測部１２がセンサの出力データを作業進行状況推定部１３に入力すると、作業進行状況推定部１３が作業工程の遷移の有無を判断する。遷移ありの場合にはアーム運動計画部１４にその情報が出力され次の作業において必要となる部品をロボットアーム１１に搬送する。この一連の繰り返し途中において、入力部１６に作業者の入力があると、その旨が上位動作計画部１８に入力されるので、アーム運動計画部１４が強制的に作業者の意図に沿ってロボットアーム１１を制御する。さらには、この一連の繰り返し途中において、安全保障部１７からロボットアーム１１の動きを回避すべきような入力が緊急動作制御部１９にあると、この一連の繰り返しを中断してロボットアーム１１の回避動作を行う。これにより、作業支援をより適切に行うことができる。
【００５２】
以上の説明では図１に示す搬送機構１１Ａが特にロボットアーム１１であり、運動計画部１４Ａがアーム運動計画部１４である場合について特に記述している。しかし、搬送機構１１Ａは、作業者に工具、部品の何れか又は双方の物品を搬送するものであれば一又は複数の関節を有するアームだけでなく、１自由度のアームでも、直動テーブルでも、直接床面を走行する移動台車でもよい。これに対応して、運動計画部１４Ａは、アーム運動計画部１４に限定されず、作業進行状況推定部１３が推定した作業進行状況と選択したものとに応じて搬送機構１１Ａの運動を計画して搬送機構を制御するものであれば何でもよい。その他の構成とそれによる作用効果、作業支援方法については同様であるので、説明を省略する。
【００５３】
また、図２のシステム構成では、図３及び図４に示すように、計測部が上下に分離して配置される複数のレーザ式測域センサを前提としているが、作業者の位置を計測することができれば、その他のセンサであってもよい。一例としては、感圧センサを床面に隙間なく埋め込む。例えば、床面に座標を設定し、複数の感圧センサを座標の格子状に埋め込んでおく。これにより、複数の感圧センサのうち感知したセンサの位置から前述の方法によりクラスタリングすることで作業者の位置を特定できる。作業領域内の床に何かが置かれている場合、他の作業者が侵入することがある場合などは、クラスタリングを行うことで作業者の特定をする方が、作業者の位置をより正確に把握することができる。別例としては、レーザ光照射部とレーザ光受光部とのペアを、作業現場の天井に格子状に設けておく。レーザ光照射部から床面にレーザ光を照射し、レーザ光受光部でレーザ光の床面からの反射を受光した場合には、そのペアの直下には作業者が存在せず、逆にレーザ光受光部でレーザ光の床面からの反射を受光していない場合にはそのペアの直下に作業者が存在することになる。よって、レーザ光照射部とレーザ光受光部とのペアを天井に格子状に配置しておくことで、作業者の存在位置を特定することができる。この場合も作業領域内に何かが置かれている場合、他の作業者が侵入することがある場合などは、クラスタリングを行うことで作業者の特定をする方が、作業者の位置をより正確に把握することができる。
【００５４】
図１及び図２に示すシステム構成においては、作業者の位置から作業進度が推定されるため、予め決められた作業手順に沿って作業者が動かなければ作業進度が推定されない。また、実際、作業者毎に癖があるため、僅かではあるがタイミングのずれが生じる。そこで、この点を改良したシステムとして、第２の実施形態を説明する。
【００５５】
〔第２の実施形態〕
図７は本発明の第２の実施形態に係る作業支援ロボットシステム４０の構成図である。図１に示すシステム構成に対して、作業手順データ蓄積部２２及び作業進行状況推定部１３、アーム運動計画部１４及びそれらに関連する各部が次のように変更されている。なお、図７においても、図１に示す入力部１６、安全保障部１７、上位動作計画部１８、緊急動作制御部１９及びインピーダンス制御部２０に対応する入力部５０、安全保障部５１、上位動作計画部５３、緊急動作制御部５２及びインピーダンス制御部５４を備え、それにより、ロボットアーム及び補給部を備えるロボット４１を強制的に制御することも可能なようにしてもよい。
【００５６】
本発明の第２の実施形態に係る作業支援ロボットシステム４０は、図１におけるロボットアーム１１及び補給部１５に対応するロボット４１と、図１及び図２の計測部１２に相当する計測部４２と、作業者位置特定部４３と、作業進度推定部４４と、後述する各種の確率を算出して格納する計算処理兼データベース部４５と、供給位置決定部４６と、供給タイミング決定部４７と、供給軌道計算部４８と、供給時刻実時間修正部４９Ａと、供給位置調整部４９Ｂと、供給時刻調整部４９Ｃと、を備えている。なお、第２の実施形態は図７に示すものだけに限らず種々変更することができる。例えば図８に示す第２の実施形態の変形例のように、作業者位置特定部４３のほかに作業状況特定部５５を設けてもよい。図８に示す作業支援ロボットシステム４０Ａでは、作業者位置特定部４３と作業状況特定部５５とで作業者位置及び作業状況特定部５６として構成されている。
【００５７】
ロボット４１は、前述と同様、ロボットアームと、ロボットアームの先端に取り付けられたトレー上に部品を供給するための補給部と、を備えている。ここで、ロボット４１の代わりに、部品や工具などの物品を搬送する搬送機構と補給部とを備える機構であってもよい。
【００５８】
計測部４２は、作業者の位置を特定するために複数のレーザ式測域センサを有している。図１に示す形態と同様、二つのセンサ、即ちＬＲＦ（Laser Range Finder）が縦に並べて配置されており、ＬＲＦでそれぞれ作業者の腰と両脚の高さの計測が行なわれる。
【００５９】
作業者位置特定部４３は、計測部４２から入力されたデータをクラスタリングして作業者の位置を特定するものである。図１や図２に示す形態と同様、計測部４２で計測されたデータに対してNearest Neighbor法などを適用し、クラスタリングを行い、作業者クラスタを特定して作業者の位置（ｘｗ、ｙｗ）を求める。
【００６０】
計算処理兼データベース部４５は、作業者位置特定部４３から入力された作業者の位置（ｘｗ、ｙｗ）に応じて、位置に対する作業者の存在率Ｅｎ，ｉ，ｊと、時間に対する作業の実行率Ｉｎ，ｔと、位置に対する作業の実行率Ｒｎ，ｉ，ｊと、をそれぞれ求めて蓄積し絶えず更新するとともに逐次出力する。３つの確率分布のデータは、第一、第二及び第三計算処理部４５Ａ，４５Ｂ，４５Ｃにそれぞれ格納される。
【００６１】
第一計算処理部４５Ａには、「位置に対する作業者の存在率」の確率分布のデータが算出されて格納されている。この確率分布の計算手法は次の通りである。図９に示すように、例えば一定の幅のメッシュで表され、かつ車両（一般には「作業対象物」）を基準に設定されている座標系において、セル毎に作業者が観測された度数を求め、これを各作業におけるデータの総数で割ることにより、各作業ｎにおいて作業者がその位置（ｉ，ｊ）で作業を行っている割合、すなわち、作業ｎにおける位置（ｉ，ｊ）に対する作業者の存在率Ｅｎ，ｉ，ｊが求まる。つまり、Ｅｎ，ｉ，ｊは、作業番号ｎが与えられたときにその作業をしている作業者がどの点にいる可能性が高いかを示している。Ｅｎ，ｉ，ｊは式（１）から求められる。
【数１】
0005574203.tif 000002
ここで、Ｃｍ，ｎ，ｉ，ｊはｍ台目の車両において（ｉ，ｊ）番地で計測されたｎ番目の作業データ点の数であり、
0005574203.tif 000003
はｍ台目の車両において作業者がｎ番目の作業を行っている位置データの総数であり、Ｍは計測した車両の台数である。ただし、式（１）では作業者が存在する可能性のある領域全体を２００×３６０のメッシュで区切っている。従って、ｉの最大値はｘ軸方向のメッシュの数（式中では２００）であり、ｊの最大値はｙ軸方向のメッシュの数（式中では３６０）である。
【００６２】
第一計算処理部４５Ａは上記の確率分布として、Ｅｎ，ｉ，ｊを全ての作業及び全ての位置について求めて格納する。ある作業が与えられたならば、その作業を行う際に、作業者が存在する可能性の最も高い位置を統計的に求めることができる。
【００６３】
供給位置決定部４６は、第一計算処理部４５Ａから入力された、位置に対する作業者の存在率に基づいて供給位置を決定する。Ｅｎ，ｉ，ｊが最も高い位置（ｉ，ｊ）は、各作業についてその作業を行っている作業者が最も存在する可能性が高い位置であるので、この位置の座標を供給位置（ｘｎ、ｙｎ）として出力する。
【００６４】
供給位置調整部４９Ｂは、供給位置決定部４６と供給軌道計算部４８との間に設けられ、第一計算処理部４５Ａから出力された、位置に対する作業者の存在率から求めた供給位置（ｘｎ、ｙｎ）にオフセット量（Δｘｎ，Δｙｎ）を加減して供給軌道計算部４８に出力する。図１０は、供給位置決定部４６及び供給位置調整部４９Ｂにおける機能を説明する図である。縦横の各軸は車両を基準に設定されている座標系のＸｃ、Ｙｃであり、濃淡がＥｎ，ｉ，ｊの高低を示し、丸プロットが工具・部品供給点を示し、矢印がオフセット量を示している。供給位置決定部４６は、当該作業を行う際、作業者が存在する可能性が最も高い位置を（ｘｎ，ｙｎ）として求める。この求めた値（ｘｎ、ｙｎ）は供給位置調整部４９Ｂに入力される。そこで、供給位置調整部４９Ｂは、その座標に作業者の体の大きさ分だけ任意のオフセット、即ち供給位置オフセット（Δｘｎ，Δｙｎ）を加えた座標を供給位置とする。このオフセットは作業者の好みなどに応じ適宜調整してもよい。
【００６５】
ここで、ある作業（例えば作業Ａと作業Ｅ）については存在率が高い位置が複数存在するような場合、存在率の高い複数の位置の中から先に作業をする位置を選択して、供給位置オフセットを加えた位置を供給位置とする。また、この供給位置は車両に設定されている座標系における作業位置であるため、ロボット座標系に変換し、ロボット４１への手先の目標位置とする。
【００６６】
第二計算処理部４５Ｂには、「時間に対する作業の実行率」の確率分布が求められて格納されている。この確率分布の算出手法は以下の通りである。ある時間に作業ｎを行っている度数を、計測した車両の台数で割ることで、各時刻ｔに作業者がどの作業ｎを行っているかの割合、すなわち、作業ｎにおける時刻ｔに対する作業の実行率Ｉｎ，ｔを求めることができる。このＩｎ，ｔは、時刻ｔが与えられたとき、その時刻ｔにどの作業を行っている可能性が高いかを示し、次式（２）で求められる。
【数２】
0005574203.tif 000004
ここで、Ｗｎ，ｔは時刻ｔにおいてｎ番目の作業が行われた回数であり、Ｍは計測した車両台数、即ち、開始後に作業がなされた作業対象物の数である。時刻ｔはタクトタイムが開始される度にゼロにリセットされる。第二計算処理部４５Ｂは、工場の車両搬送コンベヤからの情報を通信により得るなどの方法で、タクトタイムが開始される度にリセットされた時刻情報を得ることができる。ここで、第二計算処理部４５Ｂは時間に対する作業の実行率を毎回更新しなくてもよく、蓄積したデータから計算された時間に対する作業の実行率を供給タイミング決定部４７に出力してもよい。
【００６７】
供給タイミング決定部４７は、第二計算処理部４５Ｂから入力された、時間に対する作業の実行率に基づいて供給タイミングｔｎを求める。第二計算処理部４５Ｂから出力された、時間に対する作業の実行率Ｉｎ、ｔに基づいて、ある時刻において一番度数の高い作業を作業者が行っているものとすると、ある作業から次の作業へと作業が切り替わる時刻が分かるので、次の作業の供給タイミングｔｎが求まる。
【００６８】
供給時刻調整部４９Ｃは、供給タイミング決定部４７と供給時刻実時間修正部４９Ａとの間に設けられ、時間に対する作業の実行率から求めた供給タイミング、即ち供給時刻ｔｎにオフセット量Δｔｎを加えて供給時刻実時間修正部４９Ａに出力する。ここで、上記供給タイミングは、第二計算処理部４５Ｂから出力される。
【００６９】
図１１は供給タイミング決定部４７及び供給時刻調整部４９Ｃの機能を説明するための図である。図１１において、横軸が時刻（Time）、縦軸が繰り返し頻度（Frequency）である。図１１のようにタクト時間を１００％に規格化したときの時刻から、何番目の作業が行われているかを判別することができる。作業が切り替わる時刻は、統計的に作業が切り替わる可能性の高い時刻であると仮定して、この時刻をそのまま供給タイミングｔｎとして設定すると、供給が遅れる場合も存在し得る。そのため、供給時刻調整部４９Ｃにおいて、供給タイミングｔｎはこの時刻に任意の調整時間である前倒し時間Δｔｎを加えて求める。なお、前倒し時間Δｔｎは必ず負の値をとる。作業者が実際に作業に取り掛かる時刻と比べて実際の供給時刻が必ず若干早くなるようにオフセットが設定されていれば、作業者の好みなどに応じてオフセット量を任意に設定してもよい。なお、作業が実行されている度数が少しでも発生した時刻を供給時刻とすることも考えられる。しかし、これでは、何らかのイレギュラーな理由のため、早すぎる時刻に作業が実行されている度数が一度でも発生すると、このデータのみによって供給時刻が決まってしまうので、好ましくない。一方、時間に対する作業の実行率の最も高い時刻に前倒し時間Δｔｎ（＜０）を加えて供給時刻としてもよい。
【００７０】
第三計算処理部４５Ｃには、「位置に対する作業の実行率」の確率分布が求められて格納されている。この確率分布の算出手法は次の通りである。ある一定の幅の刻みのメッシュでセルに分割された車両座標系において、各作業に対し、セル毎に作業者が計測された度数を当該セルにおけるデータの総数で割る。これにより、作業者がその場所に存在するとき各作業を行っている可能性の割合、すなわち、位置に対する作業の実行率Ｒｎ，ｉ，ｊが求まる。このＲｎ，ｉ，ｊは、作業者の位置（ｉ，ｊ）が与えられたときにその位置にいる作業者がどの作業を行っている可能性が高いかを示しており、式（３）により求められる。
【数３】
0005574203.tif 000005
ここで、Ｂｍ，ｎ，ｉ，ｊは、ｌ（エル）台目に（ｉ，ｊ）番地において計測されたデータ点の数であり、Ｌはその番地で作業者が作業した車両の台数である。ｎは作業番号である。
【００７１】
図１２は位置に対する作業の実行率について模式的に描いたものであり、（Ａ）〜（Ｂ）は順に各作業の位置に対する実行率を示す図である。各図の縦軸、横軸は車両からの座標系Ｘｃ、Ｙｃである。濃淡は頻度を示している。図１３は、図１２に示す位置に対する作業の実行率について、位置に対する実行率が最も高い作業を車両からの座標系Ｘｃ、Ｙｃで示す図である。図１２から、各位置で行われている可能性の最も高い作業を統計的に求めることができる。
【００７２】
作業進度推定部４４は、第三計算処理部４５Ｃから入力された、位置に対する作業の実行率と、作業者位置特定部４３から入力された作業者の位置と、から現在行われている作業を推定して供給時刻の修正量を求める。作業進度推定部４４は、実際の作業者の位置に関して実時間で計測した位置から、その時に作業者が最も行っている確率の高い作業を推定し、供給時刻以前に作業者が次の作業に進んでいるか否かを判断する。作業者が次の作業に進んでいる場合には即時に次の工具や部品を供給するよう供給時刻修正量を出力する。
【００７３】
供給時刻実時間修正部４９Ａは、供給タイミング決定部４７で求めた供給タイミングと、作業進度推定部４４で求めた供給時刻の修正量とを加えることで供給時刻を求める。
【００７４】
供給軌道計算部４８は、供給位置決定部４６で決定された供給位置に基づいてロボットアームの軌道計算を行う。具体的には、供給軌道計算部４８は、供給位置決定部４６から入力された供給位置（ｘｎ，ｙｎ）に供給位置オフセット（Δｘｎ,Δｙｎ）を足した値と、ロボットアームに対し部品や工具を補給する位置について予め設定された値と、に基づいてロボットアームの先端の空間軌道を求める。
【００７５】
ロボット４１は、供給軌道計算部４８で決定されたロボットアームの先端の空間軌道と、供給タイミング決定部４７及び供給時刻調整部４９Ｃを経由して供給時刻実時間修正部４９Ａから入力された供給時刻Ｔｎ（＝ｔｎ＋Δｔｎ＋Δｔｕ）と、さらにロボットアームに対し部品・工具を補給するタイミングについて予め設定された値と、に基づいてロボットアームの先端の時間軌道を求め、その通りにロボットアームを制御し、運動する。
【００７６】
なお、制御対象がロボットアームではなく搬送手段である場合には、供給軌道計算部４８は、供給位置決定部４６で決定された供給位置に基づいて搬送手段の軌道計算を行う。具体的には、供給軌道計算部４９Ａは、供給位置決定部４６から入力された供給位置に供給位置オフセットを足した値と、搬送手段に対し部品や工具を補給する位置について予め設定された値と、に基づいて搬送手段の先端の空間軌道を求める。ここで、各作業における供給位置がほぼ一直線上に並んでいる場合には、１自由度の直動テーブルなどを搬送手段として用いることができる。
【００７７】
ロボット４１は、供給軌道計算部４８で決定された搬送手段の先端の空間軌道と、供給タイミング決定部４７及び供給時刻調整部４９Ｃを経由して供給時刻実時間修正部４９Ａから入力された供給時刻Ｔｎ（＝ｔｎ＋Δｔｎ＋Δｔｕ）と、さらに搬送手段に対し部品・工具を補給するタイミングについて予め設定された値と、に基づいて搬送手段の先端の時間軌道を求め、その通りに搬送手段を制御し、運動する。
【００７８】
ここで、図７，図８に示す入力部５０の一部として、作業者２が現在行っている作業状況について意図的に入力するためのマイクロスイッチなどの入力ボタンが設けられてもよく、図８に示す計測部４２として各種センサがロボットアームの先端側のトレー、工具ホルダに設けられていてもよい。上記各種センサとしては、マイクロスイッチや赤外線センサを用いることができる。このように構成された入力部５０や計測部４２により、作業者の作業状況に関する情報が、作業位置及び作業状況特定部５６のうち作業状況特定部５５に入力されると、作業状況特定部５５は入力された情報に基づいて何番目の作業であるかといった作業状況を特定する。作業状況特定部５５には，作業状況を特定するために必要な作業手順データに基づく情報が格納されている。作業状況特定部５５は作業状況を特定すると、第二計算処理部４５Ｂに入力するので、第二計算処理部４５Ｂは、時間に対する作業の実行率を計算して更新する。第二計算処理部４５Ｂはこのような手法により時間に対する作業の実行率を計算するだけでなく、後述するように、様々な手法により、時間に対する作業の実行率を計算してもよい。
【００７９】
本発明の第２の実施形態に係る作業支援ロボットシステム４０，４０Ａの制御手順について説明する。第１ステップとして、作業者位置特定部４３において、計測部４２における測域センサから入力された計測データに基づいて、作業者の位置を特定する。この特定の仕方については第１の実施形態と同様である。
【００８０】
第２ステップとして、計算処理兼データベース部４５において、作業者の位置を統計処理する。これにより、３種類、すなわち、第１に位置に対する作業者の存在率Ｅｎ，ｉ，ｊ、第２に時間に対する作業の実行率Ｉｎ，ｔ、第３に位置に対する作業の実行率Ｒｎ，ｉ，ｊの度数分布を求める。その際、例えばロボットアームの先端部に切り替えボタン、レバー、近接センサなどの入力部５０を設けておき（図７、図８参照）、作業者２が今の作業を終了して次の作業に移行する場合にその入力部５０に対し次の作業に移る旨の簡単な入力を行う。この入力により、第一計算処理部４５Ａ、第二計算処理部４５Ｂ及び第三計算処理部４５Ｃはそれぞれ、位置に対する作業者の存在率Ｅｎ，ｉ，ｊ、時間に対する作業の実行率Ｉｎ，ｔ、位置に対する作業の実行率Ｒｎ，ｉ，ｊに関して当該作業の各確率分布が更新されて、それぞれ、供給位置決定部４６、供給タイミング決定部４７及び作業進度推定部４４に出力されることができる。つまり、図７や図８においてロボットアームの先端部に取り付けた切り替えボタンなどの入力部５０により、「現在作業者が何番目の作業を行っているか」を作業者２が入力する。
【００８１】
ここで、作業者２が現在行っている作業状況については、図７に示す入力部５０のように作業者が意図的に入力するためのものに限らない。図８に示すように計測部４２として、ロボットアームの先端側のトレー、工具ホルダにマイクロスイッチや赤外線センサなどの各種のセンサを用いてもよい。このようなセンサを用いて、作業者が部品を取ったかどうか、工具を取ったかどうか、返したかどうかを検出し、これにより次の作業に移る旨の入力と判断されてもよい。つまり、第２の実施形態に係る作業支援ロボット４０，４０Ａでは、計測部４２や入力部５０にはそれぞれ作業者の作業状況を特定するためのセンサや入力部を備えており、第一計算処理部４５Ａ、第三計算処理部４５Ｃに作業者位置特定部４３から作業者の位置（Ｘｗ，Ｙｗ）と入力部５０、計測部４２の何れか又は双方から作業者の作業状況に関する情報が入力される。これにより、第一計算処理部４５Ａは位置に対する作業者の存在率を計算して更新し、第三計算処理部４５Ｃは位置に対する作業の実行率を計算して更新する。第二計算処理部４５Ｂに入力部５０、計測部４２の何れか又は双方から作業者の作業状況に関する情報が入力されるので、第二計算処理部４５Ｂは時間に対する作業の実行率を計算して更新する。つまり、第一乃至第三の計算処理部４５Ａ，４５Ｂ，４５Ｃはそれぞれ格納している各確率分布を更新可能となる。第二計算処理部４５Ｂは所定の時間間隔で、時間に対する作業の実行率Ｉｎ，ｔを供給タイミング決定部４７に出力する。第一計算処理部４５Ａは、所定の時間間隔、例えば作業者位置特定部４３から作業者の位置（Ｘｗ，Ｙｗ）が入力される毎に、位置に対する作業者の存在率Ｅｎ，ｉ，ｊを作業者の位置（Ｘｗ，Ｙｗ）に応じて供給位置決定部４６に出力する。第三計算処理部４５Ｃは所定の時間間隔で位置に対する作業の実行率Ｒｎ，ｉ，ｊを作業者の位置（Ｘｗ，Ｙｗ）に応じて、作業進度推定部４４に出力する。
【００８２】
なお、統計データの信頼度が十分高くなり、計算処理兼データベース部４５におけるデータベースを毎回更新する必要がないと判断できる場合は、入力部５０に対して作業者からの入力を用いる必要がない。この場合、作業者の訓練などで計算処理兼データベース部４５におけるデータベースの更新がごくたまに必要となる場合には、次の作業に移る旨の入力を工程管理者など作業者とは別の人間が作業状況を観察しながら入力部５０への入力を代行してもよい。
【００８３】
第３ステップとして、供給位置決定部４６において、第一計算処理部４５Ａから入力された位置に対する作業者の存在率Ｅｎ，ｉ，ｊから部品及び工具の供給位置を決定する。また、供給タイミング決定部４７において、第二計算処理部４５Ｂから入力された時間に対する作業の実行率Ｉｎ，ｔから部品及び工具の供給時刻を計算する。
【００８４】
第４ステップとして、実時間で計測した作業者の位置（ｘｗ，ｙｗ）と、第三計算処理部４５Ｃから入力された位置に対する作業の実行率Ｒｎ，ｉ,ｊとから作業進度を推定し、作業の進み具合に合わせて供給時刻ｔｎを修正する。ここで、作業の実行率Ｒｎ，ｉ,ｊから判断される作業進度に基づく供給時刻の修正のみでなく、入力部５０に対し作業者が次の作業に移る旨を入力したことを検知して直ちに供給時刻を修正することを併用してもよい。
【００８５】
第５ステップとして、供給軌道計算部４８は、部品及び工具の供給位置からアームの空間軌道を計算してロボット４１に出力し、ロボット４１は空間軌道と供給時刻からアームの時間軌道を求めて出力する。
【００８６】
本発明の第２の実施形態におけるシステムの設計コンセプトは、計測部４２においてセンサから取得した作業者の位置とその取得の際の作業内容との関係を計算処理兼データベース部４５として統計的に記述して記憶更新し、計算処理兼データベース部４５に基づいて作業支援動作を生成することにある。具体的には、一つ目のコンセプトは、作業者の運動の計測結果を蓄積し、作業者の運動と作業内容との関係を確率的に記述し、それに基づいて工具や部品の供給点を決定する点である。二つ目のコンセプトは、作業者の運動の計測結果を蓄積し、作業者の運動と作業内容との関係を確率的に記述し、それに基づいて、工具や部品の供給タイミングを決定する点である。三つ目のコンセプトは、作業者の運動の計測結果を蓄積し、作業者の運動と作業内容との関係を確率的に記述し、これと実時間で計測した作業者の位置に基づいて工具や部品の供給時刻を実時間で修正する点である。
【００８７】
よって、本発明の第２の実施形態においては、得られた作業者の位置の時系列データを統計的に解析することで作業に実際にかかっている時間や作業者の移動経路、さらには作業者の癖を把握して、作業状況を統計的に処理することが可能となる。
【００８８】
本発明の第２の実施形態に係る作業支援ロボットシステム４０，４０Ａによれば、作業者の動きに合わせてスムーズに部品や工具を供給することができ、作業効率が高まる。
【００８９】
本発明の実施形態は前述したシステム構成、特に図７や図８に示すものに限定されることなく、例えば、第一計算処理部４５Ａ、第二計算処理部４５Ｂ、第三計算処理部４５Ｃを個別に各計算処理兼データベース部として構成してもよい。第一計算処理部４５Ａと供給位置決定部４６と供給軌道計算部４８とそれに必要となる各部でシステムを構成するとか、第二計算処理部４５Ｂと供給タイミング決定部４７とそれに必要となる各部でシステムを構成するとか、図７や図８に示す各部の構成をすべて備えることなく、適宜取捨選択してシステムを構成してもよい。
【符号の説明】
【００９０】
１：車体
２：作業者
１０，１０Ａ，４０，４０Ａ：作業支援ロボットシステム
１１：ロボットアーム
１１Ａ：搬送手段
３１：テーブル
１１Ａ，１１Ｂ，１１Ｃ：関節部
１１Ｄ，１１Ｅ：アーム
１１Ｆ：工具取付用アタッチメント
１１Ｇ：トレー
１２：計測部
１２Ａ，１２Ｂ：センサ
１３：作業進行状況推定部
１４：アーム運動計画部
１５：補給部
１６，５０：入力部
１７，５１：安全保障部
１８，５３：上位動作計画部
１９，５２：緊急動作制御部
２０，５４：インピーダンス制御部
２１：統合制御部
２２：作業手順データ蓄積部
３０：筐体
３１：テーブル
３２：排出口
３３：工具設置用ボックス
３４：工具
３５：部品
４１：ロボット
４２：計測部
４３：作業者位置特定部
４４：作業進度推定部
４５：計算処理兼データベース部
４５Ａ：第一計算処理部
４５Ｂ：第二計算処理部
４５Ｃ：第三計算処理部
４６：供給位置決定部
４７：供給タイミング決定部
４８：供給軌道計算部
４９Ａ：供給時刻実時間修正部
４９Ｂ：供給位置調整部
４９Ｃ：供給時刻調整部
５５：作業状況特定部
５６：作業者位置及び作業状況特定部
【図１】
0005574203.tif 000006
【図２】
0005574203.tif 000007
【図３】
0005574203.tif 000008
【図４】
0005574203.tif 000009
【図５】
0005574203.tif 000010
【図６】
0005574203.tif 000011
【図７】
0005574203.tif 000012
【図８】
0005574203.tif 000013
【図９】
0005574203.tif 000014
【図１０】
0005574203.tif 000015
【図１１】
0005574203.tif 000016
【図１２】
0005574203.tif 000017
【図１３】
0005574203.tif 000018