本発明の一実施形態について図面に基づいて説明すると以下の通りである。本実施形態では、一例として、4つの工程からなる手組み生産ラインを有する生産システムに適用される、作業時間自動計測システムについて説明する。
なお、以下では、説明の簡略化のため、一本の生産ラインを1つの作業監視装置で監視し、生産ラインの各工程に、作業者が一人ずつ配置される構成について説明する。
〔作業時間自動計測システムの概要〕
まず、本実施形態に係る作業時間自動計測システム(作業時間計測システム)100が適用されるある製品の生産システム1について、図2に基づいて説明する。図2に示す例では、生産システム1は、作業者の手作業により製品を製造する4つの工程(A〜D工程)を含む生産ラインと、上記各工程の作業を監視する作業監視装置2と、作業監視装置2が出力する作業監視結果を用いて、作業時間の算出など、生産管理のための各種処理を行う監視結果処理装置3とを含む構成となっている。
A工程、B工程、C工程、および、D工程は、生産システム1の製造対象物(ワーク)の流れの上流から下流に向けてこの順序で配置されており、ワークが先頭工程(A工程)から最終工程(D工程)までを経て、すべての工程の作業が順に実行されると製品が完成する。この生産システム1では、ロット生産は行っておらず、したがって、本実施形態では、ワークは1つの製品を製造するための作業対象物であり、1つのオーダに対して、1つのワークが工程を流れ、その1工程1ワークに対して1つの作業が実行され、全工程を経ると1つの製品が製造される。
さらに、生産システム1は、工程ごとに、作業者の作業を検知するための、センサ4a〜4dを備えている。また、先頭工程のA工程の作業場所と、最終工程のD工程の作業場所にそれぞれ、バーコードリーダ(BCR)5a、5dを配置する。なお、以下では、センサ4a〜4d、および、バーコードリーダ5a、5dを区別する必要のない場合には、それぞれ単に、センサ4、バーコードリーダ(入力装置)5と称する。また、センサ4またはバーコードリーダ5のように、自装置で検知・取得した信号、または、自装置に入力された信号を、作業監視装置2または監視結果処理装置3に入力する装置を、総じて入力装置と称する。
作業監視装置2、監視結果処理装置3、センサ4、およびバーコードリーダ5は、通信回線によって互いに接続されることによって、無線あるいは、有線による通信ネットワークを形成している。これにより、センサ4は、検知したON/OFF信号を、また、バーコードリーダ5は、ON/OFF信号または読み取ったバーコードのデータ信号を、作業監視装置2に送信することができ、次に、作業監視装置2は、上記各信号に基づき生成した作業監視結果を、監視結果処理装置3に送信することができる。
なお、通信ネットワークとしては、送信元となる装置が自装置の情報を送信相手に送信可能な形態であればどのようなものでもよい。例えば、センサ4(バーコードリーダ5)−作業監視装置2間は、赤外線やBluetooth(登録商標)などにより実現される無線LAN(Local Area Network)、作業監視装置2−監視結果処理装置3間は、例えば、相互に通信可能なLAN(Local Area Network)が形成される形態が想定される。なお、各入力装置は、自装置が検知した信号を直接監視結果処理装置3に送信することも可能である。
以上のように、作業監視装置2、監視結果処理装置3、センサ4、および、バーコードリーダ5とで、本発明に係る作業時間自動計測システム100が構成されている。
なお、本実施形態では、各工程に作業者が一人配置され、それぞれの工程(A〜D工程)ごとの作業場所と作業手順が定められている。また、それぞれの作業場所に作業台が設置されており、バーコードリーダ5の他に、作業者が用いる製品の組み立て・製造に必要な治工具が配置されている。あるいは、作業者が操作する生産設備が設置されていてもよい。
センサ4は、各工程における、作業者の実作業時間や、生産設備の実稼働時間を監視するものであり、各工程に少なくとも1つ設置される。例えば、センサ4は、ワークの有無、治具の動き、指図書の有無、扉の開閉、電動設備の電源のON/OFFなどを検知し、ONとOFFの状態を表した検知信号を、作業監視装置2に出力する。
センサ4は、検知対象物の有無や、動きを検知し、ONとOFFの状態を表す検知信号を出力するものである。センサ4が出力する検知信号は、作業監視装置2が、ONとOFFの状態を認識できるものであれば何でもよい。具体的なセンサ4の例としては、光電センサ、近接センサ、変位センサ、フォトマイクロセンサ、超音波センサ、圧力センサなど、ON/OFF信号を出力するものがある。
本実施形態では、センサ4は、作業が行われているか否かを、図3(c)に示すようなON信号とOFF信号の出力を繰り返すことにより表し、そのON信号(またはOFF信号)を検知した時刻とともに、作業監視装置2に供給する。本実施形態では、作業監視装置2は、ON信号が入力されると、次にOFF信号入力されるまでの間を、「作業実行状態」として認識し、逆にOFF信号が入力されて、次にON信号が入力されるまでの間を、「非作業実行状態」として認識するものとする。そして、その信号が入力された時刻は、監視結果処理装置3が作業時間を算出するときに利用する。
なお、上記例に限定されず、直接ON/OFF信号を出力しないで、アナログ値を出力するセンサであっても、本発明の作業時間自動計測システム100に用いることができる。この場合、センサ4は、閾値を設定し、例えば、閾値以上ならON信号、閾値以下であればOFF信号として出力するための機能を備えていればよい。あるいは、アナログ値による検知信号を受信する作業監視装置2が、閾値にしたがってON/OFF信号に変換する機能を備えていてもよい。
本実施形態では、センサ4に光電センサを用いる。光電センサは、比較的安価であり、既存の生産ライン上に、治工具の改造や変更を行うことなく設置することが可能であることから、低コストで導入できるというメリットがある。
バーコードリーダ5は、生産システム1の生産ラインに流れている生産中の製品(ワーク)が、どのオーダに対応しているのかを識別するために、ワークに対応するバーコードを読み取るものである。例えば、バーコードに、ワークを識別するためのワークIDの情報が含まれていることにより、そのワークに係る作業と、ワーク(オーダ)とを紐付けすることができる。また読み取った時刻を記録することにより、ワークの通過時刻を取得することが可能となる。本実施形態では、1つのワーク(オーダ)につき、1つのバーコード(ワークID)が割り当てられており、指図書6に記載されている。バーコードは、ワーク自体に印字されたものを読み取ってもよい。
指図書6には、各工程における、ワークに施す作業手順が記載されており、そのほかにも、ワークについてのさまざまな情報が記載されている。例えば、ワークのロット番号、製品シリアル番号、作業日時、作業者名などが記録されている。また、それらの情報が、バーコードに集約されて記載されていてもよい。これにより、バーコードのデータをバーコードリーダ5から取得した作業監視装置2は、入力装置から取得した作業のON/OFF信号と、ワーク(または、オーダや、最終工程を経て最終的に完成した製品)とを、1対1で対応付けることができ、指図書に記載されたワークの上述の情報を紐付けることもできる。これにより、取得した情報を、生産管理の各種処理に利用することができる。作業者は作業を行う際にこの指図書6を必ず所定の場所に置くこととする。
なお、本実施形態では、指図書6には、先頭工程での作業開始時に読み取るためのバーコードSと、最終工程での作業終了時に読み取るためのバーコードEとが記載されている。A工程およびD工程の作業者はそれぞれの作業場所に配置されているバーコードリーダ5a、5dを用いる。A工程の作業者は、ワークが到着し、作業を開始する時にバーコードSを読み取り、D工程の作業者は、受け取ったワークに対する作業を完了させたときに、バーコードEを読み取る。読み取られたバーコードのデータは、通信ネットワークを介して、作業監視装置2へ送信される。
このとき、例えば、作業監視装置2において、送信されたバーコードのデータとともに、該データを取得した時刻を記録しておけば、ワークごとの生産ラインの開始時刻と終了時刻を取得することができる。
なお、本実施形態では、バーコードリーダ5を先頭工程(A工程)と最終工程(D工程)とのみに配置し、指図書6のバーコードを作業開始時と終了時に読み取る構成としたが、上記に限定されない。本発明に係る作業時間自動計測システム100では、例えば、全工程にバーコードリーダ5を配置し、各作業員が、自身の作業開始時および終了時にバーコードを読み取るようにしてもよい。
また、本実施形態では、入力装置がバーコードリーダ5である場合、その検知信号には、バーコードが読み取られたことを示す信号と、読み取られたバーコードデータの情報と、そのデータが読み取られた時刻とが含まれているものとする。
あるいは、バーコードリーダ5を配置する工程は、先頭工程(A工程)や、最終工程(D工程)に限らず、いずれの工程(A〜D工程)に配置されてもよい。本発明の作業時間自動計測システム100において、バーコードリーダ5は、生産ラインが含む1以上の工程のうち、少なくとも1箇所に配置されていればよい。これにより、バーコードのデータ信号と該信号が取得された時刻に基づき、先入れ先出し方式にて、ワークと、そのワークに対する作業を示す信号との紐付けが可能となる。
また、バーコードは、指図書6ではなく、ワーク自身に記載されていてもよい。例えば、基板などに刻印されている2次元バーコードを、2次元バーコードリーダで読み取ることなどが考えられる。また、バーコードリーダの読み取りは、作業者の手によらず、機械によって自動で行われてもよい。
また、本実施形態では、生産システム1の全工程は、作業者の手作業による手組みラインとしたが、生産設備によって、自動で組み立て・製造が行われる工程を含む生産システムにおいても、本発明の作業時間自動計測システム100を適用することは可能である。
以上のように、センサ4およびバーコードリーダ5で検知された、作業者の作業を監視した結果である検知信号、および、バーコードリーダ5により読み取られたデータ信号は、作業監視装置2に送られる。作業監視装置2は、受信した信号から、実作業を示していないパルス、または、誤って入力されたパルス(ノイズ)などの除去(フィルタリング処理)を行って、工程ごとに、手組みラインにおける作業を示す作業信号を作業監視結果として生成する。監視結果処理装置3は、上記作業信号を入力装置ごとに蓄積し、作業時間を示す信号のパルスと、オーダ(または、ワーク)との紐付け処理(グルーピング処理)を行うことにより、生産システム1に係る実作業時間を工程ごと、または、ワークごとに計測する。
以下、本発明に係るフィルタリング処理を行う作業監視装置2、および、グルーピング処理を行う監視結果処理装置3について、さらに詳しく説明する。
〔作業監視装置の構成〕
図1は、本実施形態に係る作業監視装置2の要部構成を示すブロック図である。作業監視装置2は、図1に示すとおり、制御部10、通信部20、操作部31、発音部32、表示部33、フィルタ記録部41、フィルタ−入力装置対応表42、および、フィルタレベル調整テーブル43を備えた構成となっている。
通信部20は、作業時間自動計測システム100(図2)において、他の装置との通信を行うものであり、センサ4およびバーコードリーダ5などの各入力装置からの検知信号を受信する受信部21と、上記検知信号に基づいて、自装置が生成した作業監視結果としての作業信号を監視結果処理装置3に送信する送信部22とで構成されている。
上記作業信号とは、上記検知信号と同様、「作業実行状態」、「非作業実行状態」を示すための信号であり、本実施形態では、上記検知信号と同様に、例えば、連続して交互に入力されるON/OFF信号およびその入力時刻の情報からなっている。なお、以下では、上記各入力装置からの検知信号と、作業監視装置2からの、作業監視結果としての作業信号とを特に区別する必要がない場合には、作業検知信号と称する。
操作部31は、ユーザからの指示入力、および情報入力などを受け付けるものであり、例えばキーボードやボタンなどのキー入力手段や、マウスなどのポインティングデバイスなどによって構成される。発音部32は、作業監視装置2が生成した音声データを音声として出力する音声出力手段であり、スピーカなどによって構成される。表示部33は、作業監視装置2における各種処理内容を表示するものであり、例えば液晶表示装置、CRT(Cathode Ray Tube)などの表示装置によって構成される。
上述の各部(操作部31、発音部32、表示部33)は、制御部10が有する入出力制御部(図示せず)を介して、作業監視装置2の制御部10と情報をやりとりする。入出力制御部は、操作部31からの入力情報を受け付けるとともに、発音部32に対して音声データを出力する制御、および、表示部33に対して表示制御を行う。
フィルタ記録部41は、フィルタ情報を記録している。フィルタとは、センサ4やバーコードリーダ5(図2)などから得られた、各工程の作業の有無を示す検知信号の中から、実際の作業により発生したのではないパルス(例えば、ON―OFF信号間)、または、実際は作業実行中とみなされるべきであるのに、OFFの状態と検知されたパルスの谷間(例えば、OFF−ON信号間)(これらのパルス、パルスの谷間を以下、ノイズと称する)を特定し、それを除去する機能のことである。フィルタ情報は、少なくとも、フィルタの種類と、検知信号のどの部分がノイズであるかを判定するときに用いるフィルタリング条件とを含んでいる。上記フィルタリング条件は、1つ以上のパラメータを用いて定義される。条件を定義するパラメータの例としては、例えば、パルス間隔、パルス回数、ON/OFF状態の継続時間、パルス検出時刻などの閾値や、検知信号に含まれる文字列を、比較によって判定するときに用いる比較対象となる基準値の文字列、あるいは、複数の同時刻の検知信号を比較することによる判定に用いる前件部(If文)などが考えられる。各種ノイズを含んだパルス波形の例、およびそれらを除去する各種フィルタの詳細については後述する。
フィルタ-入力装置対応表42は、上記フィルタ記録部41に記録されている複数種類のフィルタと、作業/非作業を表す検知信号を供給する各入力装置との対応関係を記録している。センサ4は、作業の動作内容が異なる種々の工程に設置され、種類が異なれば、検知する内容も異なる。また、同じ種類のセンサであっても、垂直方向の動作なのか、水平方向の動作なのか、その動きが何回繰り返されて1つの作業なのか、などによって、その動きが作業であると判定されるための条件はさまざまである。
そこで、最も正確な結果を得るためには、どの工程のどの入力装置からの検知信号に、どのフィルタを適用すればよいのかについての情報が必要となる。このフィルタ-入力装置対応表42を参照することにより、制御部10は、取得した検知信号に最適なフィルタを選択することが可能となる。
フィルタレベル調整テーブル43は、フィルタごとに、あらかじめ規定した、条件の厳しさを示すフィルタレベルに対応させて、上記フィルタリング条件を定義する各種パラメータを記録している。すなわち、1つの検知信号に対して、適用されるフィルタの種類は一種類しかない場合でも、フィルタリング条件の厳しさを調整して当該フィルタを適用することができる。例えば、ある工程において、熟練度の低い作業者が作業を担当したり、一定時間ごとに担当の作業者が頻繁に入れ替わったりするなどの理由から、作業の動きにばらつきがあるときなどは、その工程のセンサからの検知信号には、フィルタリング条件を緩くしたフィルタを適用する。一方、一人の作業者が手馴れた作業を担当するため、動きにばらつきがないときは、フィルタリング条件を厳しくしたフィルタを適用する。このように、同じ型のフィルタでも、作業環境に応じて、フィルタレベルを調整して、フィルタを適用することができ、フィルタリング処理の精度を向上させることが可能となる。なお、フィルタレベルの選択は、ユーザが操作部31を用いて行えばよい。
なお、このフィルタ-入力装置対応表42がない場合、ユーザが、検知信号に適用するフィルタをフィルタ記録部41の中から選択する構成としてもよい。また、フィルタ-入力装置対応表42に記録された対応関係を、ユーザが任意に変更できるようにしてもよい。また、フィルタ記録部41に、適当なフィルタが記録されていないとユーザが判断した場合に、ユーザが、上述した、各種フィルタのフィルタリング条件を、任意に変更して適用するようにしてもよい。また、新たなフィルタをフィルタ記録部41に追加するようにしてもよい。これらの作業監視装置2に対する操作は、操作部31を用いてユーザが行う。
上記のフィルタ記録部41、フィルタ-入力装置対応表42、および、フィルタレベル調整テーブル43は、例えばハードディスク装置などの不揮発性の記録媒体によって実現される。
制御部10は、作業監視装置2における処理を制御するものであり、信号取得部11、入力装置識別部12、フィルタ選定部13、ノイズ特定部14、ノイズ除去部15、処理信号出力部16、フィルタ調整部17、および、信号監視部18を備えている。
入力装置識別部12、フィルタ選定部13、ノイズ特定部14、および、ノイズ除去部15が、フィルタリング処理部40を構成している。
信号取得部11は、受信部21を介して、受信データの本文から、入力装置の検知信号を取得する。入力装置識別部12は、受信データのヘッダなどから、入力装置IDを抽出し、該信号の送信元となる入力装置を識別する。フィルタ選定部13は、取得した入力装置IDに基づいて、フィルタ-入力装置対応表42を参照し、取得した検知信号に適用するフィルタを選定する。ノイズ特定部14は、フィルタ記録部41を参照して、選定されたフィルタのフィルタ情報を取得し、該フィルタのフィルタリング条件に基づいて、特定のONまたはOFF信号をノイズ信号として検出し、検知信号に含まれるノイズを特定する。ノイズ除去部15は、特定されたノイズを除去する。処理信号出力部16は、フィルタリング処理により、ノイズ信号が除去されたのちの検知信号、すなわち、パルスが実際の作業状況のみを表している作業信号を、作業監視結果として、送信部22を介して、監視結果処理装置3に送信する。
上記構成によれば、フィルタ記録部41に記録されているフィルタリング条件に基づいて、ノイズ特定部14は、取得した検知信号の中で、実際の作業によって検知されたのではないパルス、または、作業とみなされるべきであるのに、ON状態が検知されなかったパルスの谷間を、ノイズとして特定する。ノイズ除去部15は、特定されたノイズを除去する。これにより、実際に行われた実作業時間帯のみ識別することが可能な作業信号を生成することができる。
したがって、上記のような作業信号を受信した監視結果処理装置3は、作業信号が含むパルスの開始時点(ON信号入力時点)と終了時点(OFF信号入力時点)から、各工程の作業開始時点と作業終了時点とを正確に認識し、その時刻を取得することで、作業時間を算出することができる。
作業監視装置2に検知信号を供給する各入力装置としては、光電センサなどの比較的安価で、設置の自由度が高いものを用いれば、生産設備を改装する必要もなく、導入コストを安価に抑えることができる。また、工程ごとの手作業の開始と終了を、センサからの信号のみで特定することが可能となり、作業者が個々に、作業の開始と終了のための入力作業を別途行う必要はなくなる。以上のことから、計測システム導入コストを安価におさえ、導入前の生産ラインの生産性を維持しつつ、手組みラインにおける作業時間を高い精度で算出し、自動で計測することが可能となる。
なお、フィルタ選定部13は、フィルタ-入力装置対応表42に記録された入力装置IDとフィルタ情報の対応付けに基づき、検知信号に適用するフィルタを選定しているが、ユーザからの指示により、適用するフィルタを選定しなおしてもよい。
この場合、フィルタ選定部13は、ユーザより、上記入力装置IDとフィルタ情報との対応付けを変更する指示信号を、操作部31を介して受信し、その指示内容に基づいて、取得した検知信号に適用するフィルタを選定する。
次に、フィルタリング処理部40が扱うノイズを含んだ、各入力装置(以下では、センサX(またはY)およびバーコードリーダZ)から出力される、検知信号の例と、該信号に適用されるフィルタの例について、図3〜9に基づき説明する。なお、図3〜9において、検知信号を視覚的に分かりやすくするために、例えば、図3(c)に示すとおり、検知信号の縦軸に+(プラス)と−(マイナス)をとり、それぞれ、+がONの状態(作業実行状態)、−がOFFの状態(非作業実行状態)を示すものとする。また、横軸は時間の経過を表し、右にいくほど時間が経過していることを表す。しかしながら、上記のパルス波形は、上記各入力装置が出力するデジタル情報、および、作業監視装置2および監視結果処理装置3が扱うデジタル情報の「0」と「1」とを、パルス波形に対応付けて伝送するときの伝送方式、ならびにパルス波形を限定するものではない。
なお、本実施形態では、作業監視装置2および監視結果処理装置3は、自装置が入出力する信号のONの状態(+)を「作業実行状態」、OFFの状態(−)を「非作業実行状態」として取り扱うこととするが、これに限定されず、例えば、入力装置が検知したOFF状態を、作業監視装置2がON状態として取り扱い、それを「作業実行状態」を示す信号として取り扱ってもよい。
また、図3〜9において、(a)は、ある工程の作業場所に取り付けられたセンサX(Y)の、フィルタ適用前の検知信号を示す図であり、(b)は、(a)の検知信号にフィルタを適用した後の、作業監視結果としての作業信号を示す図である。さらに、図3〜6において、(c)は、(a)の検知信号における、1作業分のパルス(枠内)の拡大図である。1作業分のパルスとは、ある工程において、1つのワークに施される処理、つまり、1オーダ分の作業を示す。
〔ノイズの種類とフィルタの種類(ノイズ除去方法)〕
作業を監視するセンサ4またはバーコードリーダ5の入力信号に含まれるノイズ信号の発生要因は、主に、以下の7つに分類することができる。
(1)ワークの位置ずれ
ワークや指図書といった対象物の有無をセンサで検知する場合、作業者が対象物を置き直したり、対象物を動かしたりすることで、センサが、ワークが無いと検知してしまう。実際には作業していたにもかかわらず、ワークが無いと検知された部分が発生することになり、これがノイズ発生の要因となる。
(2)動作回数の変動(繰り返し回数が不明な作業)
例えば、圧着作業などの組み立て作業をセンサで検知する場合、作業者それぞれに動きやすいリズムがあったり、作業者の個性、あるいは、熟練度により圧着動作の回数が異なったりすることで、同じ組み立て作業でも、一様に作業時間帯を特定することができない。この、動作回数の変動がノイズ発生の要因となる。
(3)非対象物検知
光電センサの光軸上を、作業者の体の一部や、工具が通過することにより、それが、検知対象である「作業」による動きでなくとも、それを「作業」として検知してしまう。実際には作業をしていないのに、作業したと検知される部分が発生することになり、これがノイズ発生の要因となる。
(4)非対象作業検知(繰り返し回数が固定されている作業)
また、定まった複数の回数の動作を実行することで1工程の1作業であるとみなす場合にもノイズが発生する。具体的には、実行された動作と次に実行される動作との間に、静止の間あるいは、センサで動きを検知できない間(OFF状態)が存在することがある。しかし、そのOFF状態は、1作業と1作業の間ではなく、単に1作業内の動作と動作間の間であったとしたら、それは「作業実行状態」として検知されなければならないのに、検知されない。したがって、1作業の開始、終了時点に関係のないパルス(またはパルス間の谷間)はノイズとして扱う必要がある。
(5)不完全作業
ある作業を実行中であることを検知するのに、複数のセンサでセンシングしなければならない場合も考えられる。例えば、2つのセンサを用いて動作をセンシングし、両方のセンサによって検知されてはじめて「作業実行状態」と判断できるとする。この場合、片方のセンサからパルスが検知されても、同時にもう片方のセンサから検知されなかった場合は、検知対象である作業は正常に行われなかったと判断する必要がある。したがって、取得した片側のセンサからのパルスはノイズとみなす。
(6)実作業時以外の動作(点検、準備、練習)
実際の計測対象である作業ではない、点検、準備、清掃、作業の練習などで発生する信号は、ノイズとして扱う必要がある。
(7)バーコードリーダ入力ミス
作業者が指図書に複数記載されたバーコードの中から、実際に読み取るべきバーコードと異なるバーコードを誤って読み取った場合、バーコードリーダの入力ミスが、ノイズ発生の要因となる。
上述した7つの要因によって発生するノイズは、以下の6つのフィルタの1つを、あるいは、それらの組み合わせを適用することにより、除去することができる。
(i)間隔フィルタ
(間隔フィルタのフィルタリング条件)
1.センサXによってOFF信号が入力された時点(あるいは、別のセンサYやバーコードリーダZから入力があった時点)を起点とし、該時点から次のON信号が入力された時点までの間隔が、x秒以内である場合の、OFF状態の部分をノイズとみなす。
2.センサXによってON信号が入力された時点(あるいは、別のセンサYやバーコードリーダZから入力があった時点)を起点とし、該時点から次のOFF信号が入力された時点までの間隔が、x秒以内である場合の、ON状態の部分をノイズとみなす。
(間隔フィルタの適用例)
センサXがある検査工程の検査機の扉の開閉を検知するように設置した場合を考える。センサXは、扉が開いていることを検知してOFFになり、扉が閉じていることを検知してONになる。扉は検査をするたびに必ず閉められるが、扉が閉められるからといって検査が開始されるとは限らないため、単純に扉の開閉のみで、検査機の動作時刻とすることはできない。このような場合に、検査工程の直前に必ず行われる作業をセンサYで検知し、センサXに間隔フィルタを適用して、センサYからの入力があった直後(x秒以内)のセンサXのON(OFF)信号の入力のみを通すことで、検査のための作業以外で扉の開閉が行われることによって発生するノイズを除去できる。
(ii)回数フィルタ
(回数フィルタのフィルタリング条件)
パルス(または、パルスとパルスの間にできるOFF状態の谷間)の出現回数によって、ノイズを特定する。より具体的には、N回中M回目に入力されたOFF信号(または、ON信号)をノイズ信号とみなす。
(iii)状態判定フィルタ
(状態判定フィルタのフィルタリング条件)
第一のセンサXが、ON(またはOFF)の状態であるときのみ、第二のセンサYの入力信号を有効とする。すなわち、センサXが、ON(またはOFF)の状態でないときの、第二のセンサYの入力信号をノイズ信号とみなす。
(iv)時間外フィルタ
(時間外フィルタのフィルタリング条件)
あらかじめ設定した時間帯に入力された信号のみを有効とする。設定した時間帯以外の時間帯に入力されたON/OFF信号をノイズ信号とみなす。
(v)包含フィルタ
(包含フィルタのフィルタリング条件)
1.第一のセンサXにて検出したパルスにおいて、該パルス発生と同時に、第二のセンサYのパルスが検出されない場合に、センサXの上記パルスをノイズとみなす。
2.第一のセンサXにて検出したパルスにおいて、該パルス発生と同時に、あるバーコードリーダからの入力が所定回数検出されない場合に、センサXの上記パルスをノイズとみなす。
(vi)文字列フィルタ
入力装置により入力された文字列が、指定したフォーマットのもののみ通過させるフィルタ。フォーマットの指定は、例えば、フィルタリング条件としての下記サブフィルタを複数個組み合わせて行うことができる。
(文字列フィルタのフィルタリング条件)
1.文字数:入力文字列の文字数がx文字以上y文字以下のものだけフィルタを通す。(それ以外は、ノイズとみなす。)
2.指定位置文字:入力文字列のx文字目が、指定した文字である場合だけフィルタを通す。(それ以外は、ノイズとみなす。)
3.特定文字列検索:指定した文字列が、入力文字列に含まれている場合のみフィルタを通す。(それ以外は、ノイズとみなす。)
(文字列フィルタの適用例)
例えば、作業者による、バーコードの読み取り間違いなどを検出することが可能となる。バーコードリーダが読み取るバーコードに、ワーク(もしくは、オーダ)を特定するためのワーク(オーダ)IDが含まれている場合、バーコードが正しく読み取られた場合は、バーコードの読み取り時刻と、後続する作業の作業時間とを正しく紐付けることが可能であるが、誤って読み取られた場合、ワーク(オーダ)と作業との紐付けが正しく行えない。そこで、バーコードの誤読を検出し、誤読により発生した信号をノイズとして除去することで、ワークの紐付け処理の精度を向上させることが可能となる。なお、文字列フィルタを用いた、ワークの紐付け処理については、後述する。
上述の6つのノイズ発生要因(「(7)バーコードリーダ入力ミス」を除く)に起因するノイズ信号を、上述の5つのフィルタ(およびその組み合わせ)(「(vi)文字列フィルタ」を除く)を用いて除去する方法について、図を用いてさらに詳細に説明する。
(適用例1)ワークの位置ずれ⇒間隔フィルタ
図3(a)〜(c)は、ワークの有無を検知するセンサXの検知信号における、間隔フィルタの適用例を示す図である。
ある工程の作業場所に取り付けられたセンサXは、作業台上にワークが存在するときは、ON状態になり、存在しないときにはOFF状態になるように設置されている。例えば、作業者が、1作業の間に、ワークを一旦作業台に置いて、作業しやすいように置き直したりした場合、図3(c)に示すとおり、作業開始(S)から終了(E)までの間に、OFF−ON間(OFF信号が入力されてから、再びON信号が入力されるまでの間)において、パルスの谷間が発生する(Nの部分)。
間隔フィルタを用いれば、ノイズ特定部14(図1)は、上記パルスの谷間の部分が、x秒以内である場合の、OFF信号とON信号の間の部分をノイズNとして特定することができ、ノイズ除去部15は、上記ノイズ信号を破棄してNの部分を除去することができる(図3(a)から(b)へ)。
これにより、Sを作業開始時点、Eを作業終了時点とした、1のパルスを特定することが可能となる。
(適用例2)動作回数の変動⇒間隔フィルタ
図4(a)〜(c)は、圧着動作が行われる度にその動作を検知するセンサXの検知信号における、間隔フィルタの適用例を示す図である。
ある工程では、1オーダにつき、つまり、1つのワークに対して、基本的には4回圧着動作が行われ、それを1作業としている。センサXは、圧着動作が実行される度に、ON−OFF信号入力によるパルスが出力されるように設置されている。
しかし、作業者の熟練度や癖などに応じて、1作業における圧着作業の動作回数に変動が生じる。そのため、4つのパルスを1作業として作業の開始/終了時点を特定する方法では、正確な作業時間を計測することができない。
例えば、図4(c)に示すとおり、1作業につき、6回の圧着動作が実行されたとき、単にパルスの回数(4回)のみで1作業を特定しようとすれば、E’の時点が作業終了時点として特定されてしまう。
そこで、間隔フィルタを用いれば、ノイズ特定部14(図1)は、上記パルスの谷間の部分が、x秒以内である場合の、当該OFF状態の部分をノイズNとして特定することができ、ノイズ除去部15は、その特定されたノイズを除去することができる(図4(a)から(b)へ)。
これにより、1作業に含まれる、繰り返し動作について、作業者によって、動作回数に変動があっても、1作業に対応する1のパルスを導出することができる。
(適用例3)非対象物検知⇒間隔フィルタ
図5(a)〜(c)は、ワークの有無を検知するセンサXとバーコードリーダZの検知信号における、間隔フィルタの適用例を示す図である。
ある工程では、2回の作業を行うごとに、バーコード読み取りが1回行われる。この工程に設置されているセンサXは、例えば、ワークの有無を検知する光電センサである。しかし、作業者がバーコードの読み取りを行う際に、作業者の体の一部や、バーコードリーダZが、センサXの光軸上を通過するため、バーコードの読み取り動作が「作業」として検知されてしまう。
図5(a)に示すとおり、バーコードリーダでの入力が行われた瞬間を点Pで表すと、点Pの時点で、バーコード読み取り動作により検知されたノイズ信号Nが検知されてしまう。この検知信号が、監視結果処理装置3にそのまま入力されると、この工程における作業は、実際は6回であるのに、9回実行されたとして処理されてしまう。
そこで、間隔フィルタを用いれば、ノイズ特定部14は、ON信号が検知された時点から、次のOFF信号が入力された時点までのパルスの間隔(例えば、図5(c)のWやN)が、x秒以内である場合の、該パルスをノイズ信号Nとして特定することができ、ノイズ除去部15は、その特定されたノイズ信号を除去することができる(図5(a)から(b)へ)。
(適用例4)非対象作業検知⇒回数フィルタ
図6(a)〜(c)は、治工具の動きを検知するセンサXの検知信号における、回数フィルタの適用例を示す図である。
部材を切断するある工程では、切断動作中に切断する刃を検知することで、切断中はONとなり、非切断時はOFFとなるようセンサを設置する。この工程では、1オーダにつき、つまり、1のワークに対して、切断動作を必ず2回実施する。よって、1回目の切断開始から2回目の切断終了までを工程の1作業として検出する必要がある。
図6(c)に示すとおり、1回目の切断終了(D1)、および2回目の切断開始(D2)の間のOFF状態の部分を、「作業実行状態」として検知しなければ、この工程の1作業における作業開始/終了時点(S/E)を正確に検出することができない。
そこで、回数フィルタを用いて、1作業につき2回発生するOFF信号(D1、E)のうち、奇数回目の信号(D1)をノイズ信号として特定する。また、ON信号(S、D2)のうち、偶数回目の信号(D2)をノイズ信号として特定する。
これにより、ノイズ特定部14は、D1−D2間のOFF状態をノイズNとして特定することができ、ノイズ除去部15は、その特定されたノイズを除去することができる(図6(a)から(b)へ)。
なお、回数フィルタは、1度回数のカウントミスが発生してしまうと、その回数のずれが修正されずに作業時間の特定に大きな影響を与えてしまうので、単独では用いず、通常は、間隔フィルタなどの他のフィルタと組み合わせて用いることが望ましい。
(適用例5)不完全作業⇒包含フィルタ
図7(a)および(b)は、ワークの有無を検知するセンサXと治工具の動きを検知するセンサYを組み合わせて用いる場合の検知信号における、包含フィルタの適用例を示す図である。
ワークを治具に置き、切断動作によってワークを加工する工程があるとする。この工程では、センサXを、ワークを検知したらON、それ以外はOFFとなるように設置し、センサYを、切断工具が動作中であればON、それ以外はOFFとなるように設置する。
このような工程で、ワークを設置したが、単に設置したのみで、切断動作を行っていないといった状況が発生することがある。この場合は、作業中とはいえないので、このときにワークが存在するとして検知されたセンサXのパルスは、除去する必要がある。
図7(a)および(b)の2つの検知信号のうち、上段は、実際の作業監視に用いるための、フィルタリングの対象となる、センサXからの検知信号であり、下段は、センサYの検知信号である。図7(a)の、一点鎖線により囲まれた部分では、センサXが検知したパルスNに対応する、センサYのパルスが検出されていない。これは、ワークは置かれたが、実際の切断作業が行われなかったことを示している。
そこで、センサXに包含フィルタを適用すれば、センサXがワークを検出している間(ON−OFF間のパルスN)にセンサYによる切断作業の検知信号がない場合、ノイズ特定部14は、そのセンサXのパルスNをノイズとして特定することができる。ノイズ除去部15は、その特定されたノイズを除去することができる(図7(a)から(b)へ)。
(適用例6−1)実作業時以外の動作⇒状態フィルタ
図8(a)および(b)は、各種入力装置による検知信号と、ラインが稼動中かどうかを指定するスイッチによる検知信号とを組み合わせて用いる場合の、状態フィルタの適用例を示す図である。
作業監視中、すなわち、センサ4やバーコードリーダ5などの各入力装置がセンシング中に、点検業務や清掃業務を行うと、様々なセンサが反応してしまう可能性がある。これらの信号はすべてノイズ信号として除去する必要がある。しかし、点検業務などは実際の作業と同様の動作を行うため、ON/OFF信号で形成される波形の特徴からノイズ信号を特定する上述の方法では、実際の製品を生産しているのか、点検しているのかを判断することは困難である。
そこで、基準となるON/OFF状態を表すスイッチを設置して、点検、清掃業務時はそのスイッチをOFFにするというルールを規定する。例えば、生産ラインが実際の生産活動のために稼動中であることをON信号によって示す稼動中スイッチ(図示せず)が設置されているとする。図8(a)、(b)に示すとおり、稼動中スイッチがOFFの状態のとき、すなわち、点P以前において、各種入力装置から検知された検知信号は(一点鎖線枠内)、始業点検や、準備などで発生したノイズとして、除去する必要がある。
ここで、全入力装置の検知信号に対して、状態判定フィルタを適用すれば、上記稼動中スイッチからの信号がOFFのときの、パルスはすべてノイズとして特定し、除去することができる(図8(a)から(b)へ)。
これにより、波形の特徴からノイズか否かを判定するのが困難な場合でも、実際の計測対象である作業ではない、点検、準備、清掃、作業の練習などで発生する信号をノイズとして除去することが可能となる。
(適用例6−2)実作業時以外の動作⇒時間外フィルタ
図9(a)および(b)は、生産ラインの稼動時間をあらかじめ設定した場合の、各種入力装置による検知信号における、時間外フィルタの適用例を示す図である。
毎日の点検、清掃、休憩などのように、非稼動時間があらかじめ分かっている場合は、その時間に入力された信号は、作業実行を示していないことがはっきりしている。例えば、ある生産ラインにおいては、始業時間がAM8:30(時点P)と定められている。図9(a)に示すとおり、時点P以前に各入力装置から検知された検知信号は(一点鎖線枠内)、始業前に行われる始業点検や、準備などで発生したものであるので、ノイズ信号として除去する必要がある。
ここで、全入力装置の検知信号に対して、AM8:30以前を時間外とする時間外フィルタを適用すれば、時点P以前の、パルスはすべてノイズとして特定し、除去することができる(図9(a)から(b)へ)。
これにより、波形の特徴からノイズを特定するのが困難な場合でも、実際の計測対象である作業ではない、点検、準備、清掃、作業の練習などで発生するON/OFF信号を、検出時刻を条件に用いてノイズ信号として特定し、除去することが可能となる。
これまで述べた、ノイズの発生要因の一例と適用するフィルタの種類との対応関係をまとめると、例えば、図10のようになる。
上述の各種フィルタの情報を、フィルタ記録部41に記録すれば、各フィルタが有するフィルタリング条件に基づいて、ノイズ特定部14は、取得した検知信号の中で、実際の工程の作業によって検知されたのではないパルス、あるいは、作業中とみなすべきであるのに検知されなかったパルス間を、ノイズとして特定する。ノイズ除去部15は、特定されたノイズを除去する。これにより、実際に行われた実作業時間帯のみ識別することが可能な作業信号を生成することができる。
したがって、上記のような作業信号を受信した監視結果処理装置3は、そのパルス波形から、各工程の作業開始時点と作業終了時点を正確に認識し、その時刻を取得することで、作業時間を算出することができる。
作業監視装置2に検知信号を供給する各入力装置としては、光電センサなどの比較的安価で、設置の自由度が高いものを用いれば、導入コストを安価に抑えることができる。また、工程ごとの手作業の開始と終了を、センサからの信号のみで特定することが可能となり、作業者が個々に、作業の開始と終了のための入力作業を別途行う必要はなくなる。
以上のことから、計測システム導入コストを安価におさえ、導入前の生産ラインの生産性を維持しつつ、手組みラインにおける作業時間を高い精度で算出し、自動で計測することが可能となる。
なお、文字列などの情報を入力できるバーコードを入力装置として適用すれば、文字列フィルタを用いることにより、バーコードの読み取りミスを検知することもできる。
〔作業監視装置の変形例1〕
なお、本実施形態では、取得される検知信号に、どのフィルタを適用するかは、フィルタ-入力装置対応表42によってあらかじめ定められているが、フィルタ記録部41に記録されているフィルタ情報をユーザが操作し、調整して検知信号に適用する構成も可能である。
この場合、作業監視装置2は、図1に示すとおり、制御部10内部にさらに、フィルタ調整部17を備え、ユーザからの指示に応じて、フィルタ記録部41に記録されているフィルタ情報を微調整する。
フィルタ調整部17は、ユーザからの指示に応じてフィルタレベル調整テーブル43を参照し、フィルタ記録部41のフィルタ情報に含まれる、フィルタリング条件を定義するパラメータを変更する。より具体的には例えば、一定時間ごとに担当の作業者が頻繁に入れ替わったりする作業環境の作業時間を監視するとき、動作にばらつきがあるので、フィルタのフィルタリング条件を緩く(レベルを低く設定)して、検知信号に適用したいとする。図11(a)の表の「間隔フィルタ01」を、上記作業環境の検知信号に適用する場合、ユーザは、操作部31を用いて、あらかじめフィルタレベル「低(フィルリング条件をゆるめる)」を設定する。
これにより、フィルタ調整部17は、図11(b)に示すような、フィルタレベル調整テーブル43を参照して、パラメータの調整量(+1秒)を取得し、図11(a)の表の「間隔フィルタ01」のパラメータ(5秒)を、6秒に変更して、フィルタ選定部13に出力する。したがって、以降のフィルタリング処理は、パラメータが6秒に変更された「間隔フィルタ01」を用いて実行される。
なお、本変形例では、ユーザが操作部31を用いてフィルタレベル設定する構成としたが、ユーザが直接パラメータ値を任意に変更したものを適用できる構成にすることも可能である。
〔作業監視装置の変形例2〕
さらに、作業監視装置2は、図1に示すとおり、制御部10内部にさらに、信号監視部18を備え、フィルタリング処理が正常に動作していないことを検知すると、警告を発する構成としてもよい。
信号監視部18は、ノイズ特定部14の入出力を監視し、入力された検知信号の中から、ノイズ信号と特定された信号の割合を検出する。ノイズ信号と特定された信号の割合があらかじめ定めた基準を上回っている場合には、正しい信号まで不要にノイズ信号とみなされている可能性があるとして、この異常状態の情報を、入出力制御部を介して警告部30に出力する。なお、警告の発動は、発音部32から音声を出力することや、表示部33に警告メッセージを表示させることなどによって実現することができる。
さらに、信号監視部18は、ノイズ除去部15から出力される、フィルタリング処理が行われた後の作業信号を監視して、上記の方法では検出されない異常を発見し、警告を行う。
例えば、センサの不具合として、センサの光軸が完全にずれてしまった場合には、そのセンサからの信号がまったく取得できなくなる恐れがある。少しずれた程度で、検知されるON信号が減少する場合は、前述したようにフィルタ通過率の低下を検知することでずれを発見できるが、完全にずれてしまいON信号を全く検知できない状態になってしまっては、上述の方法で異常を検知することはできない。
この問題に対して、信号監視部18は、作業信号を監視し、各工程に滞留しているワーク(オーダ)数を認識することで、ON信号を全く検知できない異常状態を検知することができる。滞留しているワーク数とは、前の工程からワークが排出されたこと、あるいは、当該工程にそのワークが投入されたことが検知されているにも関わらず、当該工程からそのワークが排出されたことが検知されない場合に、当該工程に滞留している(実際に滞留している場合と、検知ミスから滞留しているようにシステム側にはみえる)ワーク(オーダ)数のことである。
生産ラインが正常稼動時に、各工程に実際に滞留するワーク数は、特別なことがないかぎり大きく変動することはない。そこで、想定されている滞留ワーク数を上回るワークが滞留していると信号監視部18が検知した場合に、信号監視部18は、その工程のワークの排出を検知するセンサに異常がある可能性を認識することができる。
信号監視部18は、作業信号を監視し、そのON/OFF信号が工程開始を示す信号であれば、当該工程に、一方、工程終了を示す信号であれば、その次の工程に滞留するワーク数を数え、あらかじめ設定した一定数以上のワークが滞留していると判定した場合に、センサが作業を検知できていない可能性があるとみなし、上述のとおり、警告部30にその異常情報を出力する。
以上のことから、ユーザは、フィルタの設定間違いや、センサの光軸がずれていることなどに起因する異常をいち早く検知し、異常の原因究明および処置のための対応に迅速に移行できる。
本実施形態に係る作業時間自動計測システム100においては、さらに、監視結果処理装置3が、センサ4やバーコードリーダ5などの入力装置から供給された検知信号、および/または作業監視装置2が出力した作業信号を用いて、作業時間を計測する処理を行う。
特に、本実施形態に係る監視結果処理装置3は、パルスをワーク(オーダ)ごとにグルーピングすることにより、工程ごとのみならず、ワークごとに作業時間を算出することが可能となる。すなわち、1つの製品が製造されるのにかけられた作業時間などを、その製品ごとに計測することが可能な、作業時間自動計測システム100を構築することが可能となる。以下、グルーピング処理を行う監視結果処理装置3について、さらに詳しく説明する。
〔監視結果処理装置の構成〕
図12は、本実施形態に係る監視結果処理装置3の要部構成を示すブロック図である。監視結果処理装置3は、図12に示すとおり、制御部50、通信部70、操作部81、表示部82、取得信号記憶部91、入力装置−精度レベル対応表92、グルーピング結果記憶部93、および、累積作業時間記憶部94を備えた構成となっている。
通信部70は、作業時間自動計測システム100(図2)において、他の装置との通信を行うものであり、各入力装置からの検知信号、または、作業監視装置2からの、作業監視結果としての作業信号を受信する受信部71を備えている。なお、通信部70は、自装置が出力する作業計測時間を他の装置に送信するための送信部(図示せず)を、さらに備えていてもよい。
操作部81は、ユーザからの指示入力、および情報入力などを受け付けるものであり、例えばキーボードやボタンなどのキー入力手段や、マウスなどのポインティングデバイスなどによって構成される。表示部82は、監視結果処理装置3における各種処理内容(例えば、作業時間計測結果など)を表示するものであり、例えば液晶表示装置、CRT(Cathode Ray Tube)などの表示装置によって構成される。
上述の各部(操作部81、表示部82)は、制御部50が有する入出力制御部(図示せず)を介して、監視結果処理装置3の内部と情報をやりとりする。入出力制御部は、操作部81からの入力情報を受け付けるとともに、表示部82に対して表示制御を行う。
取得信号記憶部91は、受信部71を介して取得した、各入力装置または作業監視装置2からの作業検知信号を記録している。作業検知信号は、どの工程の、どの入力装置により検知されたものであるかを示す識別情報(工程ID/入力装置ID)に関連付けられて保存されている。ここに記録されている作業検知信号は、工程ごと、ワークごとの作業時間や、工程ごと(またはワークごと)の累積作業時間を計測するために、制御部50によって必要に応じて読み出される。
なお、受信部71を介して取得された作業検知信号が作業監視装置2からの作業信号である場合には、作業監視装置2が該作業信号を生成するために用いた検知信号の供給元となる入力装置に関する識別情報に関連付けられて、該作業信号は保存される。
入力装置-精度レベル対応表92は、入力装置のセンシングの精度をいくつかのレベル別に分類したもの(精度レベル)と、作業時間自動計測システム100が監視する各工程に設置された、センサ4やバーコードリーダ5などの全入力装置との対応関係を記録している。入力装置を識別するための入力装置IDと、その入力装置の精度を示す精度レベルとを関連付けて記録する。さらに、本実施形態では、その入力装置が属する工程の工程IDを管理する項目を設け、入力装置を特定することで、工程を特定できる構成としている。またこのように記録すれば、同じ入力装置が作業環境によって、別の工程に設置されることがあって、設置される工程によって精度に変動がある場合などに対応することができる。
なお、精度レベルについては、本実施形態では、「優」「良」「劣」の3段階に分類することとし、「優」から順に精度が高いことを示す。精度レベルの設定方法は、上記に限定されず、数値を用いてもよいし、何段階に分類してもよい。
また、入力装置ごとの精度レベルの割り当ては、入力装置の種類や、過去の誤認率、センシング実績などに基づいてあらかじめ決定しておく。なお、入力装置−精度レベル対応表92を用いたグルーピング処理の詳細については後述する。
グルーピング結果記憶部93は、取得した全作業検知信号に含まれるパルスごとに、そのパルスがどのワークに属しているのかを示すワークIDと、該パルスの入力装置IDおよび工程IDとを対応付けて記録している。さらに、本実施形態では、パルスごとに取得した、該パルスのON信号が入力された時点(=作業開始時点)およびOFF信号が入力された時点(=作業終了時点)の時刻を取得し、記録している。
累積作業時間記憶部94は、各入力装置または作業監視装置2からの作業検知信号を用いて、各工程の作業ごとに算出した作業時間、および、各作業時間の累積結果としての累積作業時間を記録している。これらの作業時間は、制御部50によって、累積作業時間を算出する過程で、必要に応じて読み出される。なお、制御部50によって、算出過程の現時点での累積作業時間が、累積作業時間記憶部94に書き込まれ、必要に応じて読み出される構成にしてもよい。
上記取得信号記憶部91、入力装置−精度レベル対応表92、グルーピング結果記憶部93、および、累積作業時間記憶部94は、例えばハードディスク装置などの不揮発性の記録媒体によって実現される。
制御部50は、監視結果処理装置3における処理を制御するものであり、信号取得部(信号取得手段)51、工程識別部(工程識別手段)52、ワーク識別部(ワーク識別手段)53、時刻抽出部(時刻抽出手段)54、作業時間演算部(作業時間演算手段)55、累積作業時間演算部(累積作業時間演算手段)56、作業時間出力部(作業時間出力手段)57、精度レベル特定部(精度レベル特定手段)58、および、作業時間補正部59を備えている。
工程識別部52、ワーク識別部53、および、精度レベル特定部58が、グルーピング処理部60を構成しており、時刻抽出部54、作業時間演算部55、累積作業時間演算部56、および、作業時間補正部59が、作業時間計測部80を構成している。
信号取得部51は、受信部71を介して、受信データの本文から、入力装置(または作業監視装置2)からの作業検知信号を取得する。
工程識別部52は、受信データのヘッダなどから、入力装置IDを抽出し、該信号の送信元となる入力装置を識別して、該入力装置が属する工程を特定する。なお、送信元が作業監視装置2である場合は、作業監視装置2が挿入した、大元の供給元を示す入力装置IDを抽出すればよい。本実施形態では、工程識別部52は、入力装置−精度レベル対応表92を参照し、入力装置IDに基づいて、対応する工程IDから、取得した作業検知信号がどの工程の作業の監視結果であるのかを特定する。
ワーク識別部53は、1の入力装置から供給された検知信号(または、それが作業監視装置2によって加工された作業信号)について、ON/OFF信号の波形から、パルスを特定し、パルスごとにワークIDを付与する。ワークIDは、1の入力装置によって検出されたON/OFF信号のパルスひとつひとつに割り当てられるシリアル番号である。ワークIDの割り当ては、入力装置ごとに行われ、同一ワークに属するパルスには、同一のワークIDが割り当てられる。
さらに、同一のワークIDを付与する順番は、上流工程に設置された入力装置の検知信号から順に行う(先入れ先出し方式)とは限らず、検知信号を供給する入力装置の種類、または、そのセンシングの精度などに応じて決定される。すなわち、ワークIDを付与する優先順位を、入力装置(の種類/精度)別で決定する。これにより、ワークIDの付与をより正確に行うことができ、結果としてグルーピング処理の精度を向上させることが可能である。
このワーク識別部53が付与するワークIDを用いれば、複数の入力装置から、複数のパルスを含む検知信号を受け取る場合でも、監視結果処理装置3は、1のオーダから完成する1の製品(ワーク)について、そのワークの製造に係る作業を示すパルスを正確に特定する(オーダごとのグルーピング処理を行う)ことが可能となる。ワークIDの割り当て方法については、後段の〔グルーピングアルゴリズム〕の項で詳しく説明する。
なお、ワーク識別部53は、検出したパルスごとに付与したワークIDを、該パルスに対応付けて、グルーピング結果記憶部93に記憶する。
時刻抽出部54は、取得したON/OFF信号のパルス波形に基づき、パルスの開始時点(OFFからONに切り替わる時点)を特定して、作業の開始時刻を取得し、該パルスの終了時点(ONからOFFに切り替わる時点)を特定して、該パルスが示す作業の終了時刻を取得する。取得した作業開始/終了時刻は、工程IDおよびワークIDと関連付けて、グルーピング結果記憶部93に記録され、作業時間を算出する際に用いられる。
作業時間演算部55は、時刻抽出部54が取得した作業開始/終了時刻を用いて、検出されたパルスごとに作業時間を算出する。より具体的には、作業終了時刻と作業開始時刻との差分を作業時間として算出する。算出した作業時間は、累積作業時間記憶部94に記録され、工程ごとまたはワークごとの累積作業時間を算出する際に用いられる。
累積作業時間演算部56は、作業時間演算部55が算出したパルスごとの作業時間を用いて、累積作業時間を算出する。より具体的には、同一工程に属する入力装置からのパルスの全作業時間を合計し、工程ごとの累積作業時間(以下、工程累積作業時間と称する)を算出する。また、各入力装置のパルスの中から、同一ワークに属するパルスの全作業時間を合計し、ワークごとの累積作業時間(以下、ワーク累積作業時間と称する)を算出する。算出した累積作業時間は、累積作業時間記憶部94に記憶される。
作業時間出力部57は、作業時間演算部55、または、累積作業時間演算部56が算出した、1作業ごとの作業時間、または、工程累積作業時間/ワーク累積作業時間を、監視結果処理の処理結果として外部に出力する。上記処理結果は、例えば、制御部50の入出力制御部(図示せず)を介して、表示部82に表示される。
精度レベル特定部58は、取得した検知信号の供給元となる入力装置の精度レベルを特定する。精度レベルの特定は、工程識別部52が取得した、入力装置IDと工程IDに基づいて、入力装置-精度レベル対応表92を参照することで行われる。
作業時間補正部59は、例えば、ある工程の開始(終了)時点の動作を、センサが検知できないため、あるいは、その工程の区切り箇所に正確にセンサを設置することがされないために、正確な作業開始時刻および終了時刻が検出できない作業に対して、作業開始時刻および終了時刻を推測して、補正時刻を割り出す。また、ワーク識別部53によって、ワークの紐付けが行われなかったために、対応するパルスを特定できず、時刻抽出部54が作業開始時刻および終了時刻を取得できなかった作業に対して、推測処理を行って仮の作業時間を算出する。この補正方法については後述する。
次に、従来のグルーピング処理における問題点を示し、それを解決するための本発明のグルーピング処理方法、また、そのグルーピング処理に基づいて作業計測方法について、さらに詳細に説明する。
〔従来のグルーピング処理の課題〕
図22は、従来の先入れ先出し方式に基づいて行われたグルーピング処理の結果を示す図である。図22に示す波形は、6つの工程a〜fからなる生産ラインにおいて、各工程に1つずつ設置された、センサなどの入力装置a〜fよりそれぞれ出力された作業時間を示す検知信号である。検知信号は、時点PからP’までのある時間帯に計測されたものであり、横軸は時間の経過、縦軸の+はON状態、−はOFF状態を表している。ここでは、ON状態が「作業実行状態」を意味している。したがって、1つの信号の山(パルス)が、1のワーク(オーダ)についての、ある工程での「作業(時間)」を示している。
先入れ先出し方式に基づいて、ワークごとのグルーピングの処理を行う場合、上流工程の検知信号から順に、かつ、時系列でワークの紐付けが行われる。すなわち、図22に示すとおり、1つのワークの紐付けの作業は、括弧内に示した数字の順序で(上流工程から下流工程へ)行われる。また、丸で囲んだ数字がワークの番号(ワークID)を示しているが、オーダの発生時刻、つまり、ワークの投入時刻の早いものから順に(左から右へ)行われる。したがって、先頭の工程aの先頭に発生したパルスに対する、第1ワークとの紐付け処理からスタートして、工程b〜fの先頭のパルスに対して第1ワークとの紐付け処理が繰り返される。なお、上流の工程が終了するよりも先に下流の工程の作業が開始されることはないので、紐付け対象となるパルスは、必ず、直前の工程の作業終了時刻以降に発生するパルスが選択される。
このようにすれば、上流工程から下流工程の順に、また、ワーク投入順に、各パルスのワークとの紐付けが可能となる。しかしながらこのグルーピング処理方法では、以下のような問題を生じる。
例えば、入力装置c、および、入力装置dのセンシングの精度が低く、実際に行われた作業を正確に検知することができず、パルス抜け(Err1、2の部分)が発生したとする。上述の方法で、ワークとの紐付け処理を行うと、第3ワークとの紐付けを、入力装置cからのセンサパルスに対して行う段階になって、第3ワークの作業を示すパルスとして、誤ったパルス(Pls11)が選択されてしまう。これは、Err1のパルス抜けによって、パルスPls11が、入力装置cのセンサパルスのうち、直前の工程bの第3ワークの作業終了時刻以降に発生したパルスの中で最も発生時刻が早いパルスとして認識されたためである。
以降も同様にしてワークとの紐付け処理を繰り返すため、パルス抜けによる紐付けのずれは、最後まで修正されることなく、また、パルス抜けが発生すればするほどそのずれは大きくなって、最後まで正確にワークのグルーピング処理が行えないという問題が生じる。つまり、図22に示すとおり、本来は、第6ワークまでに対して作業が行われたのに、第4ワークまでのグルーピング処理しか行えておらず、またこのグルーピングの処理結果は、誤りが多く、信頼できないものであるので、このようなグルーピングの処理結果を用いても、ワーク累積作業時間を計測することはできない。
なお、図22のパルスとパルスを繋ぐ直線について、二重線は、両方あるいは片方のパルスについて正しく紐付けが行えたものを示し、一重線は、両方のパルスともに実際とは異なるワークで紐付けされたものを示し、破線は、最後までワークの紐付けが行えず未処理になったものを示している。
本発明に係る監視結果処理装置3では、先入れ先出し方式にのみ基づいた順序でワークの紐付け処理を行わず、入力装置の種類、または、センシング精度に応じて、ワークの紐付け処理の順序を変更することにより、グルーピング処理の精度を向上させることを可能としている。
〔グルーピングアルゴリズム〕
図2に示す作業時間自動計測システム100における、本発明の監視結果処理装置3のグルーピング処理について、図13〜20に基づき説明する。なお、本実施形態では、作業監視装置2が、各入力装置(センサ4、バーコードリーダ5)からの検知信号を処理し、監視結果処理装置3は、作業監視装置2が処理して出力した作業信号を取得して、グルーピング処理および作業計測処理を行うものとする。なお、作業監視装置2は、上記作業信号に、入力装置IDを付与して監視結果処理装置3に出力するものとする。上記入力装置IDとは、上記作業信号の元となる検知信号を、どの入力装置が作業監視装置2に供給したのかを識別するための識別情報のことである。
図13(a)は、本実施形態に係る監視結果処理装置3において、グルーピング処理を行うグルーピング処理部60のさらに詳細な構成を示すブロック図である。
図13(a)に示す各ブロックに付された各符号は、図1の各構成要素に付された符号に対応しており、同じ符号は、同じ構成要素を示している。したがってここでは説明を省略する。
ワーク識別部53は、付与順序決定部53aおよびワークID付与部53bを備えている。付与順序決定部53aは、ワークID付与部53bが、作業検知信号のパルスにワークIDの紐付け処理を実行する際の、実行対象となる作業検知信号に対して、ワークIDの付与順序を決定するものである。例えば、図22の例では、上流の工程aから下流の工程fの順に、ワークIDの付与順序が決定されているが、付与順序決定部53aは、所定のルールにしたがって、このワークIDを付与する優先順序を変更することができる。この優先順序は、どの工程、および/または、どの入力装置の作業検知信号であるかによって、様々なパターンで決定する。優先順序の決定方法については後述する。
ワークID付与部53bは、工程ごとに取得した作業検知信号に含まれる、作業実行状態を示すパルスに対して、ワークIDを付与するものである。付与すべきワークIDは、どのワークのワークIDがどの工程まで付与済みかによって、刻々と変化するので、本実施形態では、レジスタ群Rnに、次に検出されたパルスにはどのワークIDを付与するかを、工程ごとに一時的に記憶し、ワークID付与部53bがそれを参照して適切なワークIDを付与することとする。レジスタ群Rnに記憶されるワークIDは、例えば、任意の数字(あるいは、文字列)から初めて、ワークIDが付与される度に、数字をインクリメント(ユニークな文字列への変更)されてもよい。
あるいは、さらに、バーコードリーダ5で読み取られたバーコードのデータにワークIDが含まれている場合、信号取得部51が、バーコードリーダ5からバーコードのデータに含まれるワークIDを取得して、レジスタ群Rnの、適切な、いずれかのレジスタに書き込むようにしてもよい。これにより、工程の所々でバーコードリーダ5からワークIDを取得するようにすれば、万一、ワークIDとパルスとの紐付けにずれが生じても、バーコードの読み取りが行われる度にそのずれを解消することが可能となる。
なお、ワーク識別部53は、さらに、文字列判定部53cを備えていてもよい。文字列判定部53cは、上述した、文字列フィルタを用いて、信号取得部51が取得したバーコードのデータ(ワークID)が正しいか否かを判定するものである。例えば、上述のとおり、文字数や、指定位置文字、あるいは、特定文字列などをフィルタリング条件としたフィルタ情報を文字列フィルタ記憶部95に記録しておく。文字列判定部53cは、文字列フィルタ記憶部95を参照し、フィルタ情報に基づいて、取得されたバーコードデータが正しいか否かを判定し、正しいと判定した場合のみ、該バーコードデータに含まれるワークIDを、その入力時刻に応じて、該ワークIDの付与対象となる工程を特定し、適切なレジスタに格納する。
上記構成により、バーコードの誤読を検出し、誤読により取得されたワークIDは、ノイズとして除去、すなわち破棄することで、ワーク紐付け処理におけるずれが発生することを回避することができ、結果として、ワークの紐付け処理の精度を向上させることが可能となる。
図13(b)は、本実施形態に係る監視結果処理装置3の、グルーピング処理の流れの概要を示すフローチャートである。本発明に係るグルーピング処理は、図13(a)に示すとおり、グルーピング処理部60内部の、工程識別部52、ワーク識別部53の各部、および、精度レベル特定部58によって行われる。
まず、操作部81を介して、ワークごとの作業時間算出処理の実行指示をユーザから受け取ると、ワーク識別部53は、例えば、取得信号記憶部91に記憶されている複数の作業検知信号を参照して、それに対応付けられている工程IDおよび/または入力装置IDに基づき、作業検知信号ごとに入力順序を設定する(S101)。入力順序とは、「作業実行中」を示すパルスの発生順序を示す数値であり、実際の作業が行われる順序に基づき設定される。したがって、図2の例では、作業は、左から右に向かって(上流工程から下流工程に向かって)順に実行されているので、入力順序は、
バーコードリーダ5a=1
センサ4a =2
センサ4b =3
センサ4c =4
センサ4d =5
バーコードリーダ5d=6
と設定する。なお、この入力順序は、ユーザによってあらかじめ設定されていてもよいし、試験作業や動作確認などで取得したサンプルとなるパルスの入力時刻から、監視結果処理装置3が自動で設定してもよい。また、工程識別部52が、工程IDを取得した際に、続けて工程の順序に基づいて、入力順序を設定してもよい。
次に、ワーク識別部53は、グルーピング処理を実施する対象となる作業検知信号の総数(iMAX)を取得する(S102)。総数は、入力順序の最下位の数字と同数になるので、それを取得すればよい。ここでは、「6」が、iMAXとして取得される。
次に、ワーク識別部53は、グルーピング処理を実施する対象となるオーダの総数(jMAX)を取得する(S103)。オーダの総数とはすなわち、いくつ分のワークについて紐付け処理を行うのかを示す数値であり、ここでは、例えば、jMAX=6を取得する。つまり、本グルーピング処理は、6つのワークについてパルスの紐付けを行い、処理結果として、作業検知信号のパルスが6つのグループにグループ分けされた時点で処理を終了することになる。
なお、上記変数jMAXは、グルーピング処理の終了条件を規定するものであるので、変数jMAXに限定されず、処理の終了条件を規定するものならなんでもよい。例えば、オーダの総数ではなく、グルーピング処理を実施する対象となる時間帯を取得してもよい。このようにすれば、取得された作業検知信号の、該当する時間帯の部分を抽出して、その範囲内でグルーピング処理を行う。この場合、グルーピング処理可能なパルスがなくなった時点で処理を終了することになる。また、変数jMAXの値(または、時間帯)は、ユーザによってグルーピング処理の実行指示が送られるときに併せて入力されてもよいし、取得信号記憶部91に記録されている任意の作業検知信号が有するパルス数(または、時間帯)に基づいて、自動で決定されてもよい。
そして最終的に、紐付けが完了した6つのグループに対して、それぞれ、バーコードリーダ5から取得したワークIDを関連付けることも可能である。
また、グルーピング処理の開始は、実行指示をユーザから受け取る場合に限定されない。例えば、所望のオーダ数や、時間帯をあらかじめ登録しておき、登録されたオーダ数を満たす作業検知信号、または、所望の時間帯分の作業検知信号を、監視結果処理装置3が取得したことを自身で監視して、グルーピング処理を自動で開始する構成も考えられる。この場合、グルーピング処理を開始するタイミングを示す、上述のオーダ数や時間帯を記憶する記憶部を備え、ワーク識別部53が必要に応じて読み出せるようにすればよい。
次に、ワーク識別部53の付与順序決定部53aは、作業検知信号のパルスに対してワークの紐付け処理(すなわち、ワークIDの付与)を行う、優先順序を設定するための優先順序設定処理を行う(S104)。優先順序は、その作業検知信号に対応付けられた入力装置の種類に基づいて設定されてもよいし(処理方法i)、入力装置のセンシング精度に基づいて設定されてもよい(処理方法ii)。S104の上記各処理方法(i、ii)については後に詳述する。
すべての作業検知信号について優先順序が設定された後は、ワークID付与部53bは、優先順序を示す変数iの初期化を行い(S105)、作業検知信号のパルスごとに、ワークIDを付与するワーク紐付け処理に移行する(S106)。最後に、ワークID付与部53bは、S106にて実施されたグルーピング処理の結果をグルーピング結果記憶部93に記録する(S107)。具体的には、パルスごとに入力装置ID、工程ID、および、ワークIDを対応付けて記録する。
上記方法によれば、S106において、付与順序決定部53aが設定した優先順序に基づき、紐付け処理が行われる。さらに、本発明のグルーピング処理方法によれば、ワークID付与部53bは、すでにワーク紐付け処理が完了している下流工程のパルスが存在する場合、「該パルス開始時点より前に発生したもの」という条件を追加して探索範囲を限定し、その探索範囲内に紐付けすべきパルスが存在するか否かを判定することによって、入力装置のセンシングミスによるパルス抜けを的確に検出することができる。これにより、単なる先入れ先出し方式による紐付けと比べて、グルーピング処理の精度が向上する。
なお、上記パルスの開始時点とは、1つのパルスの波形において、OFF信号からON信号に切り替わった時点のことを指し、反対に、ON信号からOFF信号に切り替わった時点のことを、以下、パルスの終了時点を表記する。
まず、以下では、S104の優先順序設定処理について詳細に説明する。
〔優先順序設定処理〕
(処理方法i)入力装置の種類による紐付け順序の決定
図14は、入力装置の種類によって紐付けの優先順序を設定する優先順序設定処理(処理方法i)の流れを示すフローチャートであり、図17は、作業検知信号に関して、取得信号記憶部91より取得した情報および、処理方法iに基づき行われたグルーピング処理の結果を示している。
図13(b)に示すとおり、S102にて、グルーピング処理を実施する対象となる作業検知信号の総数(iMAX)を取得すると、付与順序決定部53aは、優先順序設定処理を開始する。ここで、付与順序決定部53aは、まず、特定の種類の入力装置に優先的に順序を設定するため、種類別優先順序設定処理(ループ1)を開始し(L1)、次に、残りの入力装置に対して優先順序を設定するための優先順序設定処理(ループ2)を開始する(L2)。
本実施形態では、種類がバーコードリーダである入力装置に対して優先的に順序を設定するものとし、したがって、ループ1の処理はすべてのバーコードリーダに優先順序が設定されるまで実行される。また、上述の例を用いれば、iMAX=6であるので、ループ1およびループ2の処理は、入力装置に6番目の順序が設定されるまで繰り返し実行される(終了条件:i>iMAX)。
まず、付与順序決定部53aは、入力順序が取得された、優先順序が未設定の入力装置のうち、入力装置の種類としてバーコードリーダが有るか否かを判定し(S201)、そのようなバーコードリーダが存在すると判定すれば(Yes)、入力順序が最上位のバーコードリーダの入力装置IDを取得する(S202)。例えば、具体的には、入力順序が1のバーコードリーダ5aの入力装置IDが取得される。次に、バーコードリーダ5aに対して、優先順序iを設定する(S203)。本実施形態の例では、初期値i=1であるので、バーコードリーダ5aに優先順序1が設定される。優先順序が設定されると、次の優先順序を設定するための処理を行って(優先順序iのインクリメント)、S201からS203の処理を繰り返す。ここでは、2回目の処理でバーコードリーダ5dを取得し、優先順序2を設定する。
ここで、最後の優先順序6を設定し終えるかあるいは、優先順序未設定のバーコードリーダが存在すると判定した場合は、次のループ2の処理に移行する。
次に付与順序決定部53aは、優先順序未設定の残りの入力装置のうち、入力順序が最上位の入力装置のIDを取得し(S204)、上述のバーコードリーダのときと同様に、IDを取得した入力装置に対して、優先順序iを設定する(S205)。ここでは、すでに2つのバーコードリーダに優先順序が設定されているので、残りの入力装置、センサ4a、センサ4b、センサ4c、センサ4dに対して、入力順序順にそれぞれ、優先順序3、4
、5、6が設定される。このようにして、最後の優先順序6を設定し終えると(i>iMAX)、ループ2の処理も終了して、入力装置の種類による優先順序設定処理(処理方法i)を終了する。
上記処理方法iを、図2に示す作業時間自動計測システム100に適用すると、優先順序は、図17に示すとおり、
バーコードリーダ5a=1
バーコードリーダ5d=2
センサ4a =3
センサ4b =4
センサ4c =5
センサ4d =6
と設定される。各入力装置の左に記載されている括弧に囲まれた数字が、上記優先順序を示している。これにより、後に続くワーク紐付け処理においては、上述の順番で、1のワークIDが付与される。
(処理方法ii)入力装置の精度レベルによる紐付け順序の決定
図15は、入力装置のセンシングの精度レベルによって紐付けの優先順序を設定する優先順序設定処理(処理方法ii)の流れを示すフローチャートである。図18は、作業検知信号に関して、取得信号記憶部91より取得した情報および、処理方法iiに基づき行われたグルーピング処理の結果を示している。
ループ1の処理は、上述の種類別優先順序設定処理であるので、ここでは説明を省略する。上述の例と同様に、バーコードリーダ5aに1、バーコードリーダ5dに2の優先順序が設定されると、ループ3の精度別優先順序設定処理に移行する(L3)。
まず、精度レベル特定部58は、入力装置-精度レベル対応表92(図12)から、優先順序未設定の入力装置ごとに精度レベルを取得する(S301)。より具体的には、精度レベル特定部58は、入力装置-精度レベル対応表92から、図19(a)に示すとおり、優先順序未設定の入力装置ごとの精度レベルを抽出する。図19(a)の対応表の入力装置ID「S004a〜S004d」は、それぞれ、センサ4a〜4dを示していることから、ワーク識別部53は、残りの入力装置の精度レベル(センサ4d=優、センサ4a=良、センサ4b=劣、センサ4c=劣)を取得する。
次に、付与順序決定部53aは、精度レベル特定部58が取得した精度レベルに基づいて、上記4つの残りの入力装置のうち、精度レベルが最上位の入力装置のIDを取得する(S302)。もし、精度レベルが同じ入力装置が複数存在する場合には、かつ、入力順序が最上位の入力装置を選択すればよい。
続いてIDを取得した入力装置に対して、優先順序iを設定する(S303)。ここでは、すでに、ループ1の処理によって、2つのバーコードリーダに優先順序が設定されているので、残りの入力装置、センサ4d、センサ4a、センサ4b、センサ4cに対して、精度レベル順(または、かつ入力順序順)にそれぞれ、優先順序3、4、5、6が設定される。このようにして、最後の優先順序6を設定し終えると(i>iMAX)、ループ3の処理は終了して、入力装置の精度レベルによる優先順序設定処理(処理方法ii)を終了する。
上記処理方法iiを、図2に示す作業時間自動計測システム100に適用すると、優先順序は、図18に示すとおり、
バーコードリーダ5a=1
バーコードリーダ5d=2
センサ4d =3
センサ4a =4
センサ4b =5
センサ4c =6
と設定される。各入力装置の左に記載されている括弧に囲まれた数字が、上記優先順序を示している。これにより、後に続くワーク紐付け処理においては、上述の順番で、1のワークIDが付与される。
なお、本実施形態では、図15において、処理方法iの種類別優先順序設定処理と組み合わせた優先順序設定方法を採用しているが、上記に限定されず、処理方法iiを単独で用いてもよい。この場合に、さらに、バーコードリーダに、最上位の精度レベルを対応付けて入力装置-精度レベル対応表92に記録しておけば、略同様の結果が得られる。
上述のいずれかの方法を用いて、設定された優先順序に基づき、ワークID付与部53bは、続いて、ワーク紐付け処理を行う(図13のS106)。以下、図16〜17に基づいて、パルス探索範囲を限定したワーク紐付け処理について詳細に説明する。なお、以下では図17の例を用いて、優先順序が、バーコードリーダ5a=1、バーコードリーダ5d=2、センサ4a=3、センサ4b=4、センサ4c=5、センサ4d=6と設定された場合について説明する。
〔ワーク紐付け処理−実施形態1〕
図16は、本実施形態に係る監視結果処理装置3の、探索範囲を限定した紐付け処理の流れを示すフローチャートである。まず、S104、S105(図13)にて、優先順序が決定され、優先順序(i)が初期化されると、ワークID付与部53bは、ワーク紐付け処理を開始する(図16、L4)。ループ4の処理は、グルーピング処理の対象となったワーク(オーダ)分の紐付けを行うまで繰り返される。つまり、上述の例では、図13のS103において、オーダの総数として、jMAX=6を取得したので、ループ4の処理は、6つのワーク(オーダ)についてパルスの紐付けを完了した時点で処理を終了することになる。
ループ4の処理は、1〜6のワークIDを付与するループ5の処理の繰り返し(本実施形態では6回の繰り返し)により成り立っている。ループ5の処理とは、ワークID1〜6のうち1つのワークIDを、当該ワークの先頭工程の作業を示すパルスから、最終工程の作業を示すパルスに至るまで、ひとつひとつ特定して、該パルスワークIDを付与するワークID付与処理(L5)である。ループ5の処理は、1のワークIDjを付与するか否かを、優先順序i〜iMAX(ここでは、1〜6)までの全部の入力装置の作業検知信号において判定した時点で終了となる。
すなわち、上述の例では、図17に示すとおり、6回(作業検知信号総数iMAX)×6回(オーダ総数jMAX)の合計36回の判定が行われることになる。図17に示すパルスの上部に記した丸で囲まれた数字は、付与されたワークIDを示し、バツ印(×)は、判定の結果パルス抜けと判断され、IDが付与されなかった作業検知信号の箇所を示す。いずれにしても、判定は、ループ4、5の処理に基づいた順序で36回行われる。図17の、ワークIDおよびバツ印のそばに小さく付した数字は、判定が行われた順番(回数)を示す。この数字よれば、入力装置の優先順序で、かつ、第1ワークから第6ワーク分まで順番に、ワークIDの付与が実施されたことが分かる。
以下、上記判定のステップを含む、ループ処理5についてさらに詳細に説明する。以下では、ワークID4を付与する段階、(つまり、j=4)の場合について、図16および図17に基づき説明する。
ワークID付与部53bは、まず、優先順序1(iの初期値は1)の作業検知信号を取得する(S401)。次に、取得した作業検知信号以外で、ワークIDj番(ここでは、ワークID4)がすでに付与されているパルスを有する作業検知信号が有るか否かを検知する(S402)。
ここで、例えば、i=1の場合、S401にて取得した作業検知信号は、図17によれば、バーコードリーダ5aの作業検知信号となり、この19回目のID付与処理にして初めてワークID4が付与されるので、ワークID4付与済みパルスが他の作業検知信号で検知されることはない。したがって、ワークID付与済みパルスは無いと判定され(S403においてNo)、S404の処理に移行する。
次に、取得したバーコードリーダ5aの作業検知信号において、ワークIDj−1(ここではワークID3)を付与済みのパルス(図17のPls1)を基準パルスとして選定し、そのパルスの終了時点Kを取得する(S404)。続いて、ワークID4を付与するパルスを探索する探索範囲rを「時点K以降」と定め(S405)、S409以降のワークID4を付与する処理に移行する。
一方、例えば、i=5の場合、S401にて取得した作業検知信号は、図17によれば、センサ4cの作業検知信号となる。この23回目のID付与処理を行う段階では、その上流工程の作業検知信号において、19回目のパルス(Pls2)、21回目のパルス(Pls3)、22回目のパルス(Pls4)、また、その下流工程において、20回目のパルス(Pls5)、にすでにワークID4が付与されていることを、ワーク識別部53は検知する。したがって、ワークID付与済みパルス有りと判定され(S403においてYes)、S406の処理に移行する。
次に、取得したセンサ4cの作業検知信号より上流工程の作業検知信号の該当パルス(Pls2、Pls3、Pls4)のいずれかを下限基準パルスとして選定し、そのパルスの終了時点Qを取得する(S406)。ここでは、センサ4cのC工程に最も近い上流工程であるB工程のパルス(Pls4)を基準パルスとするが、先頭工程のパルス(Pls2)を基準パルスとしてもよい。この場合は、時点qが終了時点として取得される。また、ここで、上流工程に該当パルスが存在しない場合は、探索範囲の下限となるQを取得せずにS407に進む。
続いて、下流工程の作業検知信号の該当パルス(Pls5)のいずれかを基準パルスとして選定し、そのパルスの開始時点Q’を取得する(S407)。ここでは、該当パルス(Pls5)が1つしかないのでそれを上限基準パルスとするが、複数ある場合は、取得したセンサ4cの作業検知信号(C工程)に最も近い下流工程の該当パルスを上限基準パルスとして選択することが望ましい。このようにすれば、上流工程の作業が終了する前に下流工程の作業が開始されることがないような、生産ラインにおいては、上記探索範囲を最小限にすることが可能となり、ワーク識別部53の処理効率が向上し、紐付け対象となるパルスの特定またはパルス抜けの判定の精度が向上する。
最後に、ワークID4を付与するパルスを探索する探索範囲rを、上記下限基準パルスの終了時点Q、および、上限基準パルスの開始時点Q’に基づき、「時点QからQ’まで」と定め(S408)、S409以降のワークID4を付与する処理に移行する。
探索範囲rを特定すると、次に、ワーク識別部53は、取得した作業検知信号(ここでは、センサ4cの信号)において、探索範囲内にワークIDがまだ付与されていないパルスが有るか否かを判定する(S409)。探索範囲内にID未付与パルスがあると判定された場合には(S409においてYes)、その探索範囲内のID未付与パルスの中で、発生時刻の最も早いものを検出する(S410)。そして、検出したパルスにワークIDj(ここでは、4)を付与して(S411)、次の優先順序(i+1)の作業検知信号について、S401移行の処理を繰り返す。
一方、探索範囲内に、ID未付与パルスがないと判定された場合には(S409においてNo)、優先順序i番目のワークIDjの作業を示すパルスは、うまくセンシングされなかったものとみなし、パルス抜けと判断して(S412)、次の優先順序(i+1)の作業検知信号について、S401移行の処理を繰り返す。なお、図17の探索範囲Q〜Q’においては、優先順序5のワークID4の作業を示すパルスは、パルス抜けであると判断される。パルス抜けであると判断された箇所(バツ印、ID付与処理の23回目)は、「優先順序5のワークID4」という情報とともに、グルーピング結果記憶部93に記録される。
上記方法によれば、付与順序決定部53aは、特定された入力装置の種類によって、ワークIDを付与する優先順序を決定し、ワークID付与部53bは、決定した順序に基づいて、ワークIDを付与する。次の優先順序の作業検知信号におけるワークIDの付与については、それまでにワークIDが付与されたパルスの開始時点および終了時点に基づいて、探索範囲を限定し、探索範囲内に存在するパルスのみを当該ワークに属するパルスとして認識し、ワークIDを付与する。そして、探索範囲内に該当するパルスを見出せなかった場合には、パルス抜けが生じたと判断し、紐付けを行わずに、次の紐付け処理に移行する。
例えば、図22に示すとおり、単純な先入れ先出し方式に基づいて紐付けの順序を設定した従来の方法では、Err1部分のパルス抜けによる紐付けのずれを解消できず、さらに、Err2部分のパルス抜けの影響も受けて、誤った紐付けがなされた上に、6つのワークについてのグルーピング処理を完了できていない。
一方、図17に示すとおり、入力装置の種類によって紐付けの優先順序を設定した、処理方法iを適用し、探索範囲を限定してグルーピング処理を行う本発明の方法によれば、例えば、先頭工程の始めと最終工程の終わりに(あるいは、複数の工程の合間に所々)バーコードリーダの読み取りがある場合には、それらのバーコードリーダが出力するパルスから優先的にワーク紐付け処理を行うようにすることが可能である。
これにより、入力順序が最後である最終工程のバーコードリーダ5dからのパルスに対して先に紐付け処理を行うことで、そのパルスを基準にして、紐付け対象となるパルスを探索するための探索範囲を限定することが可能となる。
より具体的には、例えば、図17のErr2部分では、探索範囲を時点QからQ’までに限定することで、本来パルスがあるべき箇所にパルスを検出できなかったことから、パルス抜けを的確に発見することができ、そのような場合には誤った紐付けを行わないようにする。
これにより、パルス抜けが生じても、ワーク識別部53のワークID付与部53bは、そのパルス抜けを検知し、パルス抜けのために、紐付けにずれが生じることを防止する、あるいは、すでに生じている紐付けのずれを吸収する。結果としてグルーピング処理の精度を向上させることができる。
さらに、上述のバーコードリーダのみならず、すべての入力装置について、センシングの精度の高いものから順に、優先順序を設定する(処理方法iiを適用する)ことで、グルーピング処理の精度はさらに向上する。
例えば、図18に示すとおり、精度レベル「劣」のセンサ4b、4cの作業検知信号パルスよりも優先的に、精度レベルの高い(「優」と「良」の)センサ4a、4dの作業検知信号パルスからワークの紐付け処理を行うことにより、図17の例では解消できなかったErr1部分のパルス抜けによる紐付けのずれを回避することができる。
具体的には、図18に示すとおり、第3ワークの紐付け処理に関し、センサ4bのパルスを紐付ける段階では、センサ4aのパルス(Pls6)と、センサ4dのパルス(Pls7)とに対する紐付け処理が先に完了していることにより、探索範囲rを時点Qから時点Q’に限定して、パルスの探索を行う。このため、この探索範囲rに該当パルスが存在しないことから、パルス抜けを的確に判断することが可能となる。図17の例では、探索範囲rの上限がQ”の時点であったため、該当パルス(Pls8)が紐付けられてしまっていた。
同様に、Err2部分のパルス抜けも的確に判断し、最後の第6ワークまで、正しく紐付け処理を行うことができる。結果として、グルーピング処理の精度をより向上させることが可能となる。
以上のように、ワークごとのグルーピング処理が行われると、最後に、ワークID付与部53bは、グルーピング処理の結果をグルーピング結果記憶部93に記録する。具体的には、図19(b)に示すように、パルスごとにパルスIDを付与し、入力装置ID、工程ID、および、ワークIDを対応付けて記録する。なお、図19(b)のテーブルに、パルスの開始時点と終了時点とを格納する項目を設けてもよい。
なお、パルス抜けと判断されて紐付けされなかったときは、ワークID付与部53bは、入力装置ID、工程IDに対して、仮想パルスIDを付与し、本来は、存在するはずのパルスに紐付けられるべきであったワークIDと、実際はそのようなパルスが存在せず紐付けが行われなかったことを示すNull値とを対応付けて記録する。これは、累積作業時間演算部56がパルス抜けを加味して累積作業時間を算出するのに必要となる。
〔ワーク紐付け処理−実施形態2〕
上述の実施形態では、バーコードリーダからの作業検知信号のパルスに対して優先的に紐付けをおこなうグルーピング処理を、取得信号記憶部91にあらかじめ記録されている一定分量の作業検知信号に対して適用し、一定分のワーク(オーダ)ごと、工程ごとの作業時間を算出する場合(オフライン出力/バッチ処理)について述べたが、本発明のグルーピング処理方法、ならびに、作業時間算出処理方法は、上記の場合に限定されない。
例えば、パルスが発生した(監視結果処理装置3に入力された)時刻順に順次ワークIDが付与され、そのワークIDに基づき、ワークごとの作業時間を順次積算する場合(オンライン出力/リアルタイム処理)にも適用できる。本発明のグルーピング処理をリアルタイム処理に適用した場合でも、図22に示した、単なる先入れ先出し方式に基づくグルーピング処理の方法と比較して、グルーピング処理の精度を向上させるという、本実施形態と略同様の効果が得られる。以下、図2の作業時間自動計測システム100の例を用いて、本変形例について説明する。
なお、本変形例においては、入力装置がバーコードリーダ5である場合、バーコードリーダ5は、バーコードの読み取り作業を示すON信号だけでなく、バーコードリーダ5が読み取ったバーコードデータに含まれる、ワークを識別するためワークIDを文字列形式で監視結果処理装置3に供給するものとし、監視結果処理装置3は、上記文字列形式で取得したワークIDを用いて、ワークの紐付けを行うこととする。
なお、バーコードリーダ5は、先頭工程と、先頭工程以外の工程の少なくとも1箇所に設定されている構成であればどのような生産ラインでもよい。さらに、バーコードリーダ5が最終工程に配置されている構成が望ましい。これは、本変形例において、バーコードリーダ5の入力信号から取得されるワークIDおよびその入力時刻が最も確実で正確なので、最終工程にバーコードリーダ5を配置しておけば、紐付けのずれが生じても、最終工程の段階で確実にそのずれを吸収することができるからである。
図20は、監視結果処理装置3に供給された作業検知信号に関して、リアルタイム処理にて行われたグルーピング処理の結果を示している。
図17、18と同様に、丸で囲まれた数字はワークIDを、そのそれぞれに付与された小さな数字は、そのワークIDが付与された処理が行われた順番を示している。時間はPからP’へと経過する。つまり、作業検知信号上の左にあるパルスほど発生時刻が早い。したがって、本変形例では、ワークIDの付与はリアルタイム処理で行われているので、左にあるパルスから順に、ワークIDが付与される。
リアルタイム処理で、ワークIDが付与される場合、従来の単なる先入れ先出し方式に基づくグルーピング処理の方法であれば、図22に示した結果と同じになる。一方、バーコードリーダからの作業検知信号のパルスに対して優先的に紐付けをおこなうグルーピング処理を適用すれば、図20に示すとおり、Err1、および、Err2部分のパルス抜けによる紐付けのずれを吸収することが可能となる。
すなわち、ワーク識別部53(図12)は、最終工程のD工程において、第3ワークのバーコード読み取りが行われた時点(S)で、ワークID3を読み取って、第3ワークの紐付けを完了する。これにより、センサ4dの作業検知信号上の時点S以降のパルス(例えば、Pls9)が誤って第3ワークに紐付けされるのを回避する。結果として、Err1部分のパルス抜けによるずれを吸収する。また、第4ワークのバーコード読み取りが行われた時点(T)でも同様に、第4ワークの紐付けを完了し、例えば、センサ4dのパルス(Pls10)が誤って紐付けされるのを回避する。これにより、Err2部分のパルス抜けによるずれを吸収することができる。
本変形例では、生産ラインの先頭工程と最終工程でのみバーコードリーダを読み取るようにしたが、バーコードの読み取りを、複数の工程からなる生産ラインの複数箇所で読み込むようにすれば、グルーピング処理の精度を高める効果は特に大きい。例えば、不良を発生した製品をラインから抜き取ったり、抜き取ったあとにラインに復帰させたりすることでセンサがその製品を検知できない場合や、光電センサの光軸が何かのはずみでずれてしまい、正しくセンシングできない場合が考えられるので、センサからの検知信号のみを取得して、そのパルスを単純な先入れ先出し方式でグルーピングすることは難しい。しかし、本発明の監視結果処理装置3によれば、バーコードリーダから製品ID(ワークIDまたは、オーダID)の入力が行われる度に、その段階で紐付けにずれが生じていてもそのずれを修正することが可能となる。
以上のことから、リアルタイム処理でワークの紐付けを行う場合においても、グルーピング処理の精度を向上させることが可能となる。これにより、監視結果処理装置3は、ワークごとの累積作業時間を都度算出し、リアルタイムでその時点での最新のワーク累積作業時間をより正確に出力することが可能となる。
続いて、監視結果処理装置3が、上述のグルーピング結果記憶部93の情報を用いて、作業時間を計測する方法について説明する。
〔作業時間算出処理〕
作業時間計測部80の時刻抽出部54、作業時間演算部55、および、累積作業時間演算部56が、監視結果処理装置3に入力される作業検知信号を用いて、作業時間を算出する。上記作業検知信号は、ON/OFF信号で、1つの工程の、1つの作業を、1つのパルス(ON信号の山になる部分)で表現する。すなわちON信号が「作業実行中」を示しており、そのON信号が継続している時間を求めることで作業時間を算出することができる。
時刻抽出部54は、上記作業検知信号からパルスを検出し、パルスの開始時刻および終了時刻を取得する。取得した時刻は、図19(b)の表に示すとおり、パルスごとにグルーピング結果記憶部93に記録される。なお、バーコードリーダからの入力信号については、読み取りによってデータが入力された時点の時刻を取得するのみでよい。
これにより、作業時間演算部55は、上記パルスの終了時刻と開始時刻との差分から、1パルスの1作業分の作業時間を算出する。算出結果は、累積作業時間記憶部94に記録される(図19(c))。なお、作業検知信号が含むパルスで、ワークIDが付与されなかったパルスについても、工程IDに対応付けることで作業時間が記録されてもよい。
2.累積作業時間を算出する
累積作業時間演算部56は、累積作業時間記憶部94を参照し、パルスごとに算出された作業時間を積算して累積作業時間を算出する。工程ごとに作業時間を算出した工程累積作業時間は、例えば、図19(d)に示すように、累積作業時間記憶部94に記録される。ワークごとに作業時間を算出したワーク累積作業時間は、例えば、図19(e)に示すように、累積作業時間記憶部94に記録される。
上記構成によれば、入力装置ごとに供給された作業検知信号は、グルーピング処理部60によって解析される。より詳細には、まず、工程識別部52が、上記作業検知信号の供給元である入力装置、その入力装置が設置されている工程をそれぞれのIDより特定する。ワーク識別部53は、入力装置からの作業検知信号に含まれるパルスごとにワークIDを付与し、グルーピング処理を行う。
続いて、上記のグルーピング処理結果を用いて、作業時間計測部80の累積作業時間演算部56は、ワーク累積作業時間を算出する。
これにより、監視結果処理装置3は、より高い精度でグルーピング処理を行い、そのグルーピング処理結果に基づいてワーク累積作業時間を算出するのでより正確に、ワークごとの作業時間を算出することが可能となる。
(作業時間の算出・出力のタイミング)
なお、監視結果処理装置3における作業時間算出、および算出結果出力の方法は、取得した作業時間のデータを利用する目的によって変更可能である。つまり、グルーピング処理部60および作業時間計測部80内の各部の機能をそのままに、作業時間計測処理開始のトリガ、作業時間算出手順、算出結果出力のタイミングを変えることによって、利用目的に応じた作業時間の情報をユーザが利用できるように、監視結果処理装置3を構成することが可能となる。
(算出方法i)リアルタイム処理(オンライン出力)
例えば、算出された作業時間のデータを進捗管理に利用する場合、作業時間の実績値をできるだけ早く入手できることが望ましい。このような場合に対応するために、監視結果処理装置3は、各種入力装置(あるいは、作業監視装置2)から作業検知信号が入力され、パルスが検知されたら順次作業時間を算出し、リアルタイム処理にてデータ出力を行う。
したがって、グルーピング処理部60は、信号取得部51が作業検知信号を取得したのをトリガにして、グルーピング処理を開始、続いて、作業時間計測部80は、作業時間計測処理を開始する。複数の入力作業検知信号から複数の作業検知信号が入力され、工程識別部52およびワーク識別部53は、図20に示した、パルスが検出された順に、工程ID、ワークIDの対応付けをそれぞれ行う。引き続き、時刻抽出部54、作業時間演算部55は、パルスが検出された順にパルスごと(作業ごと)の作業時間を算出し、累積作業時間演算部56は、作業時間が算出されると随時加算処理を行う。したがって、その時点での、工程累積作業時間、ワーク累積作業時間、生産ラインの総作業時間などをリアルタイム処理で算出し、これらの算出結果を、作業時間出力部57を介して、表示部82などにリアルタイムで出力する。
これにより、ユーザは、生産ラインにおける、その時点での、工程累積作業時間、ワーク累積作業時間、生産ラインの総作業時間などをリアルタイムで確認することができ、進捗管理に利用することができる。
(算出方法ii)バッチ処理(オフライン出力)
例えば、算出された作業時間のデータを工程分析に利用する場合、できるだけ正確に求められた作業時間を取得できることが望ましい。このような場合に対応するために、監視結果処理装置3は、各種入力装置(あるいは、作業監視装置2)から作業検知信号が入力され、工程分析に必要な所定のパルス数(あるいは、所定の時間分の作業検知信号)を蓄積したら、グルーピング処理、および、作業時間算出処理を開始し、ユーザが所望する範囲の作業時間のデータをバッチ処理にて出力する。
1作業分の作業時間、工程累積作業時間、および、ワーク累積作業時間の算出手順は、実施形態1で述べたのでここでは説明を省略する。作業時間計測処理の開始のトリガ、および、出力のタイミングは、ユーザによって操作されてもよいし、あらかじめ設定しておいた条件を満たしたら、自動で開始(出力)するように定めておいてもよい。いずれにしても、制御部50が、ユーザからの指示入力または作業検知信号入力を監視し、作業時間算出開始(結果出力)のタイミングを判定して、グルーピング処理部60および作業時間計測部80が動作する。これにより、ユーザが所望する範囲の作業時間のより正確なデータを所望するタイミングで入手することが可能となる。
(パルス抜けによるワーク累積作業時間の誤差補正)
なお、ワーク累積作業時間を算出するときに、先のグルーピング処理によって、パルス抜けがあると判断された場合、図19(b)の表の「Null」値のように、実際作業は行われているのに、作業時間を算出するための作業開始時刻と終了時刻を取得できないという状況が生じる。したがって、ワーク累積作業時間を算出しても、パルス抜けが多ければ多いほど、実作業時間よりも短い時間が算出されてしまい、その情報の信頼性も低下する。
そこで、累積作業時間演算部56が、ワーク累積作業時間の算出過程で、例えば、図19(b)の表からNull値取得した場合、作業時間補正部59は、そのNull値に対応する工程の他のパルスから平均作業時間を算出し、それを、仮想の作業時間としてNull値に替えて、累積作業時間演算部56に供給する。これにより、パルス抜けによるワーク累積作業時間の誤差を縮めることが可能となる。
(取得時刻補正)
生産ラインに作業時間自動計測システム100を適用する場合、各工程にセンサを設置する際(つまりシステム導入時)、あらかじめ定められている工程の区切りを検知するためには、工程の始め(終わり)の動きを検知できるセンサを当該工程の区切りの箇所に設置すればよい。
しかしながら、設置の自由度の低いセンサでは、例えば設備の物理的な制約から、工程の区切りに正確にセンサを設置することができない(あるいはセンサが工程の区切り時点における動きを検知できない)場合がある。このような場合には、センサは、工程の区切りの前後で、設置可能な(動きを検知可能な)場所に設置され、工程開始(終了)時点の前後に発生する動きを検知する。すなわち、人が管理する工程の区切りと、システムが検出可能な工程の区切りは、必ずしも一致せず、むしろ異なることの方が多い。
上述した例では、工程の区切り、つまり、ある工程の開始(終了)時点の動作を、センサによって正確に検知できない。したがって、時刻抽出部54が、パルスの開始時点/終了時点から、正確な開始時刻、終了時刻を検出できず、作業時間が算出できないという状況が生じる。
この場合、作業時間補正部59は、上記の問題を解決するために、以下の補正方法を用いて、実際の作業開始(終了)時刻を推測して作業時間演算部55に供給する。
なお、本実施形態では、作業検知信号を供給するセンサごとに、「該センサが工程の区切りに設置できなかったために時刻の補正が必要である」あるいは「補正は必要ない」という情報をあらかじめ補正情報記録部(図示せず)に記録しておく。これにより、作業時間補正部59は、信号取得部51を介して作業検知信号を受信し、取得した作業検知信号に対して、時刻の補正が必要か否かの判断を行うことができる。
・時刻補正方法1
補正方法1は、作業開始・終了時刻のいずれかが検出できなかった場合に適用する。作業時間補正部59は、時刻を取得したいが、取得するのが困難な箇所(所望箇所)の前後いずれかで、なおかつ時刻を取得することが可能な箇所(取得可能箇所)の時刻を取得し、その時刻に、あらかじめ定められた補正時間、つまり±αの時間(秒、分、時など)を付加することで、所望箇所の時刻を取得する。
図21(a)は、時刻補正方法1の補正例を示す図である。例えば、ある作業の終了時刻(tx)が取得できない場合、少し前部にある取得可能ポイントPの時刻(t1)を取得し、そこから時間α(例えば、秒)を加えることで、実際の工程終了時刻(tx)を求める。
なお、上記補正情報記録部には、時刻補正の要・不要の情報の他に、さらに、上述の取得可能箇所と、その箇所の時刻に付加すべき補正時間(±α秒、分、時間、など)との情報が記録されている。作業時間補正部59は、上記補正情報記録部を参照して、取得した作業検知信号ごとの、「取得可能箇所」と「補正時間」とから、正確な工程の区切り時点の時刻を求めることが可能となる。
・時刻補正方法2
補正方法2は、所望箇所に対して、その前後の取得可能箇所の時刻を取得して、所望箇所の時刻を求める方法である。この方法では、あらかじめ設定しておいた分割比率αを用いて、所望箇所の時刻を下記式(1)で計算する。ここで、
所望箇所の時刻:x
所望箇所前部通過時刻:a
所望箇所後部通過時刻:b
分割比率:α(0<α<1)
とすると、所望箇所の時刻xは、
x=a+(b−a)×α ・・・(1)
で求めることができる。
図21(b)は、時刻補正方法2の補正例を示す図である。例えば、作業の終了ポイントEの時刻(x)の取得が困難であるが、前後2箇所(Pe、Pl)の時刻(a、b)は取得可能である。「前部取得可能ポイント(Pe)と作業の終了ポイント(E)との間の作業時間」と「作業の終了ポイント(E)と後部取得可能ポイント(Pl)との間の作業時間」に統計的に一定比率α:1−αが成り立つ場合、作業の終了時刻(x)を、上記式(1)を用いて求める。
以上のことから、ある作業の開始(終了)時点間際(工程の区切り)の動作が、センサによって検知されない場合、また、工程の区切りにセンサが設置できない場合に、時刻抽出部54が正確な開始時刻、終了時刻を検出できない場合でも、作業時間を算出することが可能となる。
なお、上述の補正方法2では、上記補正情報記録部に、上記所望箇所前部の取得可能箇所、後部の取得可能箇所、および、分割比率を、作業検知信号(センサ)に対応付けて記録させておく。これにより、作業時間補正部59は、補正情報記録部を参照して、補正時間を求めて、正確な工程の区切り時点の時刻を求めることが可能となる。
また、監視結果処理装置3の作業時間計測部80を、作業監視装置2が有している場合、この作業時間補正部59および補正情報記録部は、作業監視装置2が備えていてもよい。
以上のように、本発明の作業時間自動計測システム100は、手組みラインにおける各工程の作業時間を高い精度で特定することが可能な作業監視装置2と、パルスとワークとのグルーピング処理を行うことにより、ワークごとの累積作業時間を計測することが可能な監視結果処理装置3とを含んでいるので、作業の開始と終了を機械的に特定することが難しい手組みラインにおいて、ワークごとの作業時間をより高い精度で計測することが可能となる。
作業監視装置2は、センサ4から取得したON/OFF信号の入力をそのまま用いるのではなく、ON−OFF信号間の間隔や複数のセンサのON/OFF状態の遷移の仕方を判断材料として、ノイズを除去することで、手組みライン特有の作業のやり直しや作業者ごとの微妙な手順の違いによるセンサの入力波形のばらつきを吸収することができ、これまで不可能であった手組みラインにおける作業時間の常時自動計測が実現できる。
例えば、製品の通過時刻を知りたいポイントに光電センサなどの比較的安価なセンサを設置すれば、そのON/OFF信号から作業時間を取得するという構成のため、既存ラインに対して、治工具の改造や変更を行う必要がなく、またビデオで撮影したあとに画像処理を施す従来手法に比べて低コストで導入できるため特に効果が大きい。
なお、本実施形態では、フィルタリング処理部40を有する作業監視装置2から供給された作業信号と、少なくとも1箇所の工程の作業場所に配置されたバーコードリーダ5からの入力信号とを用いて、監視結果処理装置3のグルーピング処理部60が、作業を示すパルスとワークとのグルーピング処理を行うことにより、作業時間計測部80がワークごとの累積作業時間を計測する構成とした。しかし、本発明に係る作業時間自動計測システム100は、上記構成に限定されるものではない。例えば、作業監視装置2を介さず、各工程に設置された、複数のセンサ4またはバーコードリーダ5から直接取得した信号を用いても、ワーク別グルーピング処理を行うことが可能であり、したがって、ワークごとの累積作業時間を計測することが可能となる。あるいは、監視結果処理装置3が作業時間計測部80を有していない構成の場合は、グルーピング処理部60によって行ったグルーピング処理結果を、作業時間計測部80を有する作業監視装置2または他の装置に送信し、グルーピング処理結果を取得した装置がワークごとの作業時間を計測するようにすれば、本実施形態と略同様の効果が得られる。
なお、上述した各実施形態において、本発明の作業監視装置2および監視結果処理装置3が有する各記録部に記録されている情報を、テーブル構造で表現したが、各記録部に記録されるデータは、テーブル構造に限定されず、上述の目的を達成できるものであれば、どのようなデータ構造で記録されてもよい。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
最後に、作業監視装置2および監視結果処理装置3の各ブロック、特にフィルタリング処理部40、グルーピング処理部60、および、作業時間計測部80内の各部は、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
すなわち、作業監視装置2および監視結果処理装置3は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである作業監視装置2および監視結果処理装置3の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記作業監視装置2および監視結果処理装置3に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
また、作業監視装置2および監視結果処理装置3を通信ネットワークと接続可能に構成し、上記プログラムコードを、通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。