[第1実施形態]
以下、本発明に係る作業分析装置及び作業分析プログラムを具現化した第1実施形態について、図面を参照して説明する。
本実施形態に係る作業分析装置10は、図1に例示するように、作業台1等に設けられており、複数の単位作業が所定の順番で行われる所定の作業が作業者Mにより繰り返しなされる作業動画を撮像し、正しい作業が行われているか否かを単位作業ごとに判定するための判定用データ(アノテーションデータ)を、作業動画に基づいて生成する装置として構成されている。すなわち、所定の作業が繰り返される作業動画を単位作業ごとに区切るための区切情報を設定するようにして判定用データを生成する。このため、判定用データから各単位作業を撮像した動画範囲をそれぞれ多数抽出することができる。
組み付け作業が行われる作業台1には、プリント基板などの被組付部材(以下、単に、ワークWともいう)が搬送されて配置される。この作業台1の棚2には、複数の部品箱30が作業者Mから見て左右に並ぶように配置されており、各部品箱30には、ワークWに組み付けるための複数種類の部品20がそれぞれ個別に貯留されている。本実施形態では、図2からわかるように、棚2上に4つの部品箱30a〜30dが並んで配置され、部品箱30aに部品20aが収容され、部品箱30bに部品20bが収容され、部品箱30cに部品20cが収容され、部品箱30dに部品20dが収容されている。なお、図2では、後述する撮像部13により撮像される画像のうち部品箱30a〜30dの近傍を拡大して示している。
作業分析装置10は、図1及び図3に示すように、制御部11、記憶部12、撮像部13、表示部14、発光部15、スピーカ16、操作部17、通信部18などを備えている。制御部11は、マイコンを主体として構成されて、作業分析装置10の全体的制御や各種演算を行うものであり、例えば後述する作業分析処理を実行するように機能する。記憶部12は、ROM、RAM、HDD、不揮発性メモリなどの公知の記憶媒体によって構成されており、作業分析処理を実行するためのアプリケーションプログラム(以下、作業分析プログラムともいう)や所定のデータベース等が、制御部11により利用可能に予め格納されている。
撮像部13は、受光センサ(例えば、C−MOSエリアセンサ、CCDエリアセンサ等)を備えたカメラとして構成されている。本実施形態では、撮像部13は、制御部11や表示部14等を備えた装置本体10aとは別体として構成されており、作業者Mの作業状態に加えて各部品箱30a〜30d及びワークWの状態を動画で撮像するように、作業台1の上部に配置されている。本実施形態では、撮像部13は、例えば、30フレーム/秒で動画(連続静止画)を撮像し、撮像した動画が制御部11によって分析可能に記憶部12に記憶されるように構成されている。
表示部14は、例えば、液晶ディスプレイであって、制御部11により制御されて、撮像部13により撮像された撮像画像や所定の情報等が表示されるように構成されている。この表示部14の表示画面が作業者Mによって視認されるように、装置本体10aが作業台1の背板等に取り付けられている。
発光部15は、例えば、LEDであって、制御部11により制御されて、発光色や点灯・点滅状態が制御されるように構成され、作業者Mによって視認容易な位置に配置されている。スピーカ16は、公知のスピーカ等によって構成されており、制御部11により制御されて、予め設定された音声やアラーム音等の各種通知音を放音するように構成されている。
操作部17は、入力操作に応じた操作信号を制御部11に対して出力する構成をなしており、制御部11は、この操作信号を受けて入力操作に応じた処理を行うようになっている。通信部18は、上位機器等の外部装置との間でデータ通信を行うための通信インタフェースとして構成されており、制御部11と協働して通信処理を行うように構成されている。
次に、作業者Mにより、所定の作業手順に従って、複数の部品箱に収容された部品を個々にワークWに組み付ける所定の作業が行われる際に、制御部11にてよって実行される作業分析プログラムに基づいてなされる作業分析処理について説明する。
本実施形態では、分析対象の所定の作業として、ワークWに対して、1番目に部品箱30aの部品20aを組み付ける単位作業A、2番目に部品箱30bの部品20bを組み付ける単位作業B、3番目に部品箱30cの部品20cを組み付ける単位作業C、4番目に部品箱30dの部品20dを組み付ける単位作業Dの順番で行う作業が採用されている。
そして、作業分析処理では、単位作業ごとに予め設定される所定の動作(以下、区切動作ともいう)に基づいて、撮像部13により撮像された作業動画を区切動作の検出タイミングで単位作業ごとに区切るための区切情報が設定されるように上記判定用データが生成される。本実施形態では、撮像部13による撮像範囲のうち部品箱30aに相当する範囲が監視領域P1aとして予め設定されており、図4(A)に示すように、監視領域P1aに作業者Mの手が入り込む動作が単位作業Aに関して上記区切動作として設定されている。同様に、撮像部13による撮像範囲のうち部品箱30b〜30dに相当する範囲がそれぞれ監視領域P1b〜P1dとして予め設定されている。そして、図4(B)に示すように、監視領域P1bに作業者Mの手が入り込む動作が単位作業Bに関して上記区切動作として設定されている。また、図5(A)に示すように、監視領域P1cに作業者Mの手が入り込む動作が単位作業Cに関して上記区切動作として設定されている。また、図5(B)に示すように、監視領域P1dに作業者Mの手が入り込む動作が単位作業Dに関して上記区切動作として設定されている。なお、図4及び図5では、撮像部13による撮像範囲のうち各部品箱30a〜30dに相当する範囲を拡大して図示している。
なお、各監視領域P1a〜P1dは、例えば、各部品箱30a〜30dが決められた位置に配置されることで規定範囲として設定されてもよいし、各部品箱30a〜30dを個々に搖動等させた状態を連続撮像することで生じる画像差分に基づいて設定されてもよい。
以下、制御部11にてよってなされる作業分析処理について、図6のフローチャートを参照して具体的に詳述する。
操作部17に対して所定の開始操作がなされることで、制御部11により作業分析処理が開始されると、図6のステップS101に示す撮像処理がなされ、作業者Mによる作業動画が撮像部13により撮像される状態になる。そして、この作業動画の撮影中に、上述のように設定されたいずれかの区切動作が検出されると、ステップS103の判定処理にてYesと判定される。続いて、ステップS105の区切情報設定処理にて、上記検出タイミングで作業動画を区切るための区切情報が設定される。この区切情報には、区切動作から特定される単位作業名や検出時刻に関する情報等を含めることができる。そして、所定の終了操作等がなされていない場合には(S107でNo)、再び、上記ステップS103からの処理が繰り返される。なお、上記区切情報設定処理を行う制御部11は、「設定部」の一例に相当し得る。
このような、上記ステップS103からの繰り返し処理により、単位作業ごとに区切情報が設定されて、図7に示すような作業区切の検出結果を得ることができる。例えば、図7のkサイクル目だと、時刻t1にて監視領域P1aに作業者Mの手が入り込む動作が検出されることで、この時刻t1が単位作業Aの開始タイミングに設定され、その後、時刻t2にて監視領域P1bに作業者Mの手が入り込む動作が検出されることで、この時刻t2が単位作業Bの開始タイミングであって単位作業Aの終了タイミングに設定される。同様にして、時刻t3にて監視領域P1cに作業者Mの手が入り込む動作が検出されることで、この時刻t3が単位作業Cの開始タイミングであって単位作業Bの終了タイミングに設定される。また、時刻t4にて監視領域P1dに作業者Mの手が入り込む動作が検出されることで、この時刻t4が単位作業Dの開始タイミングであって単位作業Cの終了タイミングに設定される。また、時刻t5にて監視領域P1aに作業者Mの手が入り込む動作が検出されることで、この時刻t5がk+1サイクル目の単位作業Aの開始タイミングであってkサイクル目の単位作業Dの終了タイミングに設定される。
このようにして、必要な作業動画が区切情報を設定した状態で得られることで終了操作等がなされると(S107でYes)、ステップS109に示す異常作業除外処理がなされる。この処理では、上述のように設定された区切情報に基づいて、異常作業と推定される単位作業を判定用データから除外するための処理がなされる。
具体的には、例えば、単位作業ごとに、設定された区切情報に基づいて算出された平均作業時間を基準に、正常な作業とみなされる正常作業時間範囲を算出し、作業時間が正常作業時間範囲から外れる単位作業を自動的に除外する。図7の例では、n1サイクル目の単位作業Bの作業時間が正常作業時間範囲から外れているため、このn1サイクル目の単位作業Bを判定用データからの除外対象とする。
また、例えば、設定された区切情報に基づいて、所定の順番と異なる順番で行われた単位作業の1つ前の単位作業を自動的に除外する。図7の例では、n2サイクル目の単位作業Cが単位作業Aの後になされており所定の順番と異なる順番であるため、n2サイクル目の単位作業Cの1つ前のn2サイクル目の単位作業Aを判定用データからの除外対象とする。この場合、単位作業Aの後に実際に行われた単位作業Bの区切動作が何らかの理由で検出できないために、単位作業Aとして区切られた作業動画に単位作業Bの作業動画も含まれてしまっている可能性があるため、所定の順番と異なる順番で行われた単位作業Cの1つ前の単位作業Aを判定用データからの除外対象とする。
上述のように異常作業と推定される単位作業が除外されると、ステップS111の判定用データ生成処理がなされ、残りの正常な作業とみなされる単位作業の動画と対応する区切情報とを含めるように上記判定用データ(アノテーションデータ)が生成される。このように生成された判定用データは、記憶部12に記憶され、必要に応じて通信部18を介して上位機器等に送信される。なお、異常作業と推定される単位作業に関するデータを、異常時の行動等に関して学習するためのデータとするために、異常データとして、別途、記憶部12に記憶するようにしてもよい。また、上記異常作業除外処理及び上記判定用データ生成処理を行う制御部11は、「生成部」の一例に相当し得る。
以上説明したように、本実施形態に係る作業分析装置10では、単位作業ごとに予め設定される区切動作(所定の動作)に基づいて、撮像部13により撮像された作業動画を区切動作の検出タイミングで単位作業ごとに区切るための区切情報が設定され、撮像部13により撮像された作業動画と設定された区切情報とを含めるように判定用データが生成される。
これにより、作業者Mが単位作業ごとに行う区切動作が撮像されるだけで、単位作業ごとに作業動画を自動的に区切ることができる。したがって、正しい作業が行われているか否かを判定するための判定用データを、繰り返し行われる所定の作業を撮像した作業動画に基づいてリアルタイムに生成することができる。
特に、本実施形態では、単位作業は、当該単位作業に関連付けられる部品箱30から取り出した部品20をワーク(被組付部材)Wに組み付ける作業であり、上記区切動作は、部品箱30から部品20を取り出す動作である。このように、その単位作業として必須の作業動作の検出タイミングで作業動画を区切ることができ、本来の単位作業と無関係の動作を強いることもないので、判定用データの生成に関して作業者M等の作業負担を軽減することができる。
また、上記異常作業除外処理及び判定用データ生成処理では、設定された区切情報に基づいて、単位作業ごとに正常な作業とみなされる正常作業時間範囲が算出され、作業時間が正常作業時間範囲の単位作業が判定用データとして生成される。これにより、作業時間を考慮して正常な作業とみなされる単位作業の動画を自動的に判定用データとすることができ、判定用データの信頼性を向上させることができる。その一方で、上記異常作業除外処理及び判定用データ生成処理では、作業時間が正常作業時間範囲から外れる単位作業を除外するように判定用データが生成される。これにより、正常な作業とみなされない単位作業の動画を自動的に判定用データから除外することができ、判定用データの信頼性を向上させることができる。
さらに、上記異常作業除外処理及び判定用データ生成処理では、設定された区切情報に基づいて、所定の順番と異なる順番で行われた単位作業の1つ前の単位作業が除外されるように判定用データが生成される。このようにしても、正常な作業とみなされない単位作業の動画が自動的に判定用データから除外されるため、判定用データの信頼性を向上させることができる。
[第2実施形態]
次に、第2実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第2実施形態では、上記区切動作として、部品を被組付部材の組付予定位置に移動させる動作が採用されている点が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態では、分析対象の所定の作業として、上記第1実施形態と同様に、ワークWに対して、1番目に部品箱30aの部品20aを組み付ける単位作業A、2番目に部品箱30bの部品20bを組み付ける単位作業B、3番目に部品箱30cの部品20cを組み付ける単位作業C、4番目に部品箱30dの部品20dを組み付ける単位作業Dの順番で行う作業が採用されている。
その一方で、上記第1実施形態と異なり、図8に示すように、撮像部13による撮像範囲のうちワークWに対して、部品20aを組み付ける組付予定位置に相当する範囲が監視領域P2aとして設定され、部品20bを組み付ける組付予定位置に相当する範囲が監視領域P2bとして設定され、部品20cを組み付ける組付予定位置に相当する範囲が監視領域P2cとして設定され、部品20dを組み付ける組付予定位置に相当する範囲が監視領域P2dとして設定されている。
そして、図9(A)に示すように、監視領域P2aに部品20aを移動させた動作が単位作業Aに関して上記区切動作として設定されている。また、図9(B)に示すように、監視領域P2bに部品20bを移動させた動作が単位作業Bに関して上記区切動作として設定されている。また、図10(A)に示すように、監視領域P2cに部品20cを移動させた動作が単位作業Cに関して上記区切動作として設定されている。また、図10(B)に示すように、監視領域P2dに部品20dを移動させた動作が単位作業Dに関して上記区切動作として設定されている。なお、図8〜図10では、撮像部13による撮像範囲のうちワークWに相当する範囲を拡大して図示し、図9及び図10では、便宜上、部品20をつかむ作業者Mの手の図示を省略している。
そして、本実施形態において制御部11にてなされる作業分析処理では、作業動画の撮影中に、上述のように設定されたいずれかの区切動作が検出されると(S103でYes)、この検出タイミングで作業動画を区切るための区切情報が設定され(S105)、終了操作等がなされるまで、上記ステップS103からの処理が繰り返される。このような繰り返し処理中に終了操作等がなされると(S107でYes)、異常作業と推定される単位作業が除外されるように判定用データが生成される(S109,S111)。
以上説明したように、本実施形態に係る作業分析装置10では、単位作業は、当該単位作業に関連付けられる部品20をワーク(被組付部材)Wに組み付ける作業であり、上記区切動作(所定の動作)は、部品20をワークWの組付予定位置に移動させる動作である。このようにしても、その単位作業として必須の作業動作の検出タイミングで作業動画を区切ることができ、本来の単位作業と無関係の動作を強いることもないので、判定用データの生成に関して作業者M等の作業負担を軽減することができる。
[第3実施形態]
次に、第3実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第3実施形態では、上記区切動作を検出するための処理が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態に係る作業分析装置10は、部品箱30から部品20を取り出す際の動作を上記区切動作として検出するための監視装置40を備えている。この監視装置40は、静電容量の変化を監視することで上記区切動作を検出するための装置であって、図11に示すように、センサ回路41と、6つの帯状の導体42x1〜42x6及び6つの帯状の導体42y1〜42y6と、作業台43とを備えるように構成されている。なお、図11及び後述する図12では、便宜上、作業台43を一点鎖線にて図示している。
センサ回路41は、各導体42x1〜42x6及び各導体42y1〜42y6のそれぞれの静電容量(単位:F)の変化を監視するための回路であって、制御部11により制御されてその監視結果を制御部11に出力するように構成されている。
各導体42x1〜42x6及び各導体42y1〜42y6は、図11に示すように、格子模様状に配置されており、例えば、導体42x3と導体42y3とが重なるエリアに手を近づけると、導体42x3と導体42y3との静電容量が変化し、この変化がセンサ回路41により検出される。すなわち、各導体42x1〜42x6及び各導体42y1〜42y6によって36か所の静電容量の変化を検出可能なエリア(以下、作業エリアともいう)が構成され、マトリックス状に配置される各作業エリアの静電容量の変化を監視することで、どの作業エリアに手が近づけられているかを検知することができる。なお、各導体には、重なる他の導体の静電容量の変化の影響が小さくなるように絶縁処理等が施されている。
このため、本実施形態では、各作業エリアを覆うように設けられた作業台43上に各部品箱30を配置した状態で、センサ回路41にて所定の閾値を超える静電容量の変化が検出された作業エリアに基づいて、部品箱30から部品20を取り出す動作(区切動作)やその部品箱30の位置を検出することができる。すなわち、特別な動作等を行うことなく、通常の作業動作を行うだけで、区切動作等を検出することができる。また、静電容量が変化する作業エリアの変化順等に応じて作業に使用する部品箱30の個数も検出することができる。
特に、各作業エリアと配置される部品箱30の種別等とを関連付けることで、上記区切動作を検出できるだけでなく、取り出した部品等を特定することができる。例えば、図12に示すように、作業台43上に各部品箱30a〜30dが配置されていることが関連付けられた状態で、導体42x3、42x4,42y2,42y3において他の導体よりも大きな静電容量の変化がセンサ回路41により検出されると、上記区切動作を検出できるだけでなく、部品箱30bからの部品20bの取り出しを検出することができる。
このように、本実施形態では、各導体42x1〜42x6及び各導体42y1〜42y6の静電容量の変化を監視する特徴的構成を採用することで、上記区切動作及び取り出した部品20の種別等を検出することができ、この特徴的構成は、他の実施形態等にも適用することができる。なお、上記各作業エリアは、各導体42x1〜42x6及び各導体42y1〜42y6によって構成されることに限らず、他の静電容量の変化を監視可能な部材によって構成されてもよい。例えば、各作業エリアごとに1つ静電容量の変化を監視可能な導体を配置する構成であってもよい。また、作業エリアの個数は、36個(6×6)に設定されることに限らず、部品箱30の配置状況等に応じて異なる個数に設定してもよい。また、各導体の静電容量の変化を監視することで上記区切動作等を検出する構成は、上述したように部品箱30から部品20を取り出す区切動作の検出に適用されることに限らず、例えば、部品20を被組付部材の組付予定位置に移動させる区切動作の検出に適用してもよい。
[第4実施形態]
次に、第4実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第4実施形態では、上記監視領域を設定するための処理が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態に係る作業分析装置10は、上記監視領域、すなわち、部品箱30が配置された場所を検出するための監視装置40aを備えている。この監視装置40aは、図13(A)に示すように、部品箱30が配置される予定の棚2の面に対して一列にてほぼ隙間なく等間隔で配列される複数の圧電スイッチ44を備えるように構成されている。各圧電スイッチ44は、押圧に応じた信号をそれぞれ制御部11に出力するように構成されており、制御部11は、どの圧電スイッチ44が押圧状態であるか検出することができる。
すなわち、図13(B)に示すように、各圧電スイッチ44の押圧面側によって構成される監視エリアの一部に部品箱30が配置されると、その配置された部分の圧電スイッチ44(図13(B)の符号44a参照)のみから信号が出力される。このため、制御部11により各圧電スイッチ44の押圧状態を監視することで、上記監視エリア内において部品箱30が配置された場所(監視領域)を検出することができる。なお、図13(B)では、便宜上、部品箱30を破線にて図示している。
なお、圧電スイッチ44に代えて、検知面上に部品箱の一部が接触したことを検知可能な接触スイッチなどの物理スイッチを利用することで、上記監視エリア内において部品箱が配置された場所(監視領域)を検出してもよい。
なお、不使用環境でなく使用頻度が高い環境等であれば、上述した監視装置40aに代えて、本実施形態の変形例として、図14(A)に示す監視装置40bを採用してもよい。この変形例では、各部品箱30は少なくとも裏面側が導電性を有するように構成されており、監視装置40bは、監視エリア内での導電状態の変化を検出することで、その部品箱30の配置場所(監視領域)を検出するように構成されている。このため、監視装置40bは、各部品箱30が配置される予定の面において、互いに平行に配列される複数の第1導体45と同数の第2導体46とを備えており、図14(B)に示すように、導通状態となった第1導体45及び第2導体46を検出することで、その検出された導体45,46(図14(B)の符号45a,46a参照)が占める範囲を部品箱30が配置された場所として検出することができる。なお、図14(B)では、便宜上、部品箱30を破線にて図示している。
特に、部品箱30の裏側に設けられる導電体の抵抗値を部品箱30の種別ごとに変えることで、第1導体45及び第2導体46を介した導通時に検出される抵抗値に基づいて、配置される部品箱30の種別を判別することができる。
上述した圧電スイッチ44等を利用した各監視領域を検出する本実施形態の特徴的構成や上述した第1導体45及び第2導体46等を利用した各監視領域を検出する本実施形態における変形例の特徴的構成は、他の実施形態等にも適用することができる。
[第5実施形態]
次に、第5実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第5実施形態では、上記監視領域の設定及び手の高さを考慮した区切動作の検出のための処理が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態では、上記作業分析処理が開始される前に、各監視領域を設定するため、制御部11により監視領域設定処理が実施される。この監視領域設定処理では、部品箱30の周壁の上端31をなぞった指の軌跡を撮像部13にて撮像することで、その部品箱に対応する監視領域が設定される。例えば、図15に例示するように、部品箱30cの周壁の上端31をなぞった指の軌跡を撮像部13にて撮像することで、その部品箱30cに対応する監視領域P1cが設定される。
そして、上記作業分析処理では、作業者Mの手の高さを考慮して、監視領域に作業者Mの手が入り込む区切動作を検出する。例えば、部品箱30bに収容された部品を取ろうとしている手が隣の部品箱30aの上を通過する際に、この通過中の手が部品箱30aに対応する監視領域に入り込んでいると誤認されると、区切動作が誤検出されてしまうからである。
このため、本実施形態では、撮像部13として撮像対象までの距離を測定可能なTOF(Time of Flight)カメラを採用し、図16に示すように、各部品箱30が載置される棚2の載置面2aを基準に、監視領域に入り込む手の載置面2aからの高さを測定する。そして、監視領域に入り込む手の載置面2aからの高さが所定の閾値h1を超える場合には、検出無効として区切動作と判断せず、監視領域に入り込む手の載置面2aからの高さが所定の閾値h1以下となる場合に、検出有効として区切動作の検出対象とする。なお、撮像部13と別にTOFカメラを用意して、このカメラを利用して監視領域に入り込む手の載置面2aからの高さを測定してもよい。
これにより、例えば、部品箱30bに収容された部品を取ろうとしている手が部品箱30aに対応する監視領域に入り込んでいても、その手の載置面2aからの高さが所定の閾値h1を超える場合には、検出無効となるので、区切動作の誤検出を抑制することができる。
なお、上述したように、載置面2aからの手の高さを基準に検出無効であるか否かを判断することに限らず、部品箱30の周壁の上端31からの手の高さを基準に検出無効であるか否かを判断してもよい(図16の閾値h2参照)。また、なぞった指の軌跡を利用した監視領域の設定や手の高さを基準に検出無効の可否を判断する本実施形態の特徴的構成は、他の実施形態等にも適用することができる。
[第6実施形態]
次に、第6実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第6実施形態では、重量の変化を利用して上記区切動作を検出する点が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態に係る作業分析装置10は、部品箱30から部品20を取り出す際の動作や部品20を被組付部材に組み付ける動作を上記区切動作として検出するための監視装置40cを備えている。この監視装置40cは、各部品箱30及び被組付部材の重量の変化を監視することで上記区切動作を検出するための装置であって、各部品箱30及び被組付部材の重量を測定可能な重量センサ47を備えるように構成されている。重量センサ47は、その重量測定面が各部品箱30と被組付部材とを同時に載置可能に平面状に形成されて、棚2に組み付けられている。
以下、本実施形態にてなされる作業分析処理について、図面を参照して説明する。なお、以下の説明では、図17(A)(B)に示すように、重量センサ47の重量測定面上に4つの部品箱30a〜30dと部品20a〜20dが組み付けられるワークWとが載置されて作業される場合について詳述する。なお、本実施形態では、分析対象の所定の作業として、ワークWに対して、1番目に部品箱30aの部品20aを組み付ける単位作業A、2番目に部品箱30bの部品20bを組み付ける単位作業B、3番目に部品箱30cの部品20cを組み付ける単位作業C、4番目に部品箱30dの部品20dを組み付ける単位作業Dの順番で行う作業が採用されているものとする。
部品20a〜20dを組み付けていないワークWが重量測定面上に載置された直後となる組み付け作業開始時に、重量センサ47にて測定される測定値FをFoとするとき、図17(A)に示すように、単位作業Aを開始するために部品箱30aから部品20aを取り出すと、重量センサ47での測定値がFoからFaに減少する。測定値Faは、測定値Foから部品20aの重量を除いた値になる。このため、重量センサ47にて測定される測定値がFoからFaに減少することで(図18の時刻t1参照)、部品箱30aから部品20aを取り出す区切動作を検出することができる。その後、図17(B)に示すように、部品20aをワークWに組み付けることで、重量センサ47での測定値がFaからFoに増加する。このため、重量センサ47にて測定される測定値がFaからFoに戻る(増加)することで(図18の時刻t2参照)、部品20aをワークWに組み付ける区切動作を検出することができる。その後、重量センサ47の測定値がFoからFb(測定値Foから部品20bの重量を除いた値)に減少することで(図18の時刻t3参照)、部品箱30bから部品20bを取り出す区切動作が検出され、さらに、重量センサ47の測定値がFbからFoに戻ることで(図18の時刻t4参照)、部品20bをワークWに組み付ける区切動作が検出される。その後、重量センサ47の測定値がFoからFc(測定値Foから部品20cの重量を除いた値)に減少することで(図18の時刻t5参照)、部品箱30cから部品20cを取り出す区切動作が検出され、さらに、重量センサ47の測定値がFcからFoに戻ることで(図18の時刻t6参照)、部品20cをワークWに組み付ける区切動作が検出される。その後、重量センサ47の測定値がFoからFd(測定値Foから部品20dの重量を除いた値)に減少することで(図18の時刻t7参照)、部品箱30dから部品20dを取り出す区切動作が検出され、さらに、重量センサ47の測定値がFdからFoに戻ることで(図18の時刻t8参照)、部品20dをワークWに組み付ける区切動作が検出される。
このように、本実施形態では、重量センサ47にて測定される重量の変化を利用して上記区切動作を正確に検出することができる。このため、例えば、異なる部品箱から誤って意図しない部品を取ってしまった場合でも、その部品箱に部品を戻すことで、組み付け時のような大きな重量変化も検出されないので、部品の取り間違いに起因する区切動作の誤検出を抑制することができる。さらに、組み付け途中に部品が被組付部材上に落下しても、その重量変化は組み付け時と異なるため、検出される重量変化に応じて、部品の組み付け完了と単なる部品の落下とを確実に区別することができる。
なお、重量センサ47としては、非接触型の静電容量センサや静電容量重量センサ、薄膜式圧力センサ等を採用することができる。また、監視装置40cは、1つの重量センサ47にて各部品箱30及び被組付部材の重量を測定することに限らず、2以上の重量センサ等を利用して各部品箱30及び被組付部材の重量を測定してもよい。また、重量センサにて測定される重量の変化を利用して上記区切動作を検出する本実施形態の特徴的構成は、他の実施形態等にも適用することができる。
[第7実施形態]
次に、第7実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第7実施形態では、上記監視領域を設定するための処理が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態に係る作業分析装置10では、部品箱30から部品20を取り出す際の作業者Mの手の軌跡や部品20を被組付部材に組み付ける際の作業者Mの手の軌跡を監視し、その監視結果に基づいて、上記監視領域を設定する。
具体的には、撮像部13により撮像された動画から作業者Mの手を認識して、所定の時間間隔(例えば、フレーム間隔)ごとに、撮像される手の移動方向と移動量を検出する。そして、移動量が所定値以下となる状態が所定期間以上継続すると、手が滞留している状態(以下、滞留状態ともいう)であるとして、この滞留状態時に撮像されている手を基準に仮監視領域が設定される。部品箱30から部品20を取り出す際の手の動きや部品20を被組付部材に組み付ける際の手の動きは上記滞留状態になりやすいからである。
例えば、図19に例示するように、部品20aをワークWに組み付け終えた手が部品箱30bの部品20bを取りに行く場合、部品箱30bから部品20bを取り出す際に手が上記滞留状態となるため、この滞留状態の手を基準に部品箱30b用の仮監視領域(図19の符号Po1b参照)が設定される。その後、図20に例示するように、部品20bを取り出した手がワークWの組付予定位置に向かう場合、部品20bをワークWの組付予定位置に組み付ける際に手が上記滞留状態となるため、この滞留状態の手を基準に部品20bの組付予定位置用の仮監視領域(図20の符号Po2b参照)が設定される。
なお、本実施形態では、仮監視領域は、図19の仮監視領域Po1b及び図20の仮監視領域Po2bのように、滞留状態の手が占める撮像範囲を内方する長方形領域に応じて設定されるが、これに限らず、例えば、滞留状態の手が占める撮像範囲に外接する円領域又は楕円領域や、滞留状態の手が占める撮像範囲に内接する円領域又は楕円領域に応じて設定されてもよい。
そして、各単位作業を繰り返すことで、各部品箱30用の仮監視領域及び各組付予定位置用の仮監視領域が順次蓄積されるようにして記憶部12に記憶される。その後、監視領域の推定精度の向上と監視領域の最適化を図るため、仮監視領域ごとに重複する範囲を求めて重み付けをすることで、その重み付けに応じて監視領域を設定することができる。
例えば、1つの監視領域に対して仮監視領域が100回設定された場合に、50回以上重複した領域の重みを「3」、20回以上重複した領域の重みを「2」、10回以上重複した領域の重みを「1」に設定する。そして、重みが「3」となる仮監視領域を全て含むように監視領域を設定する場合には、図21(A)に示すように監視領域(ハッチング領域参照)を設定することができる。また、重みが「2」以上となる仮監視領域を全て含むように監視領域を設定する場合には、図21(B)に示すように監視領域(ハッチング領域参照)を設定することができる。
なお、仮監視領域は、1つの監視領域に対して、前回の滞留状態の手の中心位置と今回の滞留状態の手の中心位置との中間位置を中心とする矩形状等の所定の形状の領域に基づいて設定されてもよい。また、上述した複数の仮監視領域を利用して1つの監視領域を設定する本実施形態の特徴的構成は、他の実施形態等にも適用することができる。
[第8実施形態]
次に、第8実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第8実施形態では、各部品箱にそれぞれ付されている情報コードを利用して部品箱に対応する監視領域をそれぞれ設定する処理を行うが、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態では、図22に示すように、各部品箱30に位置検出用の情報コード(以下、部品箱コードCaともいう)がそれぞれ付されており、作業分析装置10には、部品箱コードCaを撮像するための第2撮像部13aが新たに設けられている。第2撮像部13aは、監視領域設定用のカメラとして機能するもので、撮像部13と同等の機能を有し、撮像した画像が制御部11によって分析可能に記憶部12に記憶されるように構成されている。この第2撮像部13aは、撮像部13による撮像範囲内であって棚2上に配置された各部品箱30のそれぞれの部品箱コードCaを作業者Mから見て前側から撮像可能な位置に配置されている。第2撮像部13aの撮像部13側となる外面(上面)には、第2撮像部13aと撮像部13との相対位置関係を算出するための情報コード(以下、カメラコードCbともいう)が付されている。なお、本実施形態では、部品箱コードCa及びカメラコードCbは、QRコード(登録商標)として構成されているが、これに限らず、例えば、バーコード等の一次元コードや他の種別の二次元コードとして構成されてもよい。
そして、本実施形態では、上記作業分析処理が開始される前に、各監視領域を設定するため、制御部11により監視領域設定処理が実施される。この監視領域設定処理では、第2撮像部13aにて部品箱コードCaを撮像した撮像画像から第2撮像部13aを基準とする部品箱30の相対座標が算出される。そして、撮像部13にてカメラコードCbを撮像した撮像画像から撮像部13を基準とする第2撮像部13aの相対座標が算出されることで、撮像部13を基準とする部品箱30の相対座標が推定され、この推定結果に基づいて、各部品箱30の監視領域が設定される。
このため、部品箱コードCaには、付された部品箱30に収容される部品20の情報に加えて、部品箱30の高さ、横幅、奥行き等を示すサイズ(以下、箱サイズともいう)や当該部品箱コードCaの大きさや形状、セル数等を示すサイズ(以下、コードサイズともいう)、部品箱30に対する部品箱コードCaの貼り付け位置(以下、コード位置ともいう)に関する情報等が記録されている。
また、カメラコードCbには、第2撮像部13aに対するカメラコードCbの貼り付け位置やコードサイズ等、当該カメラコードCbを撮像した撮像画像から撮像部13と第2撮像部13aとの相対位置関係を算出するための情報等が記録されている。
以下、本実施形態における監視領域設定処理について、図面を参照して具体的に説明する。なお、以下の説明では、部品箱コードCaが付された部品箱30が1つ棚2上に配置される場合について詳述する。
作業分析処理を開始する前に、所定の操作に応じて制御部11により監視領域設定処理が開始されると、図23のステップS201に示す部品箱相対座標推定処理にて、第2撮像部13aを基準とする部品箱30の相対座標を推定するための処理がなされる。この処理のサブルーチンでは、まず、第2撮像部13aにより部品箱コードCaを撮像可能な状態になり(図24のS211)、撮像した部品箱コードCaを読み取るためのデコード処理がなされる(S213)。
棚2上に配置された部品箱30が配置されていることで、部品箱コードCaの読み取りに成功して(S215でYes)、箱サイズやコードサイズ、コード位置等が取得されると、ステップS217に示す読取角度算出処理がなされる。この処理では、第2撮像部13aの撮像画像に占める部品箱コードCaの範囲に基づいて、第2撮像部13aに対する部品箱コードCaの角度が読取角度αとして算出される。
例えば、図26(A)に示すように部品箱30が第2撮像部13aに対して傾いて配置されていることから、図26(B)に示す撮像画像のように部品箱コードCaが撮像されている場合には、部品箱コードCaの四隅の位置から求められる四辺の長さ比に基づいて、第2撮像部13aに対する部品箱コードCaの読取角度α(図25(A)参照)が算出される。
続いて、ステップS219に示す読取距離算出処理がなされる。この処理では、第2撮像部13aの撮像画像に占める部品箱コードCaの画素数に基づいて、第2撮像部13aから部品箱コードCaまでの距離が読取距離yとして算出される。なお、上述のように算出された読取角度αを利用して部品箱コードCaの四隅の角度が90°になるように補正した画像に基づいて、読取距離yを算出することができる。
例えば、図27に示すように撮像されている部品箱コードCaに対しては、撮像画像全体のx方向(図27の左右方向)の画素数をx1、部品箱コードCaのx方向の画素数をx2、部品箱コードCaの位置での撮像画像全体に相当するx方向の実サイズをx3、実際の部品箱コードCaのx方向の実サイズをx4、とするとき、式(1)の関係が成立する。また、部品箱コードCaの位置での撮像画像全体に相当するx方向のサイズx3と第2撮像部13aの画角及び分解能等から求められる角度θとにより、読取距離yに関して、式(2)の関係が成立する。
x1:x2=x3:x4 ・・・(1)
y=x3/2×tanθ ・・・(2)
x1,x4,θは既知であるため、式(1)(2)から求められる以下の式(3)により、部品箱コードCaのx方向の画素数x2に基づいて、読取距離yを算出することができる。
y=(x1×x4/x2)/2×tanθ ・・・(3)
上述のように読取角度α及び読取距離yが算出されると、ステップS221に示す相対座標推定処理がなされる。この処理では、まず、上述のように算出された読取角度α及び読取距離yに基づいて、第2撮像部13aを基準とする部品箱コードCaの相対座標が算出されると、この算出された部品箱コードCaの相対座標と部品箱コードCaから読み取ったコード位置、コードサイズ、箱サイズ等とに基づいて、第2撮像部13aを基準とする部品箱30の相対座標が推定される。これにより、第2撮像部13aに対して部品箱30がどのような状態で配置されているかを推定することができる。
上述のように第2撮像部13aを基準とする部品箱30の相対座標が推定されることで、ステップS201の部品箱相対座標推定処理が終了すると、ステップS203に示すカメラ相対座標推定処理にて、撮像部13を基準とする第2撮像部13aの相対座標を推定するための処理がなされる。この処理のサブルーチンでは、まず、撮像部13によりカメラコードCbを撮像可能な状態になり(図25のS231)、撮像したカメラコードCbを読み取るためのデコード処理がなされる(S233)。
そして、カメラコードCbの読み取りに成功すると(S235でYes)、ステップS237に示す読取角度算出処理がなされ、上記ステップS217の読取角度算出処理と同様の算出方法により、撮像部13に対するカメラコードCbの角度が読取角度として算出される。続いて、ステップS239に示す読取距離算出処理がなされ、上記ステップS219の読取距離算出処理と同様の算出方法により、撮像部13の撮像画像に占めるカメラコードCbの画素数に基づいて、撮像部13からカメラコードCbまでの距離が読取距離として算出される。
上述のように読取角度及び読取距離が算出されると、ステップS241に示す相対座標推定処理がなされ、上記ステップS221の相対座標推定処理と同様の算出方法により、撮像部13を基準とするカメラコードCbの相対座標が算出されると、この算出されたカメラコードCbの相対座標とカメラコードCbから読み取った読取結果とに基づいて、撮像部13を基準とする第2撮像部13aの相対座標が推定される。これにより、撮像部13に対して第2撮像部13aがどのような状態で配置されているかを推定することができる。なお、第2撮像部13aが撮像部13に対して既定の位置に配置される場合には、撮像部13を基準とする第2撮像部13aの相対座標が特定されるので、上記カメラ相対座標推定処理をなくしてもよい。
上述のように撮像部13を基準とする第2撮像部13aの相対座標が推定されることで、ステップS203のカメラ相対座標推定処理が終了すると、ステップS205に示す部品箱位置算出処理がなされる。この処理では、上述のように推定された第2撮像部13aを基準とする部品箱30の相対座標と撮像部13を基準とする第2撮像部13aの相対座標とに基づいて、撮像部13を基準とする部品箱30の位置(相対座標)が算出される。
これにより、撮像部13による撮像画像において部品箱30が占める領域を推定できるので、ステップS207に示す設定処理にて、上述のように部品箱30として推定された撮像画像の領域が監視領域として設定されて、本監視領域設定処理が終了する。なお、第2撮像部13aにて複数の部品箱コードCaがデコード可能に撮像されている場合には、部品箱コードCaごとに上述した流れで監視領域をそれぞれ設定することができる。特に、部品箱コードCaには部品20の情報も記録されているため、監視領域に対応する部品20の種別等も特定することができる。
なお、本実施形態では、部品箱コードCaは、部品箱30の第2撮像部13a側となる側面に対して、図28(A)に示すように、一方の縁近傍にてできるだけ大きなサイズとなるように付されているが、これに限らず、記録されるコード位置に一致する位置であれば、他の部位に付されてもよい。例えば、部品箱コードCaは、図28(B)に示すように、部品箱30の第2撮像部13a側となる側面の中央に付されてもよいし、図28(C)に示すように、一方の縁近傍にて比較的小さなサイズで付されてもよい。
また、部品箱コードCaが部品箱30のどの位置に付されるか特定できない場合を想定して、第2撮像部13aの撮像画像から部品箱コードCaとこの部品箱コードCaが付された部品箱30の面との相対座標を算出し、この算出結果と箱サイズ及びコードサイズとを利用して、第2撮像部13aを基準とする部品箱30の相対座標を推定してもよい。この場合、部品箱コードCaにはコード位置が記録されなくなる。
例えば、図29(A)に示すように部品箱コードCaが部品箱30に付されていることから、図29(B)に示すように部品箱コードCa及び部品箱30が撮像されている場合には、エッジサーチ等の画像処理を利用して、部品箱30の面のどの位置にてどのような傾斜状態にて部品箱コードCaが付されているかを検出するようにして、上記相対座標を算出することができる。例えば、図29(B)の太線部分を利用して示すように、部品箱30の上縁の長さ(既知)及び角度と部品箱コードCaの一辺の長さ(既知)及びその一辺の角度とを比較することで、部品箱30の面のどの位置にてどのような傾斜状態にて部品箱コードCaが付されているかを検出することができる。
また、第2撮像部13aは、棚2上に配置された各部品箱30のそれぞれの部品箱コードCaを作業者Mから見て前側から撮像可能な位置に配置されることに限らず、例えば、作業者Mから見て後側から撮像可能な位置に配置されてもよい。
また、例えば、本実施形態の第1変形例として、第2撮像部13aは、図30に示すように、それぞれの底面に部品箱コードCaを付した各部品箱30が透明な棚2上に載置されることを前提に、棚2の透明部分を介して部品箱コードCaを下側から撮像可能な位置に配置されてもよい。この場合には、例えば、第2撮像部13aの撮像範囲内にて棚2の透明部分を囲う所定の位置に情報コードCcを付し、この情報コードCcが付された棚2の位置に関する情報等を当該情報コードCcに記録することで、第2撮像部13aの撮像画像から第2撮像部13aを基準とする棚2の相対座標を推定できる。このため、他の情報コード等を利用して撮像部13を基準とする棚2の相対座標を推定することで、撮像部13を基準とする第2撮像部13aの相対座標を推定することができる。これにより、第2撮像部13aを基準とする部品箱30の相対座標と撮像部13を基準とする第2撮像部13aの相対座標とに基づいて、撮像部13を基準とする部品箱30の位置が算出されることで、撮像部13による撮像画像において部品箱30が占める領域を監視領域として設定することができる。
特に、部品箱30の底面に部品箱コードCaを付すため、部品箱30の側面等に部品箱コードCaを付す場合と比較して、部品箱コードCaを大きくできるため、部品箱コードCaの読み取りによる座標推定精度を向上させることができる。また、第2撮像部13aにて部品箱コードCaと情報コードCcとが同時に撮像されるため、部品箱コードCaと情報コードCcとの位置関係も精度良く算出することができる。また、第2撮像部13aを棚2の下側に配置できるので、第2撮像部13aを設ける場合でも作業分析装置10の省スペース化を実現することができる。また、パレットのような側面や上面に情報コードを付すスペースがない部品箱に対しても、部品箱コードCaを付すことができる。また、第2撮像部13aにて作業者Mの前側からや後側から撮像する構成では、一列に部品箱30が配置された場合にそれぞれの部品箱コードCaを撮像できるが、第2撮像部13aにて下側から撮像することで、二列以上で部品箱30が配置される場合でもそれぞれの部品箱コードCaを撮像でき、利便性を向上させることができる。また、棚2の透明部分は矩形状に形成されることに限らず、例えば、図31に示す第2変形例のように、円形状に形成されてもよい。また、図31に示すように、情報コードCcに代えて特定の位置に付されるマーカCm等を採用してもよい。なお、第2撮像部13aが棚2に対して既定の位置に配置される場合には、第2撮像部13aを基準とする棚2の相対座標が特定されるので、情報コードCcをなくしてもよい。
また、部品箱コードCaは、部品箱30の側面や底面に付されることに限らず、例えば、図32(A)に示すように、部品箱30の周壁が厚い場合には周壁の上端の四隅等に付されてもよい。また、周壁の上端に付される部品箱コードCaは、読み取り性を考慮して、一次元コードとして構成されてもよい。また、例えば、部品箱コードCaは、図32(B)に示すように上蓋部32を有する部品箱30に対して、その上蓋部32に付されてもよい。
なお、各部品箱30にそれぞれ付されている部品箱コードCa等を利用して部品箱30に対応する監視領域をそれぞれ設定する本実施形態の特徴的構成は、他の実施形態等にも適用することができる。
[第9実施形態]
次に、第9実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第9実施形態では、上記監視領域を設定するための処理が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態では、上記作業分析処理が開始される前に、各監視領域を設定するため、制御部11により監視領域設定処理が実施される。この監視領域設定処理では、部品箱30を棚2に載置する際の部品箱30の動きを検知することで、その部品箱30に対応する監視領域が設定される。具体的には、図33に示すように、部品箱30を撮像部13に近づけた後に、徐々に撮像部13から遠ざけるようにして棚2に載置することで、撮像部13の撮像画像内にて徐々に距離が変化する範囲が部品箱30に対応する監視領域として設定される。
このため、本実施形態では、撮像部13として撮像対象までの距離を測定可能なTOFカメラが採用されている。これにより、例えば、近くなるほど白く撮像され遠くなるほど黒く撮像されるTOFカメラが撮像部13として採用されていると、撮像部13に対して比較的近い位置で部品箱30を撮像している場合には、図34(A)に示す距離画像のように、部品箱30が白系の色にて撮像される。そして、この部品箱30を撮像部13から遠ざけることで、図34(B)に示す距離画像のように、部品箱30が棚2に相当する色に近くなるように黒系に変化して撮像される。なお、撮像部13と別にTOFカメラを用意して、このTOFカメラの撮像結果を利用して部品箱30に対応する監視領域を設定してもよい。
以下、本実施形態において制御部11にてなされる監視領域設定処理について、図面を参照して具体的に説明する。
作業分析処理を開始する前に、所定の操作に応じて制御部11により監視領域設定処理が開始されると、図35のステップS301に示す撮像処理がなされ、棚2に載置する際の部品箱30を撮像可能な状態になる。続いて、ステップS303に示す距離監視処理がなされ、部品箱30が載置される予定の棚2の部分の撮像範囲において、撮像部13からの距離が撮像画像に応じて測定可能な状態になる。
続いて、ステップS305の判定処理にて、撮像部13の撮像範囲において物体が移動するために距離差分が生じる領域(以下、距離差分領域ともいう)があるか否かについて判定される。ここで、部品箱30が棚2に近づけられておらず、撮像部13の撮像範囲において動きが無い場合には、ステップS305にてNoとの判定が繰り返される。
そして、作業者Mが部品箱30を撮像部13に近づける際に撮像部13の撮像範囲に入ることで、距離差分領域が生じると、ステップS305にてYesと判定されて、ステップS307の判定処理にて、距離差分領域が遠方への移動に起因するものか否かについて判定される。ここで、作業者Mが撮像部13の撮像範囲に入れた部品箱30を棚2に配置することで、撮像部13と部品箱30との距離が遠くなっている場合には、距離差分領域が黒系に変化しつつ小さくなるので、距離差分領域が遠方への移動に起因するものと判定される(S307でYes)。
この場合には、ステップS309に示す追従領域監視処理がなされ、上記距離差分領域が、部品箱30に相当するものとして動きを追従すべき追従領域として設定されて、その追従領域の変化が監視される。続いて、ステップS311の判定処理にて、上述のように設定された追従領域の変化が無くなったか否かについて判定される。ここで、作業者Mが部品箱30を棚2に載置する途中であり、部品箱30が撮像部13から離れている状態では、追従領域の変化が継続するため、ステップS311にてNoとの判定が繰り返される。
そして、作業者Mにより部品箱30が棚2に載置されると、撮像部13に対する部品箱30の距離が変わらなくなり、追従領域の変化が無くなるため、ステップS311にてYesと判定される。この場合には、ステップS313に示す設定にて、変化が無くなった追従領域が上記監視領域として設定されて、本監視領域設定処理が終了する。なお、複数の部品箱30を用いて作業を行う場合には、1つの部品箱30を棚2に載置するごとに上記監視領域設定処理を実施することで、それぞれの部品箱30に対応する監視領域を設定することができる。
このように、本実施形態では、作業者Mが部品箱30を上方から棚2に載置するという一般的な動作によって監視領域を設定できるので、監視領域設定用の装置等を用意する必要もなく、事前の設定作業や複雑な端末操作等も不要となり、監視領域を設定するために必要な作業者Mの動作を軽減することができる。そして、部品箱30を棚2に載置するタイミングで監視領域を設定することができる。特に、作業者Mが監視領域を指定することもないので、監視領域の設定ずれを抑制することができる。また、上記監視領域設定処理では、部品箱30の異なる物体が撮像部13の撮像領域内にあったとしても、その物体が遠方に移動した後に停止しない限り監視領域として設定されることもないので、監視領域の設定精度を高めることができる。また、部品箱30が画像的な変化や形状的な変化をする場合でも、追従領域設定後にその追従領域が変化しなくなることで、上記監視領域が設定されるため、様々な種別の部品箱30に対して監視領域を設定することができる。
なお、撮像部13としてTOFカメラを採用することに限らず、一般的なRGBカメラ等を採用して、この撮像画像から部品箱30が遠ざかっている状態を検出することで、上記追従領域を設定してもよい。この構成では、撮像部13から離れるほど撮像画像にて占める部品箱30の領域が小さくなることを利用して、疑似的に部品箱30が撮像部13から遠ざかる事を認識することができる。
また、上記監視領域処理は、作業者Mによる所定の操作に応じて開始されることに限らず、例えば、所定の情報コードを撮像部13にて撮像させたり、撮像部13の撮像範囲内にて作業者Mが所定のジェスチャーを行うことで、開始されてもよい。
なお、部品箱30を棚2に載置する際の部品箱30の動きを検知することで、その部品箱30に対応する監視領域を設定する本実施形態の特徴的構成は、他の実施形態等にも適用することができる。
[第10実施形態]
次に、第10実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第10実施形態では、上記監視領域を設定するための処理が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
部品箱30における各部品20の収容状態として、各部品20がきれいに整頓されて並べられている場合や各部品20が乱雑に置かれている場合等、様々な収容状態が考えられるが、基本的には同種類の部品20がまとめて入れられている。つまり、似たような集合体が部品箱30の中には各々収容されていると考えられる。
そこで、本実施形態では、部品箱30を撮像した撮像画像をブロックに分割して、それぞれのブロックの特徴量を計算し、似たような特徴量を持つブロックが集まっている部分に部品20があると判定する。ここで、上記特徴量としては、例えば、色のヒストグラムやHoG(Histgram Of Gradient)といったエッジ特徴量、周波数など様々なものを採用することができる。
例えば、図36(A)に示すように、棚2上に2つの部品箱30e,30fが配置されている場合に、これら部品箱30e,30fを撮像した撮像画像を、図36(B)に示すように、各ブロックに分割して、ブロックごとに所定の特徴量を抽出する。本実施形態では、周波数に基づく特徴量を抽出しており、例えば、図36(B)のブロックB1〜B4では、図37に示すような周波数特徴量が抽出される。
各ブロックの特徴量が抽出されると、似た特徴量を持つブロック同士にグループ分けする。このグループ分けの手法としては、例えば、k−meansやx−meansといった類似パラメータ同士をクラスタにまとめて分割する手法等を採用することができる。
そして、グルーピングされた中で、部品箱30のように矩形領域に集合しているグループがあれば、そのグルーピングされたブロックからなる範囲を部品箱30に対応する監視領域として設定することができる。
なお、ブロックごとに抽出される特徴量を利用して部品箱30に対応する監視領域をそれぞれ設定する本実施形態の特徴的構成は、他の実施形態等にも適用することができる。
[第11実施形態]
次に、第11実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第11実施形態では、上記監視領域を設定するための処理が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
通常、部品箱30は、上方が矩形状に開口する箱形状になっており、この箱形状の特徴として、周壁の上端が同じ高さとなる。そこで、本実施形態では、撮像部13としてTOFカメラを採用し、部品箱30が配置される予定のエリアに対して距離を測定する。そして、同じ高さにある領域を抽出し、その形状に応じて部品箱30に対応する監視領域を設定する。すなわち、同じ高さにある領域が四角環状として抽出されると、その四角環状となる領域が周壁となるように部品箱30が検出されて、この領域を含むように監視領域が設定される。なお、本実施形態では、各部品箱30が載置される棚2の載置面は撮像部13に対して水平に位置しているものとする。
具体的には、例えば、図38(A)に示すように2つの部品箱30e、30fが棚2上に配置されている場合、距離画像では、図38(B)に示すように、部品箱30の周壁の上端が同じ高さの四角環状領域として抽出される。
このように、距離画像での同じ高さにある領域に基づいて部品箱30に対応する監視領域を設定できるので、監視領域設定用の装置等を用意する必要もなく、事前の設定作業や複雑な端末操作等も不要となり、監視領域を設定するために必要な作業者Mの動作を軽減することができる。
なお、撮像部13と別にTOFカメラを用意して、このカメラを利用して同じ高さにある領域を抽出するようにしてもよい。また、各部品箱30が載置される棚2の載置面が撮像部13に対して傾斜している場合には、その傾斜角度を事前に計測してその傾斜角度を考慮して距離画像での高さを補正してもよい。また、距離画像での同じ高さにある領域に基づいて部品箱30に対応する監視領域を設定する本実施形態の特徴的構成は、他の実施形態等にも適用することができる。
[第12実施形態]
次に、第12実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第12実施形態では、上記監視領域を設定するための処理が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態では、各部品箱30の色に特徴を持たせることで、監視領域として撮像画像から各部品箱30が占める領域を抽出しやすくする。各部品箱30の色としては、それぞれ個別であって、棚2等の周囲の色や作業者Mの手の色等と区別容易な色を採用することができる。
例えば、部品箱30eを第1色(例えば、緑色)、部品箱30fを第2色(例えば、青色)にし、図39(A)に示すように部品箱30e,30fが撮像されている撮像画像を利用して、部品箱30fの監視領域を設定する場合には、図39(B)に示すように、撮像画像から第2色の領域を抽出する。その後、第2色の領域を抽出した画像に対して、ノイズ除去等も含め、膨張・収縮等のフィルタリング処理を行うことで、図39(C)に示すように、四角環状の領域を抽出する。これにより、抽出した四角環状の領域を含めた領域を上記監視領域として設定することができる。なお、図39では、第2色のものにのみハッチングを付して図示している。
特に、部品箱30ごとに色を区別することで、抽出された監視領域に対応する部品箱30の種別を容易に把握することができる。このように、色と部品箱30の種別とを関連付けることで、どの順番にどの部品箱30が置かれているかも検出でき、部品20に似たような色があった場合でも、置かれるべき部品箱30の順番等と比較することで、除外することも可能となる。また、作業分析装置10が配置される環境によっては外部照明等の影響を受けることも考えられるため、明度変化に頑健なHSVなどの色空間で見ることで、誤認識を抑制することもできる。
[第13実施形態]
次に、第13実施形態に係る作業分析装置及び作業分析プログラムについて、図面を参照して説明する。
本第13実施形態では、上記監視領域を設定するための処理が、上記第1実施形態と主に異なる。したがって、第1実施形態と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
本実施形態では、上記作業分析処理が開始される前に、各監視領域を設定するため、制御部11により監視領域設定処理が実施される。この監視領域設定処理では、撮像部13にて撮像された撮像画像において部品20と想定され得るものが撮像されている領域を部品領域Pnとして設定して、この部品領域Pnに基づいて部品箱30の領域、すなわち、監視領域が設定される。
具体的には、対象となる部品20を撮像した1つの部品画像又は角度を変えて撮像した2以上の部品画像(テンプレート)を予め用意し、図40に例示するように、撮像部13の撮像画像から部品箱30を載置する可能性のある範囲を抽出した抽出画像において、上記部品画像に対して類似度が高くなる範囲を探索する(テンプレートマッチング)。本実施形態では、撮像される部品20のサイズ等に基づいて設定される検出用のウィンドウSwを上記抽出画像中にてスライドさせるようにして、類似度が高くなる範囲を探索する。
以下、本実施形態において制御部11にてなされる監視領域設定処理について、図面を参照して具体的に説明する。
作業分析処理を開始する前に、部品箱30が棚2に載置された状態にて所定の操作に応じて制御部11により監視領域設定処理が開始されると、図41のステップS401に示す初期設定処理がなされ、監視領域を設定すべき部品箱30の種別等が特定されるとともにその部品箱30に収容される部品20の上記部品画像が取得される。なお、部品画像は、例えば、予め記憶されている記憶部12から取得されてもよいし、監視領域設定処理がなされるごとに外部から取得されてもよい。
そして、全ての監視領域が設定されていない場合には(S403でNo)、撮像部13により撮像可能な状態になった後(S405)、ステップS407に示す部品領域設定処理がなされる。この処理のサブルーチンでは、まず、図42のステップS501に示す類似範囲探索処理がなされる。この処理では、上述したように、検出用のウィンドウSwを上記抽出画像中にて所定間隔(例えば、1又は数ピクセル単位)でスライドさせるようにして、類似度が高くなる範囲を探索するための処理がなされる(図40参照)。
そして、上記抽出画像中の全てにおいて探索が終了すると、ステップS503の判定処理にて、類似度が確定閾値以上となる範囲が探索されているか否かについて判定される。本実施形態では、例えば、上記確定閾値は0.8に設定されており、探索結果において類似度が確定閾値以上となる範囲が1つでも探索されている場合には、ステップS503にてYesと判定される。また、探索結果において類似度が確定閾値以上となる範囲が探索されていない場合であっても(S503でNo)、類似度が部分閾値(例えば、0.2)以上となる範囲が所定数(例えば、10個)探索されている場合には、ステップS505の判定処理にてYesと判定される。
上述のように、ステップS503にてYesと判定されるか、ステップS505にてYesと判定されると、ステップS507に示す設定処理がなされ、探索された範囲に基づいて部品領域Pnが設定される。具体的には、図43に示すように、類似度が上記部分閾値以上となる全ての範囲を含む矩形状の領域が上記部品領域Pnとして設定されて、部品領域設定処理のサブルーチンが終了する。なお、図43では、類似度が上記部分閾値以上となる範囲の一部を矩形状の破線にて図示している。
一方、探索結果において、類似度が上記確定閾値以上となる範囲が探索されておらず(S503でNo)、類似度が上記部分閾値以上となる範囲が所定数探索されない場合には(S505でNo)、部品領域Pnが設定されることなく、部品領域設定処理のサブルーチンが終了する。
上述のように部品領域設定処理のサブルーチンが終了すると、ステップS409の判定処理にて、部品領域Pnが設定されているか否かについて判定される。ここで、部品領域Pnが設定されていない場合には、ステップS409にてNoと判定されて、ステップS411に示す報知処理がなされる。この処理では、探索対象の部品20が撮像画像から見つけられない旨が表示部14による表示等を利用して報知されて、本監視領域設定処理が終了する。
一方、部品領域Pnが設定されている場合には(S409でYes)、ステップS413に示す直線サーチ処理がなされる。この処理では、抽出画像において部品領域Pnの縁の一点から外側に向けて直線をサーチするための処理がなされる。本実施形態では、図43に示すように、部品領域Pnのうち最小のX座標及びY座標からX方向の負側に向けて直線をサーチするための処理がなされる(図43の符号L1参照)。部品箱30に相当する領域内に部品領域Pnが設定されているので、上記直線サーチ処理により、部品箱30の周壁の内面に相当する直線がサーチされることになる。なお、部品領域Pnのうち最小のX座標及びY座標からX方向の負側に向けて直線をサーチすることに限らず、部品領域Pnの縁の任意の点から外側に向けて直線をサーチするようにしてもよい。
上述のように直線がサーチされると、ステップS415の交点サーチ処理がなされ、抽出画像において、サーチされた上記直線の先端であって他の直線と交わる交点をサーチするための処理がなされる。直線上を時計回りまたは反時計回りでサーチするようにして交点がサーチされると、まず、サーチされた交点の数kが0に初期化され(S417)、その交点が部品領域Pn外であれば(S419でYes)、サーチされた交点の数kがインクリメントされる(S421)。上述のように交点の数kが0に設定された直後であれば、交点の数kが1に設定されることとなる。
そして、交点の数kが4でない場合には(S423でNo)、上記交点に連なる他の直線の先端となる次の交点をサーチするための処理がなされる(S425)。そして、サーチされた交点が部品領域Pn外であり(S419でYes)、インクリメントされた交点の数kが4でない場合には(S423でNo)、再度、上記ステップS425以降の処理がなされる。なお、サーチされた交点が部品領域Pn内であると(S419でNo)、誤った交点がサーチされているとして、上記直線について交点をサーチするための処理が継続される(S427)。
そして、次の交点がサーチされて(S425)、インクリメントされた交点の数kが4になると(S423でYes)、ステップS429に示す設定処理がなされる。この処理では、サーチされた4つの交点を四隅とする矩形状の領域が部品箱30の周壁に囲まれた矩形状の領域に相当するため、この矩形状の領域を上記監視領域として設定するための処理がなされる。その後、次の部品箱30の監視領域を設定するため、上記ステップS403以降の処理がなされる。そして、全ての部品箱30の監視領域が設定されると、ステップS403の判定処理にてYesと判定されて、本監視領域設定処理が終了する。
このように、本実施形態における監視領域設定処理では、部品20と想定され得るものが撮像されている領域を部品領域Pnとして設定して、この部品領域Pnに基づいて部品箱30の領域、すなわち、監視領域が設定される。これにより、監視領域設定用の装置等を用意する必要もなく、事前の設定作業や複雑な端末操作等も不要となり、監視領域を設定するために必要な作業者Mの動作を軽減することができる。
なお、部品領域Pnは、部品画像に対する類似度を利用して設定されることに限らず、他の手法を用いて設定されてもよい。例えば、本実施形態の第1変形例として、エッジ検出アルゴリズム(例えば、Canny法)を用いた検出結果に基づいて部品領域Pnが設定されてもよい。
具体的には、上記抽出画像のグレースケールに対してX座標方向に輝度値をラインスキャンし(図44参照)、一定区間内(例えば10画素内)の振幅数が所定の閾値(例えば4回)以上連続して検出された区間のスタートとエンドのY座標を保存する。また、同様に、Y座標方向に輝度値をラインスキャンし(図44参照)、検出された区間のスタートとエンドのX座標を保存する。なお、図45は、所定のY座標に関してX座標方向に輝度値をラインスキャンした検出結果を概念的に例示している。そして、保存したX座標及びY座標において最も原点に近い座標を、部品領域Pnの外縁を構成する4つの直線のうちの2つが通る点とし、最も原点から遠い座標を、残る2つの直線が通る点とすることで、部品領域Pnが設定される。このように設定された部品領域Pnに基づいて監視領域を設定する場合でも上記効果を奏する。
また、本実施形態の第2変形例として、コーナー検出アルゴリズム(例えば、ハリスコーナー検出)を用いた検出結果に基づいて部品領域Pnが設定されてもよい。
具体的には、上記抽出画像において、各物体のコーナーをそれぞれ検出し、検出されたコーナーにおいて交差する2直線から成る小さい方の角(180度未満)の角度とそれらコーナーの座標を求め(図46のハッチング領域参照)、概略のコーナー角度ごとのヒストグラムを算出する(図47参照)。そして、ヒストグラムの出現頻度が上位所定数個(部品の形状に依存し、例えば三角形であれば上位3個)の角度の中で、最も原点に近いX座標およびY座標と最も原点から遠いX座標及びY座標とで囲まれた領域に一致するように部品領域Pnが設定される。このように設定された部品領域Pnに基づいて監視領域を設定する場合でも上記効果を奏する。
なお、部品領域Pnを設定して、この部品領域Pnから監視領域を設定する本実施形態等の特徴的構成は、他の実施形態等にも適用することができる。
なお、本発明は上記各実施形態及びその変形例等に限定されるものではなく、例えば、以下のように具体化してもよい。
(1)本発明における分析対象の所定の作業として、4つの単位作業A〜Dからなる組み付け作業が採用されることに限らず、例えば、1つ〜3つの単位作業からなる組み付け作業が採用されてもよいし、5つ以上の単位作業からなる組み付け作業が採用されてもよい。
(2)上述した区切動作(所定の動作)は、部品箱30から部品20を取り出す動作(第1実施形態)や、部品20をワークWの組付予定位置に移動させた動作(第2実施形態)に設定されることに限らず、その単位作業において必須となる他の作業動作に設定されてもよいし、単位作業とは無関係の画像認識しやすい動作に設定されてもよい。
(3)本発明は、プリント基板等のワークWに対して所定の作業手順に従って部品を組み付ける際の作業分析に採用されることに限らず、例えば、多品種少量生産品の組み付けラインにおいて半完成品に対して所定の作業手順に従って部品を組み付ける際の作業分析に採用されてもよい。
(4)作業分析処理において異常作業と判定された単位作業に関する情報や区切情報などを表示部14等に表示することで、必要に応じて区切情報を手動で修正等する機会を設けてもよい。