JP6583537B2 - 動作情報生成装置 - Google Patents

動作情報生成装置 Download PDF

Info

Publication number
JP6583537B2
JP6583537B2 JP2018505894A JP2018505894A JP6583537B2 JP 6583537 B2 JP6583537 B2 JP 6583537B2 JP 2018505894 A JP2018505894 A JP 2018505894A JP 2018505894 A JP2018505894 A JP 2018505894A JP 6583537 B2 JP6583537 B2 JP 6583537B2
Authority
JP
Japan
Prior art keywords
work
motion
partial
data
samples
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018505894A
Other languages
English (en)
Other versions
JPWO2017159562A1 (ja
Inventor
安藤 丹一
丹一 安藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Publication of JPWO2017159562A1 publication Critical patent/JPWO2017159562A1/ja
Application granted granted Critical
Publication of JP6583537B2 publication Critical patent/JP6583537B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31449Monitor workflow, to optimize business, industrial processes
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36184Record actions of human expert, teach by showing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39137Manual teaching, set next point when tool touches other tool, workpiece
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Description

本発明は、作業を効率的に行うための最適動作を生成し伝承するための技術に関する。
ものづくりの現場などでは、熟練者(エキスパート)の技能をどのように伝承させるか、という問題が顕在化している。そのため、従来より、熟練者の技能伝承を支援する方法や熟練者の技能をデジタル化する方法などが提案されている(特許文献1〜3参照)。
産業用ロボットに、熟練者が手本を示して、ティーチングを行う方法がある。機械学習によってロボットに自己学習させる方法も提案されているが、所定の作業効率を獲得するまでに非常に多くのトライを繰り返す必要があるため、実用的でない。それゆえ、ロボットのティーチングに関しては、機械学習よりも人によるティーチングの方が効率的であることが多い。
特開2005−215314号公報 特開2007−275933号公報 特開2013−172193号公報
新しい作業をロボットにティーチングするためには、まずは作業者自身がその作業を何度も繰り返し、その作業に習熟しなければならない。熟練者の効率的な動作をロボットに記憶させなければ、意味がないからである。しかしながら、限られた時間のなかで、新しい作業の最適手順を見出し、それを再現できる程度まで習熟することは、たとえその分野のエキスパートであっても簡単ではない。その作業が複雑な形状の部品の組み立てであったり、動線が複雑であったり、作業ステップが多い場合などは、なおさらである。
なお、ここまでの文脈では、産業用ロボットのティーチングを例に挙げて課題の説明を行ったが、同様の課題は他の技術分野や他のアプリケーションにおいても起こり得る。
本発明は上記実情に鑑みなされたものであり、作業を効率的に行うための最適な動作を自動的に生成する技術を提供することを目的とする。
上記目的を達成するため、本発明は以下の構成を採用する。
本発明に係る動作情報生成装置は、作業の開始から終了までの人の動作に関わる情報を作業データとして記録する作業データ記録部と、作業の開始から終了までの全体動作を複数の部分動作に分ける動作分類部と、同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成する動作合成部と、を有することを特徴とする。この構成によれば、作業データの複数のサンプルから、作業全体の最適化だけでなく部分動作ごとの局所最適化も図られた、より良い最適動作(手本)を自動で生成することができる。
同じ作業を複数回行い記録された作業データの複数のサンプルのうちから、作業効率の良い2つ以上の良サンプルを選択する動作選択部をさらに有し、前記動作合成部は、選択された前記2つ以上の良サンプルを用いて前記最適動作のデータを生成するとよい。これにより、無駄な動作を含むサンプルを除外することができ、より信頼性の高い最適動作の生成が可能となる。前記動作選択部は、作業全体の作業時間に応じて所定数または所定割合のサンプルを前記良サンプルとして選択するとよい。例えば、前記動作選択部は、作業全体の作業時間が最も短いものから順に所定数または所定割合のサンプルを前記良サンプルとして選択するとよい。
作業者の動きを検出する1つ以上のセンサを有し、前記作業データ記録部は、前記センサから得られるセンサデータを記録するとよい。これにより、作業者の動きを自動で収集することができる。またセンサデータにより作業者の動きを客観的な物理量として捉えることができる。例えば、前記センサは、作業者の身体に装着された動きセンサを含むとよい。身体に装着された動きセンサを用いることで、作業者の身体の動きを直接的かつ正確に捉えることができる。
前記動作分類部は、前記作業データに基づき作業者の身体の動きの変化点を検出し、前記動きの変化点を基に前記全体動作を前記複数の部分動作に分けるとよい。これにより、妥当な単位で部分動作の分類が可能となる。
前記動作合成部は、所定の評価基準を用いて各サンプルの部分動作を評価することにより、前記最良の部分動作を選択するとよい。例えば、前記所定の評価基準は、部分動作の作業時間を含むとよい。また、前記所定の評価基準は、作業品質、作業者の安全性、作業者の疲労度、動作の再現容易性のうちの少なくとも1つを含むことも好ましい。
前記動作合成部は、異なるサンプルの第1の部分動作と第2の部分動作を接続する場合に、前記第1の部分動作の最後の動きと前記第2の部分動作の最初の動きを整合させる部分動作整合部を有するとよい。これにより動きがスムーズで且つ矛盾のない最適動作を生成することができる。
なお、本発明は、上記構成ないし機能の少なくとも一部を有する動作情報生成装置として捉えることができる。動作情報生成装置は、単体の装置で構成してもよいし、複数の装置の組み合わせで構成してもよい。また、本発明は、上記処理の少なくとも一部を含む動作情報生成方法、または、かかる方法をコンピュータに実行させるためのプログラム、または、そのようなプログラムを非一時的に記録したコンピュータ読取可能な記録媒体として捉えることもできる。上記構成および処理の各々は技術的な矛盾が生じない限り互いに組み合わせて本発明を構成することができる。
本発明によれば、作業を効率的に行うための最適な動作を自動的に生成することができる。
図1は動作情報生成装置のハードウェア構成を示す外観図である。 図2は動作情報生成装置の機能構成を示すブロック図である。 図3は作業と部分動作の関係を模式的に示す図である。 図4は動作情報生成処理のフローチャートである。 図5は組み立て作業の一例を示す図である。 図6は作業データ記録部のフローチャートである。 図7は作業データ記録部のGUIの例である。 図8は動作選択部のフローチャートである。 図9Aと図9Bは動作分類部の内部構成を示す図である。 図10は動作分類部のフローチャートである。 図11は動作合成部の内部構成を示す図である。 図12は動作合成部のフローチャートである。 図13は最適動作の画面表示例を示す図である。 図14は最適動作の画面表示例を示す図である。
本発明に係る動作情報生成装置は、ある作業を行う人の動作を複数回記録したデータを基にして、その作業に対する最適な動作(手本の動作)を自動的に生成するための装置である。以下に述べる実施形態では、工場での製品組み立て作業の最適化に本発明を適用した例を挙げるが、本発明の適用範囲はこの例に限られない。例えば、工芸品の作製、装置やシステムの操作・運転・メンテナンス、手術における手技や手順など、様々な分野やアプリケーションにおける最適動作(手本)の生成に適用することができる。また、本発明に係る装置で生成される最適動作のデータは、ロボットや各種装置の制御、エキスパートの技能のアーカイブ、新人作業者などの教育ツール、シミュレータの開発など、様々なアプリケーションへの応用が可能である。
<動作情報生成装置の構成>
図1と図2を参照して、本発明の実施形態に係る動作情報生成装置の全体構成について説明する。図1は、動作情報生成装置のハードウェア構成を示す外観図であり、図2は、動作情報生成装置の機能構成を示すブロック図である。本実施形態の動作情報生成装置100は、人110または物111に装着したセンサ101から取得されるセンサデータにより、作業を行う人110の動作を分析し、より良い動作を客観的に評価できるようにする。
(ハードウェア構成)
動作情報生成装置100は、主なハードウェアとして、1つ以上のセンサ101と情報処理装置102を有して構成される。
情報処理装置102は、例えば、プロセッサ(CPU)、メモリ、記憶装置(ハードディスク、半導体ディスクなど)、入力装置(キーボード、マウス、タッチパネルなど)、表示装置、通信装置などのハードウェア資源を有する汎用のコンピュータにより構成することができる。図2に示す動作情報生成装置100の機能は、記憶装置に格納されたプログラムがメモリにロードされ、プロセッサにより実行されることにより、実現されるものである。なお、情報処理装置102は、一台のコンピュータにより構成してもよいし、複数台のコンピュータによる分散コンピューティングにより構成してもよい。また、情報処理装置102の機能の一部をクラウドサーバにより実現してもよい。また、処理の高速化のため、情報処理装置102の機能の一部または全部を専用のハードウェア(例えばGPUやFPGA、ASICなど)を用いて実現することも可能である。
センサ101は、作業を行う人110の動作をデータとして記録するためのデバイスである。人110の動作を直接的または間接的に検出ないし推定することができれば、いかなる種類・方式のセンサを用いてもよい。例えば、センサ101には、人110をセンシングするセンサ、人110が作業中に取り扱う物(以下「作業対象」と呼ぶ)111をセンシングするセンサ、人110と作業対象111の間の介在物をセンシングするセンサなどが含まれる。以下、センサ101の一例を挙げるが、動作情報生成装置100はすべてのセンサ101を備える必要はなく、装置構成、作業の種類や内容、用途などに応じて必要なセンサ101を設ければよい。
人110をセンシングするセンサ101としては、頭部・視線・手・足・胴体などの動きをセンシングする動きセンサを用いることができる。例えば、人110の左右の手首に装着した加速度センサや角加速度センサを用いることで、組み立て作業における右手と左手の動きを検出できる。さらに、指先に加速度センサや角加速度センサを装着することで、指先の動きを検出することもできる。人110に装着するセンサでなく、画像センサ(カメラ)で撮影した動画を解析することで人110の動きや周囲の物との関係をセンシングすることもできる。或いは、人110に装着したマーカを、磁気センサや赤外線センサで検知することで、人110の動きをセンシングすることもできる。
また、人110をセンシングするセンサ101としては、表情・目の動き・顔の動かし方をセンシングする顔画像センサ、手・足・首・胴など身体の各部に取り付けた電極で筋肉の動きをセンシングする筋電センサ、人110の視線の方向や注視している箇所をセンシングする画像センサなどを用いることができる。
センサ101の形態は問わない。例えば、スマートフォンの備えるセンサを利用してもよいし、スマートウォッチやスマートグラスなどのウェアラブル装置の備えるセンサを利用してもよい。
作業対象111とは、組み立て作業の場合であれば組み立ての対象となる部品であるし、装置の操作・運転の場合であればその装置である。作業対象111の状態も人110の動作に影響を与え得るので、間接的な情報として作業対象111の状態をセンシングした情報を用いることで、人110の動作の正確な評価に役立つ可能性がある。例えば、作業対象111の空間的な位置を検出するセンサ、作業対象111の姿勢を検出するセンサ、作業対象111の状態(加速度、温度、色、形状などの状態の変化)を検出するセンサ、作業対象111の環境状態(周囲の温度、湿度など環境に関する物理量や情報)を検出するセンサなどを例示できる。
人110と作業対象111の間の介在物とは、組み立て作業の場合であれば組み立てに用いる工具や装置である。このような介在物の状態も人110の動作に影響を与え得るので、間接的な情報として介在物の状態をセンシングした情報を用いることで、人110の動作の正確な評価に役立つ可能性がある。例えば、介在物の空間的な位置を検出するセンサ、介在物の姿勢を検出するセンサ、介在物の状態(温度、色、形状などの状態の変化)を検出するセンサ、介在物の環境状態(周囲の温度、湿度など環境に関する物理量や情報)を検出するセンサなどを例示できる。また、人110の操作により介在物に作用する力、介在物に関連する物理量(加速度、振動、切削音など)などを検出するセンサを用いてもよい。例えば、自動車の運転の場合であれば、運転操作部に取り付けたセンサにより、ステアリング操作、アクセル操作、ブレーキ操作、各種のスイッチ操作などを検出してもよい。
(機能構成)
図2に示すように、動作情報生成装置100は、センサ情報入力部201、対象情報入力部202、隣接作業情報入力部203、作業データ記録部204、動作選択部205、動作分類部206、動作合成部207、動作評価部208、動作改善部209、データ変換部210、結果出力部211を有する。
センサ情報入力部201は、センサ101からセンサデータを取得する機能である。対象情報入力部202は、作業対象111の情報(例えば、部品ID、部品の内部情報や関係状態、装置の仕様など)を取得する機能である。隣接作業情報入力部203は、隣接作業の情報(例えば、生産ラインにおける上流工程や下流工程の作業の内容や進捗など)を取得する機能である。作業データ記録部204は、センサ情報入力部201、対象情報入力部202、および隣接作業情報入力部203により取得した情報に基づき、作業の開始から終了までの人の動作に関わる情報(「作業データ」と呼ぶ)を記憶装置に記録する機能である。例えば、同じ作業を複数の人に複数回ずつ行わせることで、作業者や習熟度の異なる複数の作業データが記録される。
動作選択部205は、作業データ記録部204により記録された複数の作業データのうちから良いものを選択する機能である。動作分類部206は、選択された作業データをもとに、作業の全体動作を複数の部分動作に分割・分類する機能である。動作合成部207は、部分動作ごとに最良の部分動作を選択し、それらを合成することで作業全体として最適化された最適動作を生成する機能である。動作評価部208は、動作合成部207により生成された最適動作を評価する機能であり、動作改善部209は、必要に応じて、最適動作のさらなる改善を行う機能である。動作評価部208と動作改善部209の処理は任意であるため、これらの機能部を省略しても構わない。
データ変換部210は、動作合成部207により生成された最適動作のデータを、利用方法に合わせた形式に変換する機能である。結果出力部211は、データ変換部210により変換された最適動作のデータを出力する機能である。
<作業の定義>
本実施形態では「作業」を「設定された目的(課題)を遂行するために人が身体の一部または全部を使って行う行為」と定義する。したがって、作業の実施過程では必ず人の動作が発生する。また、目的を遂行するための手続きや手順は任意とすることで、作業データの記録時には、作業を実施する人によって、あるいは、作業の習熟度合によって、作業の実施過程で行われる動作にある程度の違いが生じるようにしてもよい。
図3に模式的に示すように、一つの作業には開始と終了があり、作業の全体動作は連続した複数の部分動作の組み合わせによって構成されると考えることができる。ある部分動作は次の部分動作に影響を与える。逆にいうと、途中の部分動作は、それまでの動作の結果を引き継いで行われる。多くの場合、途中の部分動作を省くことはできない。
作業の実施には制約要件がある。例えば、作業対象に関する要件として、作業対象の初期状態・途中経過状態・最終状態に関する条件、作業対象の状態に関する条件などがある。人(作業者)に関する要件としては、身体が危険な領域に入らないような動作範囲の制限、人の動作速度の限界、人の動作精度の限界、運動性能、身体の部分(手、足、指など)の物理的大きさなどがある。介在物に関する要件としては、作業者や作業対象を傷つけないような使い方の制限などがある。また、最適動作を機械に実施させるのであれば、機械の性能、可動域、動作コストなどの要件もある。最適動作は、これらの制約要件を満たすように生成する必要がある。
<最適動作の生成方法>
次に、動作情報生成装置100による最適動作の生成方法の概要を説明する。図4に動作情報生成処理のフローチャートを示す。
(1)作業データの記録
ある一つの作業を作業者に複数回実施させて、作業データ記録部204によって、それぞれの作業データを記録する(ステップS400)。作業の開始と終了(データ記録の開始と終了)は、人がボタン押下などで指示してもよいし、センサ101の信号に基づき自動で判定してもよい。作業の実施は、一人の作業者が複数回行ってもよいし、複数の作業者が一回ずつまたは複数回ずつ行ってもよい。人による手順の違いや習熟によるノウハウ・技能を生かすため、望ましくは、複数の作業者それぞれに複数回ずつ実施させるとよい。これにより、同じ作業について複数の作業データが取得される。以下、個々の作業データを「作業サンプル」または単に「サンプル」とも呼ぶ。
作業データは、少なくとも、センサ情報入力部201から取得されるセンサデータを含む。また、必要に応じて、作業データは、対象情報入力部202から取得される作業対象の情報、隣接作業情報入力部203から取得される隣接作業の情報を含む場合もある。
(2)サンプルの選択
作業データ記録部204によって複数の(例えば、数十から数百の)作業サンプルが収集されたら、動作選択部205が、複数の作業サンプルのうちから作業効率の良いサンプルを選び出す(ステップS401)。このステップは、最適動作(手本)の候補を大まかに絞り込む処理である。例えば、動作選択部205は、所定の評価基準を用いて各サンプルの作業効率を評価し、作業効率の良いものから順に所定数または所定割合のサンプルを選択するとよい(あるいは、作業効率の悪いサンプルを除外してもよい)。
このような選択操作により、無駄な動作が多い作業サンプルを除くことができる。選ばれた作業サンプルは、効率的な動作を含むサンプルといえる(以下、「良サンプル」と呼ぶ)。ただし、最上位の作業サンプルであっても、全ての部分動作が最良であるとは限らない。そこで、以降のステップでは、ここで選択した複数の良サンプルを基に、最良の部分動作を組み合わせることで最適動作(理想の手本)を生成する処理を行う。
(3)動作の分類
動作分類部206は、動作選択部205によって選択された作業サンプルを解析することにより、作業の開始から終了までの全体動作を複数の部分動作に分割・分類する(ステップS402)。
動作の分類は、作業者の動作の分類もしくは作業対象の中間状態の分類、またはその両方の分類に基づいて行うことができる。作業者の動作は、部分動作がつながった一連の動作となる。作業サンプルごとに作業者の動作は少しずつ異なるが、制約要件があるため、各部分動作は概ね同じような動作となる。作業者の動作によって、作業対象は初期状態から一連の中間状態を経て最終状態となる。作業対象の位置、姿勢、状態などの変化に基づいて作業対象の中間状態を分類できる。作業者の部分動作に対してセンサ101により検出された情報と、作業対象のそれぞれの中間状態に対してセンサ101により検出された情報を用いて、動作の分類を行うことができる。
動作の分類は、動きの変化に基づき行うことができる。例えば、作業者の手に装着したセンサにより、手の動き情報(位置、向き、速度、角速度、加速度、角加速度など)を表す動きベクトルの時系列データが得られる。この動きベクトルの変化点に着目すると、手の加速・減速・停止・方向転換などが分かるので、動きの変化(部分動作の切り替わり)を捉えることができる。あるいは、Deep Learningによる分類技術を利用してもよい。例えば、Deep Learning技術であるリカレントニューラルネットワーク(RNN)を用いて、時系列のデータを学習させることができる。複数の作業サンプルそれぞれの時系列データを学習データとして与え、Deep Learningによる学習を行うと、分類に適した特徴が自動抽出されて、作業内の一連の動作が所定の個数の部分動作に自動で分類される。作業対象の中間状態を用いて動作の分類を行う場合も、同じような処理を適用できる。例えば、作業対象の状態(部品の組み合わせ、位置、姿勢など)を用いて中間状態を設定して、隣接する中間状態の間を所定の個数の部分動作に分割してもよい。そうすると各部分動作が同じ状態間の遷移となるので、分類が容易になる。なお、本実施形態では動作の分類はデータ解析により自動で行うことを想定しているが、分類作業の一部を人が行うようにしてもよい。
分類の結果、動作全体が複数のグループに分類されることがある。その場合には、それぞれのグループごとに以下の処理を行い、最良のグループを選択する。例えば、組み立て作業で、部品の取り付け順序が相違した場合や異なる手で作業を行った場合などに、複数のグループに分類される。人がその作業にある程度習熟した段階になれば、無駄な部分動作が少なくなっていることが期待できる。したがって、複数のグループは、それぞれ比較的良い作業を含む。
動作の分類を行う際には、作業対象から検出された情報を用いるとよい。また、工具やアクチュエータ、他の機械など、介在物から検出された情報を加えて分類を行うこともできる。例えば、工具の振動や反力、位置、稼働状況などを検出して、分類情報として用いることができる。あるいは、隣のロボットのセンサ情報を分類情報として用いることができる。作業者の属性や作業対象の属性ごとに分類を行うようにしてもよい。分類は、個々の部分動作が同じ基準で分類されるようになっていればよい。必ずしも、人が見たときの分類と一致していなくてもよい。作業のバリエーションが多く、所定の分類数まで分類できない場合は、一つの作業を複数の作業に分割し、それぞれの分割作業について分類を行うとよい。分類が適切であるかは、同じ分類に属するサンプルの間の類似度を用いて評価できる。適切に分類されていれば、サンプル間の類似度が高くなる。
(4)動作の合成
動作合成部207が、複数の良サンプルから部分動作ごとに最良の部分動作を選択し、選択した最良の部分動作を合成することによって作業全体の最適動作のデータを生成する(ステップS403)。具体的な方法としては、いずれかの良サンプルをベースとし、そのうちの一部の部分動作を他のサンプルのより良い部分動作に置き換えていく方法と、部分動作ごとに最良のサンプルを特定し、特定されたサンプルの部分動作を順番に合成する方法とがあり、どちらの方法を用いてもよい。本実施形態では前者の方法を用いる。
まず、動作合成部207は、ステップS401で選択された作業サンプルのなかから最も作業時間の短いサンプルをベースサンプルに選ぶ。このベースサンプルのなかの一部の部分動作を、より効率のよい他のサンプルの部分動作に置き換えることによって、全体として最適動作とすることができる。ただし、ベースサンプルが所定の条件を満たしたとき(例えば、作業時間が目標時間を下回ったときなど)には、ステップS403〜S405の処理をスキップし、ベースサンプルをそのまま最適動作のデータとして出力してもよい。
次に、動作合成部207は、部分動作ごとに、ベースサンプルと他のサンプルの作業効率を比較し、より良いサンプルがあればその部分動作に置き換える。例えば、ある位置から別の位置に作業対象を移動させる経路が、サンプルごとに微妙にぶれているときに、最短距離の移動に置き換えることができる。
ただし、人の動作にはばらつきがあるので、同じ作業をしても異なる動きをする。これに伴い作業対象の動きも異なることになる。したがって、部分動作を置き換える場合には、人の動きや作業対象の動きが不連続とならないよう、次のような制約要件を考慮する必要がある。動作は連続して行われるので、前の部分動作の最後と次の部分動作の最初とで、人の身体の位置は同じでなければならない。作業対象の位置や姿勢についても、前の部分動作の最後と次の部分動作の最初とで、同じでなければならない。また、組み立て作業は3次元空間のなかで行われるので、異なる物体が同じ位置を占めることはできないとか、物体は他の物体を避けて移動しなければならない、といった空間的な制約がある。また、人や作業対象の速度には上限がある。また、前の部分動作の最後と次の部分動作の最初とで、人や作業対象の速度(速さと方向)は同じでなければならない。
部分動作を合成するときに、制約要件を満たすように部分動作の一部を変形させて接続することもできる。接続は、人の動作の接続と、作業対象の動きの接続とがある。人の動作や作業対象の動きを接続するとき、前の部分動作の最終状態と後の部分動作の開始状態とで、位置や姿勢が異なる場合がある。その場合、前後の部分動作の間で位置、向き、速度などが一致するように、各部分動作の動きベクトルを微調整するとよい。
動作評価部208により、上記手順で生成した最適動作の評価(ステップS404)を行うことも好ましい。最適動作かどうかの評価基準は、最も単純には、作業時間(作業の開始から終了までに要する時間)が最短かどうかという基準である。評価基準には、作業時間以外にも、作業品質、安全性、疲労度、再現容易性、対象に与える影響度などを加えることもできる。その他組み立て作業全体のなかで、他に与える影響を評価するようにしてもよい。
その後、動作改善部209が、必要に応じて、最適動作を微調整する(ステップS405)。ステップS404の評価において改善点が見つかれば、関連する部分動作について、評価結果が改善するように変更することができる。改善方法としては、他のサンプルに含まれる部分動作に置き換える方法、改善すべき点を作業者に明示し作業者に作業を再トライさせることでより良いサンプルを取得する方法、部分動作の一部を変形させて接続する方法などがある。作業中のどの部分動作に関わる動作をどのように改善すべきか、ということを客観的に明示することで、さらなる効率化を期待できる。ここでは、動作を、作業時間で最適化した後に微調整する例を示したが、1つの評価関数で複数の評価基準を同時に評価するようにしてもよい。その場合、改善ステップS405は不要となる。
(5)データの変換
データ変換部210は、上記手順で得られた最適動作のデータを、出力先の要求仕様(利用方法)に合わせた形式に変換する(ステップS406)。合成された最適動作のデータは、例えば、人や作業対象の動きを表すベクトル列で与えられる。具体的には、単位時間ごとの位置および向きを表す動きベクトルの時系列データなどの形式で最適動作が表現される。最適動作のデータを利用する装置やアプリケーションが要求する仕様が、同じであれば、データ変換は省略できる。
(6)結果の出力
結果出力部211は、合成した最適動作を出力する。出力の方法、出力先、データの利用法は様々考えられる。
例えば、最適動作の動きベクトルの時系列データを記録した電子ファイルを出力してもよい。これによって、別の装置やアプリケーションにおいて最適動作のデータを利用することができる。また、結果出力部211は、画面上に動きベクトルをグラフ表示してもよい。これによって、センサで検出した項目ごとに動作の内容を確認できる。部分動作に名前や識別番号を付与することで、部分動作を特定して詳細に確認できるようにしてもよい。あるいは、合成された最適動作と、個々の作業者の個々の動作または平均動作とを比較した表示を行ってもよい。
最適動作の動きベクトルを3次元CGによる身体の動きに変換し、CGによる最適動作の再現動画を表示してもよい。これによって、最良のサンプルや合成された最適動作について、人の動作や作業対象の動きを動画で確認することができる。このとき、個々の作業者の作業を撮影した動画と、CGによる最適動作の動画とを並べて表示することで、作業効率が悪い部分を見つけることができる。このような表示は作業者教育に好適である。
作業者のリアルタイムの動きと最適動作とを比較し、作業者に比較結果を通知してもよい。例えば、作業者の動きをセンサで監視し、最適動作のデータとリアルタイムで比較する。作業者の動きと最適動作の差が所定の閾値より大きいときに、作業者が装着したセンサやウェアラブル端末から、通知音や振動によって、作業者の動きが適切でない旨を通知する。このような仕組みによれば、作業者は自身の動きが最適な動きに沿っているかどうかをリアルタイムに把握できる。また作業を繰り返すことで、作業者は部分動作のそれぞれについて最適な動作を効率よく習得することができる。
最適動作のデータを、他の装置の制御データとして利用することができる。例えば、最適動作のデータをロボットや製造装置などの機械を制御するデータに変換して出力することができる。これにより、従来人が行っていたロボットのティーチングが不要となる。しかも、人のエキスパートが習得した技能やノウハウを機械に伝承することができる。
<実施例>
次に、工場での組み立て作業を例にとり、動作情報生成装置100のより詳しい実施例を説明する。この実施例では、複数の作業者が実際に組み立て作業を行って得られる知見を、他の作業者や機械に伝承できるようにする。作業者に人型ロボットのような機械を含むようにしてもよい。
(組み立て作業)
評価は作業全体を部分に分けて行うことができる。段階的に評価を進めることで、全体として複雑な作業であっても、各部分は比較的シンプルな動作となる。例えば30個の部品を組み立てる作業になると、中間状態の組み合わせが膨大になるので、容易には類推できない。しかし、3個の部品を取り付ける例であれば、効率の良い作業手順が容易に類推できる。
例えば、以下の部分の分析を行う。図5に示すように、3つの穴があるベース部品501に、長さが違う3個の部品502a、502b、502cを取り付ける作業を想定する。ベース部品501にある穴501a、穴501b、穴501cに、部品箱503aにある部品502a、部品箱503bにある部品502b、部品箱503cにある部品502cをそれぞれ挿入して取り付ける。ベース部品501には前後にフレーム501d,501eが取り付けられているため、部品502a、部品502b、部品502cの取り付けは、フレーム501d,501eを避けて行う必要がある。
この例では、部品502aを位置504aを経由して手前のフレーム501dの奥を通して穴501aに挿入した後、部品502bを位置504bを経由して手前フレーム501dの奥を通して穴501bに挿入し、部品502cを位置504cを経由して手前フレーム501dの手前から通して穴501cに挿入する作業手順が早い。奥の部品502aを先に挿入して、部品502cを後にすることで、部品502cを手前フレーム501dを回避して穴501cの位置まで移動させる動作が容易になる。
上記作業を行った時の各センサ101の出力を、作業データ記録部204により記録する。作業を所定の回数繰り返すと、各作業者は作業に習熟してくるため、作業時間が短くなる。ただし、最も短い時間で作業を行った作業者の組み立て動作が最適であるとは限らない。部分動作の単位でみれば、他の作業者の部分動作の方が良い場合があり得るからである。
この例の場合、部品の組み合わせは4!通りあるが、組み合わせた状態を保持できない組み合わせは使えない。この例では、3個の部品を取り付ける順序の組み合わせがある。それぞれの取り付け順序は、作業性が異なる。先に取り付けた部品が、後に取り付ける部品の取り付け作業に影響を与えるためである。例えば、先に手前の2個を取り付けると、手前の2個が邪魔するため、奥に取り付ける部品の取り付け作業の作業性が悪くなる。
工場においては、作業ごとに最適な作業手順を規定する必要がある。従来は、人の手で事前に作業手順書が作成されて、作業者は渡された手順書に従って作業を行っていた。しかし、多品種少量生産の場合には、作業手順が多岐にわたるため、現場での学習によって効率の良い作業手順が見いだせることが望ましい。これに対し、本実施例の装置では、実際の作業を行ったときの作業性に関連するさまざまなセンサデータをもとに、より効率の良い動作を評価できるようになる。
評価する作業の例は次のようなものである。この例では、ベース部品501に3個の部品502a,502b,502cを取り付ける作業について記録が行われる。記録される一連の動作は以下のようになる。作業者は、3個の部品502a,502b,502cそれぞれについて、部品を部品箱からピックアップして、ベース部品501の穴に向けて近づけていき、穴に嵌め込む動作を行う。作業者は、移動する途中で、他の物体を避けて部品を移動させる。穴に近づいたら穴に嵌め込めるように、穴と部品の空間的姿勢を合わせて、穴に沿って嵌め込めるような位置関係に近づける。穴の入り口に部品の先端を差し込む。嵌め込みが完了したことを確認し、手を離す。このような、一連の動作のそれぞれの作業速度が、全体の作業時間に影響を与える。一連の動きは、複数のセンサで検出されて、多次元のベクトルとして記録される。
(装置の動作)
(1)作業データの記録
図6に作業データ記録部204の処理フローを示す。まず、作業データ記録部204は、組み立て作業に対し複数の中間状態を設定し、中間状態のリストを作成する(ステップS600)。作業データ記録部204は、図7に示すように中間状態のリスト700を表示装置に表示し、作業者に2つの中間状態を選択させる(ステップS601)。図7は、中間状態1(作業の開始点)として「ベース部品の設置」が、中間状態2(作業の終了点)として「棒状部品を組み付け」が、それぞれ選択された例である。作業データ記録部204は、選択された中間状態1から中間状態2までの作業の実施を作業者に指示する(ステップS602)。図7の例では、作業の開始を促すメッセージ701とともに開始ボタン702と終了ボタン703が表示されている。作業者が開始ボタン702を押すと動作情報生成装置100がセンサ101から各種センサデータの取り込みを開始する。作業データ記録部204は、センサ101から取り込まれたデータに基づき、中間状態1から中間状態2までの動作を記録した作業データを生成し、記憶装置に格納する(ステップS603)。作業者が終了ボタン703を押すまで、作業データの記録が行われる。
本実施例では、作業者の右手首に装着された動きセンサにより、単位時間ごと(例えば0.1秒ごと)の作業者の右手首の位置および向きを記録した多次元ベクトルの時系列データが作業データとして記録される。例えば、5人の作業者がそれぞれ10回ずつ作業を行い、その動作を記録することにより、50個の作業サンプルが得られる。
(2)サンプルの選択
図8に動作選択部205の処理フローを示す。動作選択部205は、作業データ記録部204によって記録された50個の作業サンプルを、所定の評価基準を用いて、評価の良いものから順にソートする(ステップS800)。本実施例では作業時間が短い順にソートする。ただし、評価基準としては、作業の安全性や作業者あるいは部品に与える影響を評価する評価尺度を用いてもよい。次に、動作選択部205は、50個の作業サンプルのなかから評価の良い上位20%のサンプルを選択し(ステップS801)、選択したサンプルをリストにする(ステップS802)。本実施例では、作業時間が短い順に10個のサンプルの作業データが記述されたリストが得られる。以下、選択された評価の良いサンプルを「良サンプル」、良サンプルのうち最も評価の良いものを「最良サンプル」と呼ぶ。
(3)動作の分類
図9Aに、動作分類部206の内部構成の一例として、動きの変化に基づき動作を分類する場合の構成例を示す。この動作分類部206は、動きベクトル抽出部901、変化点検出部902、類似点検出部903、分類生成部904、分類結果出力部905を有する。
図10のフローチャートに沿って、動作分類部206の処理フローを説明する。まず、リストから良サンプルの作業データが1つ読み込まれる(ステップS1000)。動きベクトル抽出部901は、作業データから作業者の右手首の位置および向きを記録した多次元ベクトルの時系列データを読み出し、それを時間微分することによって速度および角速度を要素としてもつ動きベクトルの時系列データを生成する(ステップS1001)。変化点検出部902は、動きベクトルの時系列データを解析することで、作業者の動きの変化点を検出する(ステップS1002)。例えば、停止状態から動き始めた時、動きを止めた時、速度を急に上げた/下げた時、移動方向を変えた時などを動きの変化点として検出することができる。変化点検出部902は、検出した変化点を記述した変化点リストを作成する(ステップS1003)。ステップS1000〜S1003の処理をすべての良サンプルについて行うことで(ステップS1004)、10個の良サンプルそれぞれの変化点リストが得られる。
次に、類似点検出部903が、変化点リストを参照し、最良サンプルにおける変化点のそれぞれについて、他の良サンプルにおける変化点のなかから動きの変化が類似する類似点を検出する(ステップS1005)。これは、最良サンプルと残りの良サンプルとの間で動作の対応点を探索する処理である。1つの変化点について類似点がみつからない場合もあれば、複数の類似点がみつかる場合もある。類似点の検出には、伸縮マッチングや遺伝的アルゴリズムを利用することができる。類似点検出部903は、最良サンプルにおける各変化点に対応する類似点を記述した類似点リストを作成する(ステップS1006)。
次に、分類生成部904が、最良サンプルの変化点リストを基に、最良サンプルにおける作業の全体動作を複数の部分動作に分ける(ステップS1007)。最良サンプルに含まれる変化点が少なければ(例えば数個であれば)、変化点で区切られる単位を部分動作としてもよい。変化点の数が多い場合(例えば数十以上)などは、変化点リストに含まれる変化点のうちから数個の特異点を抽出し、その特異点で区切られる単位を部分動作とすればよい。この場合、変化が特に大きい点、移動方向が変わる点、他の良サンプルに類似点が存在する点などを優先的に特異点に選んでもよい。なお、部分動作の分類作業の一部をユーザが行うようにしてもよい。例えば、分類生成部904により分類された部分動作を表示装置に提示し、ユーザによる修正(部分動作の統合や再分割)を可能にすることができる。
次に、分類生成部904は、最良サンプルの動きベクトルの時系列データを部分動作ごとのデータに分割するとともに、類似点リストに基づき、他の良サンプルの動きベクトルの時系列データについても部分動作ごとのデータに分割する(ステップS1008)。最後に、分類結果出力部905が、部分動作リストを作成し出力する(ステップS1009)。部分動作リストは、部分動作ごとに、10個の良サンプルの動きベクトルのデータが記述されたリストである。
なお、ここまで動きの変化に基づき動作を分類する場合の構成および処理の例を説明したが、Deep Learningの技術を利用して動作の分類を行うことも可能である。その場合の動作分類部206は、図9Bのように、良サンプルの作業データを入力する作業データ入力部910と、入力された作業データを分類する深層ニューラルネットワーク911と、分類結果に基づき部分動作リストを作成し出力する分類結果出力部912とで構成できる。この構成の場合も、深層ニューラルネットワーク911による分類結果を提示し、ユーザによる修正を可能にしてもよい。
(4)動作の合成
図11に、動作合成部207の内部構成の一例を示す。動作合成部207は、最良部分動作判定部1101、最良全体動作判定部1102、部分動作更新部1103、部分動作整合部1104、合成動作リスト出力部1105を有する。
図12のフローチャートに沿って、動作合成部207の処理フローを説明する。まず、最良部分動作判定部1101が、部分動作リストを読み込む(ステップS1200)。そして最良部分動作判定部1101は、所定の評価基準を用いて各サンプルの部分動作を評価し、評価の良い1つまたは所定数のサンプルを記述した最良部分動作リストを作成する(ステップS1201)。本実施例では部分動作の作業時間が短いものから順に3個のサンプルを選び、それらのデータを最良部分動作リストに記述する。ただし、評価基準としては、作業時間、作業品質、作業者の安全性、作業者の疲労度、動作の再現容易性、対象に与える影響度のうちの1つまたは複数の評価尺度を用いてもよい。ステップS1200〜S1201の処理をすべての部分動作について行うことで、部分動作ごとの最良の動き(局所最適解)のデータを取得することができる。
次に、最良全体動作判定部1102が、10個の良サンプルのなかからベースとなるベースサンプルを選択する(ステップS1203)。例えば、作業全体の作業時間が最も短い最良サンプルをベースサンプルに選べばよい。あるいは、ステップS1201で作成した最良部分動作リストにおいて最も登場回数の多いサンプルをベースサンプルに選んでもよい。
次に、部分動作更新部1103が、先頭の部分動作から順に、ベースサンプルの部分動作と最良部分動作リストの部分動作とを比較し(ステップS1204)、最良部分動作リストの部分動作の方が良い場合には(ステップS1205)、ベースサンプルの部分動作を最良部分動作リストの部分動作で置き換える(ステップS1206)。ここでも、ステップS1201で用いた評価基準と同じ基準でどちらの部分動作が良いかを判定すればよい。ただし、後段の整合処理を簡単にするため、作業時間や作業品質などの評価基準だけで単純に判定するのではなく、前後の部分動作との整合性(接続のしやすさ)を考慮することも好ましい。ステップS1204〜S1206の処理がすべての部分動作について行われる(ステップS1207)。
ステップS1206において部分動作の置き換えが行われた場合、前後の部分動作との間で動きの整合(接続)を行う必要がある。そこで、部分動作整合部1104が、異なるサンプル間での部分動作の整合(接続)を行う(ステップS1208)。サンプル1の部分動作Aとサンプル2の部分動作Bを接続する例を説明する。作業者が部品の組み立て作業をスムーズに且つ矛盾なく行うには、部分動作Aの最後と部分動作Bの最初において、少なくとも、作業者の手の位置・向き・速度および作業対象の位置・姿勢が一致している必要がある。したがって、部分動作整合部1104は、部分動作Aの後半部分と部分動作Bの前半部分それぞれの動きベクトルを微調整し、部分動作Aから部分動作Bにかけて動きベクトルが連続的に変化するようにする。例えば、遺伝的アルゴリズムやカーブフィッティングなどの手法により、動きベクトルの調整を行うことができる。遺伝的アルゴリズムを用いる場合は、手や作業対象の動きのなめらかさを評価基準として、各世代の動きを比較することで、動きベクトルの変化のさせかたを最適化できる。
上記のように部分動作の置き換えおよび整合が行われた後、合成動作リスト出力部1105が、各部分動作の動きベクトルのデータを記述した合成動作リストを出力する(ステップS1209)。この合成動作リストが、前述した組み立て作業の最適動作を表すデータである。合成動作リストで規定される動きベクトルに従って作業を行えば、作業時間を最も短くすることができる。
動作評価部208により、他の評価基準を用いて合成動作リストの良否を評価してもよい。このとき、合成動作リストの作業全体を評価してもよいし、合成動作リストを構成する個々の部分動作を評価してもよい。有用な評価基準としては以下のものが例示できる。
・「作業品質」 作業品質は高い方が望ましい。例えば、組み立て後の組み付け精度、組み立て工程後の検査結果などを評価尺度として用いることができる。
・「安全性」 組み立て作業中に怪我や事故が発生してはならないので、安全性は高い方が望ましい。例えば、作業者の身体や作業対象と他の物体との間の距離(干渉や衝突の危険性の低さ)、作業者の身体と進入禁止エリアの間の距離、工具の扱い方法などを評価尺度として用いることができる。
・「疲労度」 作業者の疲労度が少ない方が望ましい。例えば、作業者の手の加速度の積分値、作業者の移動距離、血圧・心拍・血流などの身体的変化をセンシングした結果などを評価尺度として用いることができる。
・「再現容易性」 合成により最適動作を作成しても、作業者あるいはロボットがその動作を再現できなければ意味が無い。例えば、最大速度が大きすぎないこと、速度変化が大きすぎないこと、位置や姿勢の許容誤差が大きいこと(少しずれてもリカバリが容易であること)などを評価尺度として用いることができる。
・「作業対象に与える影響」 例えば、部品をつかむときの位置や圧力、組み立て中の変形、台に作業対象を置くときの衝撃、作業中の温度変化など、作業対象に与える影響の大きさを評価尺度として用いることができる。
その他、組み立て作業全体のなかで他に与える影響を評価するようにしてもよい。例えば、搬送機に乗せるときの作業対象の姿勢などは下流工程への影響があるため、評価尺度に加えてもよい。また上述した複数の評価尺度を組み合わせてもよい。評価尺度を組み合わせる場合には、重み付けすることもできる。
動作改善部209は、必要に応じて、合成動作リストの一部を改善することができる。作業時間で評価した場合は、動作合成部207で生成された合成動作リストが最適かもしれないが、他の評価基準に着目したときには、他のサンプルの動作の方が良いことがあり得るからである。例えば、合成動作リストのなかのある部分動作の安全性が所定のレベルに到達していない場合、安全性のより高い別のサンプルの部分動作に置き換えることができる。
(5)データの変換
データ変換部210は、上記手順で得られた合成動作リストを、出力先の要求仕様(利用方法)に合わせた形式に変換する。
(6)結果の出力
結果出力部211は、合成動作リストで規定される最適動作を出力する。出力の方法、出力先、データの利用法は様々考えられる。
例えば、動作をパラメータ化した情報をそのまま出力してもよい。図13は、作業者の手の水平面(XY平面)内の動きをグラフ化して、画面表示した例である。実線が合成動作リストで規定される最適動作を示し、破線はある作業者が行った動きを示している。実線グラフを見ることで、最適な動かし方を把握できる。また、実線グラフと破線グラフを比較することで、自分の動きの無駄を容易に知ることができる。
合成動作リストに基づき3次元CGによる最適動作の再現動作を生成し、画面表示してもよい。図14は、CGによる最適動作の動画と、比較対象である作業者の組み立て作業の撮影動画を並べて表示した例である。2つの動画を見比べることで、作業者は自分の動作の改善点を把握することができる。この画面において、最適動作と作業者の動作の差が大きい部分を強調表示したり、そのときの動きをグラフ表示してもよい。さらに、動作の差や改善ポイントを言語情報として出力してもよい。例えば部品のピックアップのときの指摘事項として、「部品をつまんだ後、上に持ち上げるときの速度が遅いようです。」と表現することで、作業者に改善ポイントをわかりやすく通知することができる。
また、動作の評価結果を出力してもよい。個々の部分動作ごとに、様々な評価基準で評価した結果を画面に出力することができる。例えば、作業時間のみでなく禁止動作の有無や対象にかかる負担、消費エネルギー量など様々な評価基準を用いて客観的に判断できるようになる。
結果出力部211は、各種データを電子ファイルで出力してもよい。例えば、後の分析用に個々の作業データや最適化された動作を電子ファイルとして出力して、属性を付与してデータベースに登録することができる。
また、最適動作のデータを機械の制御情報に変換することができる。これにより、ベテラン作業者の技能を機械に伝承することができる。例えば、工具の振動や反力、対象の色や温度などをセンサで検出して、作業の分類に用いることで、切削作業や溶接作業など、組み立て作業よりも伝承が困難な作業についてパラメータ化して伝承することができる。例えば、切削工程で反力が増減する特定の事象や、切削音が変化する特定の事象を基点にしてベテラン作業者が作業を行っている場合、それが作業の分類に反映されることで、機械に伝承されるようになる。
以上述べた本実施形態の動作情報生成装置100によれば、複数の作業サンプルを基に、作業全体の最適化だけでなく部分動作ごとの局所最適化も図られた、より良い最適動作(手本)を自動で生成することができる。
なお、上述した実施形態の構成は本発明の一具体例を示したものにすぎず、本発明の範囲を限定する趣旨のものではない。本発明はその技術思想を逸脱しない範囲において、種々の具体的構成を採り得るものである。
本明細書に開示された技術思想は以下のような発明として特定することもできる。
(付記1)
動作情報生成装置であって、
ハードウェアプロセッサと、プログラムを記憶するメモリとを有し、
前記ハードウェアプロセッサは、前記プログラムにより、
作業の開始から終了までの人の動作に関わる情報を作業データとして記録し、
作業の開始から終了までの全体動作を複数の部分動作に分け、
同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成する
ことを特徴とする動作情報生成装置。
(付記2)
動作情報生成方法であって、
少なくとも1つのハードウェアプロセッサによって、作業の開始から終了までの人の動作に関わる情報を作業データとして記録するステップと、
少なくとも1つのハードウェアプロセッサによって、作業の開始から終了までの全体動作を複数の部分動作に分けるステップと、
少なくとも1つのハードウェアプロセッサによって、同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成するステップと、
を含むことを特徴とする動作情報生成方法。
100:動作情報生成装置、101:センサ、102:情報処理装置、110:人(作業者)、111:作業対象
201:センサ情報入力部、202:対象情報入力部、203:隣接作業情報入力部、204:作業データ記録部、205:動作選択部、206:動作分類部、207:動作合成部、208:動作評価部、209:動作改善部、210:データ変換部、211:結果出力部
501:ベース部品、501a,501b,501c:穴、501d,501e:フレーム、502a,502b,502c:部品、503a,503b,503c:部品箱、504a,504b,504c:位置
700:中間状態のリスト、701:メッセージ、702:開始ボタン、703:終了ボタン
901:ベクトル抽出部、902:変化点検出部、903:類似点検出部、904:分類生成部、905:分類結果出力部、910:作業データ入力部、911:深層ニューラルネットワーク、912:分類結果出力部
1101:最良部分動作判定部、1102:最良全体動作判定部、1103:部分動作更新部、1104:部分動作整合部、1105:合成動作リスト出力部

Claims (23)

  1. 作業の開始から終了までの人の動作に関わる情報を作業データとして記録する作業データ記録部と、
    作業の開始から終了までの全体動作を複数の部分動作に分ける動作分類部と、
    同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成する動作合成部と、
    同じ作業を複数回行い記録された作業データの複数のサンプルのうちから、作業効率の良い2つ以上の良サンプルを選択する動作選択部と、
    を有し、
    前記動作合成部は、選択された前記2つ以上の良サンプルを用いて前記最適動作のデータを生成する
    ことを特徴とする動作情報生成装置。
  2. 作業の開始から終了までの人の動作に関わる情報を作業データとして記録する作業データ記録部と、
    作業の開始から終了までの全体動作を複数の部分動作に分ける動作分類部と、
    同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成する動作合成部と、
    を有し、
    前記動作合成部は、異なるサンプルの第1の部分動作と第2の部分動作を接続する場合に、前記第1の部分動作の最後の動きと前記第2の部分動作の最初の動きを整合させる部分動作整合部を有する
    ことを特徴とする動作情報生成装置。
  3. 作業の開始から終了までの人の動作に関わる情報を作業データとして記録する作業データ記録部と、
    作業の開始から終了までの全体動作を複数の部分動作に分ける動作分類部と、
    同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分
    動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成する動作合成部と、
    作業者の動きを検出する1つ以上のセンサと、
    を有し、
    前記作業データ記録部は、前記センサから得られるセンサデータを記録する
    ことを特徴とする動作情報生成装置。
  4. 作業の開始から終了までの人の動作に関わる情報を作業データとして記録する作業データ記録部と、
    作業の開始から終了までの全体動作を複数の部分動作に分ける動作分類部と、
    同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成する動作合成部と、
    を有し、
    前記動作分類部は、前記作業データに基づき作業者の身体の動きの変化点を検出し、前記動きの変化点を基に前記全体動作を前記複数の部分動作に分ける
    ことを特徴とする動作情報生成装置。
  5. 作業の開始から終了までの人の動作に関わる情報を作業データとして記録する作業データ記録部と、
    作業の開始から終了までの全体動作を複数の部分動作に分ける動作分類部と、
    同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成する動作合成部と、
    を有し、
    前記動作分類部は、分類機能を学習した深層ニューラルネットワークを含む
    ことを特徴とする動作情報生成装置。
  6. 同じ作業を複数回行い記録された作業データの複数のサンプルのうちから、作業効率の良い2つ以上の良サンプルを選択する動作選択部をさらに有し、
    前記動作合成部は、選択された前記2つ以上の良サンプルを用いて前記最適動作のデータを生成する
    ことを特徴とする請求項2〜5のうちいずれか1項に記載の動作情報生成装置。
  7. 前記動作選択部は、作業全体の作業時間に応じて所定数または所定割合のサンプルを前記良サンプルとして選択する
    ことを特徴とする請求項1または6に記載の動作情報生成装置。
  8. 前記動作選択部は、作業全体の作業時間が最も短いものから順に所定数または所定割合のサンプルを前記良サンプルとして選択する
    ことを特徴とする請求項に記載の動作情報生成装置。
  9. 前記動作合成部は、所定の評価基準を用いて各サンプルの部分動作を評価することにより、前記最良の部分動作を選択する
    ことを特徴とする請求項1〜のうちいずれか1項に記載の動作情報生成装置。
  10. 前記所定の評価基準は、部分動作の作業時間、作業品質、作業者の安全性、作業者の疲労度、動作の再現容易性のうちの少なくとも1つを含む
    ことを特徴とする請求項に記載の動作情報生成装置。
  11. 前記動作合成部は、異なるサンプルの第1の部分動作と第2の部分動作を接続する場合に、前記第1の部分動作の最後の動きと前記第2の部分動作の最初の動きを整合させる部分動作整合部を有する
    ことを特徴とする請求項1、3、4、5のうちいずれか1項に記載の動作情報生成装置。
  12. 前記部分動作整合部は、前記第1の部分動作の最後と前記第2の部分動作の最初の間で、作業者もしくは作業対象の位置が少なくとも一致するように整合を行う
    ことを特徴とする請求項2または11に記載の動作情報生成装置。
  13. 前記部分動作整合部は、前記第1の部分動作から前記第2の部分動作にかけて動きベクトルが連続的に変化するように、前記第1の部分動作と前記第2の部分動作の動きベクトルを調整する
    ことを特徴とする請求項2または11に記載の動作情報生成装置。
  14. 作業者の動きを検出する1つ以上のセンサを有し、
    前記作業データ記録部は、前記センサから得られるセンサデータを記録する
    ことを特徴とする請求項1、2、4、5のうちいずれか1項に記載の動作情報生成装置。
  15. 前記センサは、作業者の身体に装着された動きセンサを含む
    ことを特徴とする請求項3または14に記載の動作情報生成装置。
  16. 前記動作分類部は、前記作業データに基づき作業者の身体の動きの変化点を検出し、前記動きの変化点を基に前記全体動作を前記複数の部分動作に分ける
    ことを特徴とする請求項1、2、3、5のうちいずれか1項に記載の動作情報生成装置。
  17. 前記動作分類部は、分類機能を学習した深層ニューラルネットワークを含む
    ことを特徴とする請求項1〜のうちいずれか1項に記載の動作情報生成装置。
  18. 作業の開始から終了までの人の動作に関わる情報を作業データとして記録するステップと、
    作業の開始から終了までの全体動作を複数の部分動作に分けるステップと、
    同じ作業を複数回行い記録された作業データの複数のサンプルのうちから、作業効率の良い2つ以上の良サンプルを選択するステップと、
    選択された前記2つ以上の良サンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成するステップと、
    を有することを特徴とする動作情報生成方法。
  19. 作業の開始から終了までの人の動作に関わる情報を作業データとして記録するステップと、
    作業の開始から終了までの全体動作を複数の部分動作に分けるステップと、
    同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成する動作合成ステップと、
    を有し、
    前記動作合成ステップは、異なるサンプルの第1の部分動作と第2の部分動作を接続する場合に、前記第1の部分動作の最後の動きと前記第2の部分動作の最初の動きを整合させるステップを含む
    ことを特徴とする動作情報生成方法。
  20. 作業者の動きを検出する1つ以上のセンサを用いて、前記作業者による作業の開始から終了までに前記センサから得られるデータを作業データとして記録するステップと、
    作業の開始から終了までの全体動作を複数の部分動作に分けるステップと、
    同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成するステップと、
    を有することを特徴とする動作情報生成方法。
  21. 作業の開始から終了までの人の動作に関わる情報を作業データとして記録するステップと、
    作業の開始から終了までの全体動作を複数の部分動作に分ける動作分類ステップと、
    同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成するステップと、
    を有し、
    前記動作分類ステップは、
    前記作業データに基づき作業者の身体の動きの変化点を検出するステップと、
    前記動きの変化点を基に前記全体動作を前記複数の部分動作に分けるステップと、を含む
    ことを特徴とする動作情報生成方法。
  22. 作業の開始から終了までの人の動作に関わる情報を作業データとして記録するステップと、
    分類機能を学習した深層ニューラルネットワークにより、作業の開始から終了までの全体動作を複数の部分動作に分けるステップと、
    同じ作業に対する作業データの複数のサンプルのうちから、部分動作ごとに最良の部分動作を選択し、選択した前記最良の部分動作を合成することによって作業全体の最適動作のデータを生成するステップと、
    を有することを特徴とする動作情報生成方法。
  23. 請求項18〜22のうちいずれか1項に記載の動作情報生成方法の各ステップをコンピュータに実行させるためのプログラム。
JP2018505894A 2016-03-14 2017-03-10 動作情報生成装置 Active JP6583537B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2016049623 2016-03-14
JP2016049623 2016-03-14
PCT/JP2017/009718 WO2017159562A1 (ja) 2016-03-14 2017-03-10 動作情報生成装置

Publications (2)

Publication Number Publication Date
JPWO2017159562A1 JPWO2017159562A1 (ja) 2019-01-17
JP6583537B2 true JP6583537B2 (ja) 2019-10-02

Family

ID=59850320

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018505894A Active JP6583537B2 (ja) 2016-03-14 2017-03-10 動作情報生成装置

Country Status (5)

Country Link
US (1) US20180354127A1 (ja)
EP (1) EP3431229A4 (ja)
JP (1) JP6583537B2 (ja)
CN (1) CN108602191B (ja)
WO (1) WO2017159562A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6926224B2 (ja) * 2017-11-08 2021-08-25 株式会社東芝 技能基盤システム、技能モデル化装置および技能流通方法
JP7128267B2 (ja) * 2018-04-26 2022-08-30 三菱電機株式会社 作業支援装置
JP7192251B2 (ja) * 2018-05-29 2022-12-20 富士通株式会社 情報処理装置、ロボット動作プログラム生成補助方法及びロボット動作プログラム生成補助プログラム
US11292133B2 (en) * 2018-09-28 2022-04-05 Intel Corporation Methods and apparatus to train interdependent autonomous machines
CN109816049B (zh) * 2019-02-22 2020-09-18 青岛理工大学 一种基于深度学习的装配监测方法、设备及可读存储介质
JP6993374B2 (ja) 2019-03-25 2022-01-13 ファナック株式会社 ロボット制御システム
JP2020175467A (ja) * 2019-04-17 2020-10-29 アズビル株式会社 教示装置及び教示方法
JP2020175466A (ja) * 2019-04-17 2020-10-29 アズビル株式会社 教示装置及び教示方法
JP7362037B2 (ja) * 2019-11-05 2023-10-17 オムロン株式会社 要素作業分割装置、要素作業分割方法、要素作業分割プログラム及び要素作業分割システム
CN111531537B (zh) * 2020-05-07 2022-11-01 金陵科技学院 基于多传感器的机械臂控制方法
WO2022091571A1 (ja) * 2020-11-02 2022-05-05 三菱電機株式会社 作業手順更新装置、作業手順更新方法及びプログラム
EP4254100A1 (de) * 2022-03-31 2023-10-04 Siemens Aktiengesellschaft Verfahren zur überwachung eines produktionsprozesses, computerprogramm und datenträger

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63288683A (ja) * 1987-05-21 1988-11-25 株式会社東芝 組立てロボット
JP2000066706A (ja) * 1998-08-21 2000-03-03 Matsushita Electric Ind Co Ltd ロボット制御装置とその制御方法
JP2002361581A (ja) * 2001-06-08 2002-12-18 Ricoh Co Ltd 作業自動化装置、作業自動化方法およびその方法を記憶した記憶媒体
FR2853983A1 (fr) * 2003-04-17 2004-10-22 Philippe Bellanger Procede et dispositif d'interaction pour l'assistance au geste "metier-matiere"
JP2005215314A (ja) 2004-01-29 2005-08-11 Mitsubishi Heavy Ind Ltd シミュレーション装置、ノウハウ情報記録装置、保守作業ノウハウの抽出方法、原子力プラントにおける保守作業のシミュレート方法
ITMI20040166A1 (it) * 2004-02-03 2004-05-03 Fintrade S R L Sistema foto-ottico elettronico per rilevare digitalizzare e riprodurre la superficie esterna di un oggetto in tre dimensioni virtualmente e-o in materiale plastico composito o cartotecnico
JP2006289531A (ja) * 2005-04-07 2006-10-26 Seiko Epson Corp ロボット位置教示のための移動制御装置、ロボットの位置教示装置、ロボット位置教示のための移動制御方法、ロボットの位置教示方法及びロボット位置教示のための移動制御プログラム
JP4517048B2 (ja) 2006-04-07 2010-08-04 独立行政法人産業技術総合研究所 注湯トレーナーシステム
JP2007324910A (ja) * 2006-05-31 2007-12-13 Ricoh Co Ltd 撮影システム、撮影方法及び記録媒体
JP2009015529A (ja) * 2007-07-03 2009-01-22 Toshiba Corp 作業分析装置および方法
US9734464B2 (en) * 2007-09-11 2017-08-15 International Business Machines Corporation Automatically generating labor standards from video data
KR100995933B1 (ko) * 2008-09-01 2010-11-22 한국과학기술연구원 진화 알고리즘과 모방학습에 기초한 로봇의 동작 제어 방법
JP5525202B2 (ja) * 2009-07-30 2014-06-18 株式会社構造計画研究所 動作分析装置、動作分析方法及び動作分析プログラム
US8345984B2 (en) * 2010-01-28 2013-01-01 Nec Laboratories America, Inc. 3D convolutional neural networks for automatic human action recognition
JP2011200997A (ja) * 2010-03-26 2011-10-13 Kanto Auto Works Ltd ロボットのティーチング装置及びティーチング方法
CN103003033A (zh) * 2010-04-23 2013-03-27 三星重工业株式会社 机器人系统的控制方法和装置
KR102080812B1 (ko) * 2011-09-02 2020-02-24 브룩스 오토메이션 인코퍼레이티드 로봇 이송 장비들을 위한 시간 최적화 궤적들
JP5998338B2 (ja) 2012-02-17 2016-09-28 エヌ・ティ・ティ・コミュニケーションズ株式会社 映像表示システム
JP6558584B2 (ja) * 2013-04-12 2019-08-14 ダナ リミテッド パターン認識による車両及びオペレータガイダンス
JP6016760B2 (ja) * 2013-12-09 2016-10-26 三菱電機株式会社 作業確認システム
EP3107429B1 (en) * 2014-02-20 2023-11-15 MBL Limited Methods and systems for food preparation in a robotic cooking kitchen
US10083233B2 (en) * 2014-09-09 2018-09-25 Microsoft Technology Licensing, Llc Video processing for motor task analysis
US10110858B2 (en) * 2015-02-06 2018-10-23 Conduent Business Services, Llc Computer-vision based process recognition of activity workflow of human performer

Also Published As

Publication number Publication date
EP3431229A1 (en) 2019-01-23
JPWO2017159562A1 (ja) 2019-01-17
US20180354127A1 (en) 2018-12-13
CN108602191B (zh) 2021-11-30
EP3431229A4 (en) 2019-06-26
CN108602191A (zh) 2018-09-28
WO2017159562A1 (ja) 2017-09-21

Similar Documents

Publication Publication Date Title
JP6583537B2 (ja) 動作情報生成装置
Bhattacharya et al. Step: Spatial temporal graph convolutional networks for emotion perception from gaits
JP6897037B2 (ja) 作業性評価装置
Abreu et al. Evaluating sign language recognition using the myo armband
Ward et al. Activity recognition of assembly tasks using body-worn microphones and accelerometers
JP7146247B2 (ja) 動作認識方法及び装置
JP6386786B2 (ja) 複合システムの構成要素上で実行されるタスクをサポートするユーザの追跡
Müller et al. Emotion recognition from embedded bodily expressions and speech during dyadic interactions
Samadani et al. Discriminative functional analysis of human movements
Lewis et al. Are discrete emotions useful in human-robot interaction? Feedback from motion capture analysis
Hernandez et al. Machine learning techniques for motion analysis of fatigue from manual material handling operations using 3D motion capture data
Calvo et al. Human activity recognition using multi-modal data fusion
Revanth et al. Comprehensive SVM based Indian sign language recognition
CN114967937B (zh) 一种虚拟人运动生成方法与系统
Kaushik et al. Quantifying coordination in human dyads via a measure of verticality
JP2020027324A (ja) 分析システム、分析方法、プログラム、及び記憶媒体
Vanc et al. Context-aware robot control using gesture episodes
JP5061808B2 (ja) 感情判定方法
Gu et al. Fine manipulative action recognition through sensor fusion
Kulić et al. Incremental learning of full body motion primitives
WO2021039641A1 (ja) 運動言語化装置、運動言語化方法、プログラム及び運動記録装置
Akhshik et al. Pressure Sensor Positioning for Accurate Human Interaction with a Robotic Hand
Cutugno et al. Interacting with robots via speech and gestures, an integrated architecture.
JP2006209445A (ja) アニメーション生成装置およびその方法
Menon et al. Towards a data-driven approach to human preferences in motion planning

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190521

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190703

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190819

R150 Certificate of patent or registration of utility model

Ref document number: 6583537

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150