JP2024023873A - 作業員の作業を補助する機械学習装置、及び機械学習方法 - Google Patents

作業員の作業を補助する機械学習装置、及び機械学習方法 Download PDF

Info

Publication number
JP2024023873A
JP2024023873A JP2023218412A JP2023218412A JP2024023873A JP 2024023873 A JP2024023873 A JP 2024023873A JP 2023218412 A JP2023218412 A JP 2023218412A JP 2023218412 A JP2023218412 A JP 2023218412A JP 2024023873 A JP2024023873 A JP 2024023873A
Authority
JP
Japan
Prior art keywords
work
worker
robot
learning
movement
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.)
Pending
Application number
JP2023218412A
Other languages
English (en)
Inventor
啓太 前田
Keita Maeda
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP2023218412A priority Critical patent/JP2024023873A/ja
Publication of JP2024023873A publication Critical patent/JP2024023873A/ja
Pending legal-status Critical Current

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
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • B25J13/089Determining the position of the robot with reference to its environment
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Manipulator (AREA)
  • General Factory Administration (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)

Abstract

【課題】作業員が、より円滑に作業を行えるように、該作業員を補助するロボットシステムが求められている。【解決手段】ロボットシステム10は、ロボット12と、作業員が所定の作業をしているときに該作業員の動きを検出する検出装置14と、検出装置14の検出データに基づいて、作業が終了するか否かを判断する終了判断部30と、終了判断部30によって作業が終了すると判断されたときに、該作業のための物品を作業員へ供給するために該物品を予め定められた位置へ運搬する物品供給動作、又は、作業で用いた物品を回収して予め定めた保管場所まで運搬する物品回収動作をロボット12に実行させるロボット制御部28とを備える。【選択図】図1

Description

本発明は、作業員の作業を補助するロボットシステム、ロボットの制御方法、機械学習装置、及び機械学習方法に関する。
作業員の作業を補助するロボットシステムが知られている(例えば、特許文献1)。
特開2018-058178号公報
作業員が、より円滑に作業を行えるように、該作業員を補助するロボットシステムが求められている。
本開示の一態様において、作業員の作業を補助するロボットシステムは、ロボットと、作業員が所定の作業をしているときに該作業員の動きを検出する検出装置と、検出装置の検出データに基づいて、作業が終了するか否かを判断する終了判断部と、終了判断部によって作業が終了すると判断されたときに、該作業のための物品を作業員へ供給するために該物品を予め定められた位置へ運搬する物品供給動作、又は、作業で用いた物品を回収して予め定めた保管場所まで運搬する物品回収動作をロボットに実行させるロボット制御部とを備える。
本開示の他の態様において、作業員の作業を補助するロボットを制御する方法は、作業員が所定の作業をしているときに該作業員の動きを検出装置によって検出し、検出装置の検出データに基づいて、作業が終了するか否かを判断し、作業が終了すると判断したときに、該作業のための物品を作業員へ供給するために該物品を予め定められた位置へ運搬する物品供給動作、又は、作業で用いた物品を回収して予め定めた保管場所まで運搬する物品回収動作をロボットに実行させる。
本開示のさらに他の態様において、作業員の作業が終了するタイミングを学習する機械学習装置は、作業員が所定の作業を行っているときに該作業員の動きを検出する検出装置の検出データと、作業の段階を示すラベル情報又は該作業に要した時間とを、学習データセットとして取得する学習データ取得部と、学習データセットを用いて、動きと段階又は時間との相関性を表す学習モデルを生成する学習部とを備える。
本開示のさらに他の態様において、作業員の作業が終了するタイミングを学習する機械学習方法は、作業員が所定の作業を行っているときに該作業員の動きを検出する検出装置の検出データと、作業の段階を示すラベル情報又は該作業に要した時間とを、学習データセットとして取得し、学習データセットを用いて、動きと段階又は時間との相関性を表す学習モデルを生成する。
本開示によれば、ロボット制御部は、作業が終了するタイミングで物品供給動作又は物品回収動作をロボットに実行させるので、作業員が作業を円滑に行えるように、該作業員の作業を補助することができる。
一実施形態に係るロボットシステムのブロック図である。 図1に示すロボットシステムの斜視図である。 図1に示すロボットシステムの動作フローの一例を示すフローチャートである。 図2に示す作業台を拡大した拡大図である。 作業員が行う作業の一例を説明するための図である。 図5に示す締結孔に対して作業員が工具を用いて締結具を締結している状態を示す。 一実施形態に係る機械学習装置のブロック図である。 検出装置が連続的に取得する検出データを模式的に示す図である。 図7に示す機械学習装置が実行する学習フローの一例を示すフローチャートである。 ニューロンのモデルを模式的に示す。 多層ニューラルネットワークのモデルを模式的に示す。 他の実施形態に係るロボットシステムのブロック図である。 さらに他の実施形態に係るロボットシステムの斜視図である。 図13に示すロボットシステムのブロック図である。
以下、本開示の実施の形態を図面に基づいて詳細に説明する。なお、以下に説明する種々の実施形態において、同様の要素には同じ符号を付し、重複する説明を省略する。まず、図1及び図2を参照して、一実施形態に係るロボットシステム10について説明する。ロボットシステム10は、作業員Aと協働で作業を行うものであって、ロボット12、検出装置14、及び制御装置16を備える。
本実施形態においては、ロボット12は、垂直多関節型ロボットであって、ベース部18、旋回胴20、ロボットアーム22、手首部24、及びロボットハンド26を有する。ベース部18は、作業セルの床の上に固定されている。旋回胴20は、ベース部18に鉛直軸周りに旋回可能に設けられている。
ロボットアーム22は、旋回胴20に水平軸周りに回転可能に取り付けられた下腕部23と、下腕部23の先端に回転可能に取り付けられた上腕部25とを有する。手首部24は、上腕部25の先端に連結され、ロボットハンド26を回転可能に支持している。ロボットハンド26は、開閉可能な複数の指部26aを有し、該指部26aで物品を把持したり、解放したりする。
ロボット12の各コンポーネント(ベース部18、旋回胴20、ロボットアーム22、手首部24、及びロボットハンド26)には、サーボモータ(図示せず)が内蔵されている。該サーボモータは、制御装置16からの指令の下、ロボット12の可動コンポーネント(旋回胴20、ロボットアーム22、手首部24)をそれぞれ駆動軸周りに回動することによって、ロボット12を動作させる。
ロボット12には、ロボット座標系Cが設定されている。ロボット座標系Cは、ロボット12の可動コンポーネント(旋回胴20、ロボットアーム22、手首部24)を3次元空間内で自動制御するための座標系である。本実施形態においては、ロボット座標系Cは、その原点がベース部18の中心に配置され、そのz軸が鉛直方向と平行に配置され、旋回胴20がz軸周りに回動されるように、設定されている。
制御装置16は、ロボット座標系Cを基準として、ロボット12に内蔵された各サーボモータへの指令を生成し、該サーボモータによってロボット12の可動コンポーネントを動作させて、ロボットハンド26を、ロボット座標系Cにおける任意の位置及び姿勢に配置させる。
検出装置14は、作業員Aが所定の作業をしているときに該作業員Aの動きを検出する。本実施形態においては、検出装置14は、撮像素子、フォーカスレンズ等の光学系、及び画像処理プロセッサ(例えばGPU)を含み、作業中の作業員Aを、所定の視線方向VDに沿って撮像し、撮像した画像に基づいて、作業員Aの動きを検出する(いわゆる、光学式モーションキャプチャ)。なお、作業員Aが行う作業については、後述する。
制御装置16は、ロボット12及び検出装置14を制御する。制御装置16は、例えば、プロセッサ(CPU、GPU等)、メモリ(ROM、RAM等)、入力装置(キーボード、マウス、タッチセンサ等)、及びディスプレイ(液晶ディスプレイ、有機ELディスプレイ等)を有するコンピュータである。制御装置16のプロセッサは、後述する各種機能を実行するための演算処理を担う。
次に、図3を参照して、ロボットシステム10の動作について説明する。図3に示すフローは、制御装置16が、オペレータ、上位コントローラ、又はコンピュータプログラムから、作業開始指令を受け付けたときに、開始する。ステップS1において、制御装置16は、作業員Aが行う作業の情報を取得する。
本実施形態においては、作業員Aは、第1の作業、第2の作業、・・・第nの作業、・・・第nMAXの作業(nMAXは、正の整数)の順に、計nMAX種類の作業を行い、第nの作業(n=1~nMAX)において、第nの工具Tを使って作業を行うものとする。なお、第nの工具Tは、互いに異なるものであってもよいし、少なくとも2つの工具(第n-1の工具Tn-1と第nの工具T)が互いに同じであってもよい。
制御装置16は、このステップS1において、オペレータ、上位コントローラ、又はコンピュータプログラムから、作業の情報を取得する。該作業の情報は、第nの作業の種類と順序、及び、第nの工具の種類を特定する情報(例えば、識別番号等)を含む。制御装置16は、この作業の情報から、作業を行う順序と、作業員Aに供給すべき工具Tを認識できる。
なお、作業員Aは、制御装置16の入力装置を操作して、作業の情報を入力してもよい。又は、作業員Aは、音声認識技術を用いて作業の情報を入力してもよい。この場合、制御装置16には、音声を入力可能なマイクロフォンがさらに設けられ、音声認識技術のためのコンピュータプログラムが予めインストールされる。
ステップS2において、制御装置16は、第nの作業(つまり、第nの工具T)を識別する番号「n」を、「1」にセットする。ステップS3において、制御装置16は、ロボット12に物品供給動作を実行させる。ここで、本実施形態においては、図4に示すように、作業セル内の予め定められた位置に、載置台Cが設置されている。この載置台Cには、第1の治具Dと、第2の治具Dとが設けられている。
第1の治具Dには、ロボット12によって、作業員Aが次の作業に用いる工具Tがセットされる。一方、第2の治具Dには、作業員Aが作業を行った後に該作業に用いた工具Tを手動でセットする。また、作業セル内の予め定められた位置に、工具Tが保管されている保管台Eが設置されている。第nの作業に用いられる第nの工具Tは、保管台E上の所定位置に静止して保管されている。第1の治具D、第2の治具D、及び、保管台E上の第nの工具Tのロボット座標系Cにおける位置データ(座標データ)は、制御装置16のメモリに予め記憶される。
このステップS3において、制御装置16は、第1の工具T及び第1の治具Dのロボット座標系Cにおける位置データに基づいて、ロボット12に物品供給動作を実行させ、該ロボット12は、制御装置16からの指令の下、保管台Eに保管されている第1の工具Tをロボットハンド26で把持し、該第1の工具Tを、第1の治具Dにセットする。
ステップS4において、検出装置14は、作業員Aの動きを検出する動作を開始する。具体的には、検出装置14は、制御装置16からの指令を受けて、作業員Aを連続的に撮像し(換言すれば、動画撮影し)、撮像した画像に基づいて作業員Aの動きを検出する。こうして、検出装置14は、作業員Aの動きを示す検出データDD(例えば、作業員Aの動きを時系列で連続的に示す画像データ)を、制御装置16へ送信する。
ステップS5において、制御装置16は、検出装置14の検出データDDに基づいて、第nの作業が終了するか否かを判断する。以下、図5及び図6を参照して、第nの作業が終了するタイミングを判断する方法について、説明する。一例として、第nの作業は、作業員Aが、第nの工具T(図6)を用いて、図5に示す5個の締結孔F~Fに、締結孔F→F→F→F→Fの順で、それぞれ締結具G(ボルト等)を締結する作業として、定められ得る。
この場合、作業員Aは、まず、第1の治具Dにセットされた第nの工具Tを手Hで取り、第nの工具Tを用いて締結孔F~Fに締結具Gを順に締結する第nの作業を行う。そして、作業員Aは、第nの作業を終了した(つまり、最後の締結孔Fに締結具Gを締結した)後に、使用した第nの工具Tを第2の治具Dにセットする。
制御装置16は、検出装置14から取得した検出データDDを解析し、締結孔F~Fに締結具Gを順に締結する一連の動きを含む第nの作業が終了するか否かを判断する。一例として、制御装置16は、取得した検出データDDから、作業員Aの身体の部位(この場合は、手H)と、最後の作業箇所である締結孔Fとの間の距離I(図6)を連続的に算出し、該距離Iが所定の閾値Ith以下(I≦Ith)となったか否かを監視する。
制御装置16は、I≦Ithとなったことを検出したときに、第nの作業が終了すると判断する。この場合、ロボット座標系Cにおける締結孔Fの位置データが、制御装置16のメモリに予め記憶される。制御装置16は、ロボット座標系Cにおける締結孔Fの位置データと、検出装置14の検出データDDとから、距離Iを算出できる。
代替的には、制御装置16は、距離Iが所定の閾値Ith以下となったことを検出した時点から所定の時間(例えば、5秒)が経過したときに、第nの作業が終了すると判断してもよい。又は、制御装置16は、距離Iが所定の閾値Ith以下となった後に、該距離Iが、再度、該閾値Ithを超えた(I>Ith)ときに、第nの作業が終了すると判断してもよい。
他の例として、制御装置16は、作業員Aが最後の作業箇所である締結孔Fに締結具Gを締結する動きの基準動作パターンを予め記憶する。この基準動作パターンは、作業員A(又は別の作業員)が、最後の締結孔Fに締結具Gを締結する基準動作を行っているときに検出装置14が該作業員A(又は別の作業員)の動きを検出した検出データDDに基づいて、生成され得る。
制御装置16は、ステップS4の開始後に取得した検出データDDで示される作業員Aの動きが、基準動作パターンに合致するか否かを監視し、作業員Aの動きが該基準動作パターンと合致したときに、第nの作業が終了すると判断する。なお、制御装置16は、作業員Aの動きが基準動作パターンに合致する合致したと判定してから所定時間が経過したときに、第nの作業が終了すると判断してもよい。
以上のような方法により、制御装置16は、第nの作業が終了するタイミングを判断できる。制御装置16は、第nの作業が終了する(すなわち、YES)と判断した場合、ステップS6へ進む一方、第nの作業が終了しない(すなわち、NO)と判断した場合、ステップS5をループする。このように、本実施形態においては、制御装置16は、検出データDDに基づいて第nの作業が終了するか否かを判断する終了判断部30(図1)として機能する。
ステップS6において、制御装置16は、第nの作業(第nの工具)を識別する番号「n」を、「1」だけインクリメントする(n=n+1)。ステップS7において、第nの作業を識別する番号「n」が、最大作業数nMAXを超えた(n>nMAX)か否かを判定する。制御装置16は、n>nMAXである(すなわち、YES)と判定した場合、ステップS10へ進む一方、n≦nMAXである(すなわち、NO)と判定した場合、ステップS8へ進む。
ステップS8において、制御装置16は、ロボット12に物品供給動作を実行させる。具体的には、制御装置16は、次の作業で用いる第nの工具Tと第1の治具Dのロボット座標系Cにおける位置データに基づいて、ロボット12に物品供給動作を実行させ、該ロボット12は、保管台Eに保管されている第nの工具Tをロボットハンド26で把持し、該第nの工具Tを第1の治具Dにセットする。
このように、本実施形態においては、制御装置16は、第nの作業のための第nの工具Tを作業員Aへ供給するために、該第nの工具Tを予め定められた位置(第1の治具D)へ運搬する物品供給動作をロボット12に実行させるロボット制御部28(図1)として機能する。
ステップS9において、制御装置16は、ロボット制御部28として機能し、ロボット12に物品回収動作を実行させる。具体的には、制御装置16は、第2の治具Dのロボット座標系Cにおける位置データに基づいてロボット12を制御し、該ロボット12は、第2の治具Dにセットされている、直前の第n-1の作業で用いた第n-1の工具Tn-1をロボットハンド26で把持する。
次いで、制御装置16は、保管台E上にセットすべき第n-1の工具Tn-1のロボット座標系Cにおける位置データに基づいてロボット12を制御し、該ロボット12は、ロボットハンド26で把持した第n-1の工具Tn-1を、保管台E上の所定の位置に戻す。例えば、このステップS9の開始時点でn=4にセットされていたとき、制御装置16は、ロボット12によって、第3の作業で用いた第3の工具Tを第2の治具Dから回収し、保管台E上の所定位置まで運搬する。
こうして、制御装置16は、直前の第n-1の作業で用いた第n-1の工具Tn-1を回収し、予め定めた保管場所(保管台E)まで運搬する物品回収動作をロボット12に実行させる。なお、このステップS9を実行する前に、制御装置16は、検出装置14(又は、他の検出装置)が撮像した画像に基づいて、第n-1の工具Tn-1に第2の治具Dがセットされたか否かを判定し、第n-1の工具Tn-1に第2の治具Dがセットされた場合に、ステップS9を開始してもよい。
又は、第2の治具Dに第n-1の工具Tn-1が配置されたことを検知する物品検知センサ(例えば、近接スイッチ)を第2の治具Dに設け、制御装置16は、該物品検知センサの出力信号に基づいて、第n-1の工具Tn-1に第2の治具Dがセットされたか否かを判定してもよい。ステップS9の後、制御装置16は、ステップS5へ戻り、ステップS7でYESと判定するまで、ステップS5~S9をループする。
ステップS7でYESと判定したとき、ステップS10において、制御装置16は、ロボット制御部28として機能して、ロボット12に物品回収動作を実行させる。具体的には、制御装置16は、第2の治具Dのロボット座標系Cにおける位置データに基づいてロボット12を制御し、該ロボット12は、第2の治具Dにセットされている、第nMAXの作業で用いた第nMAXの工具TnMAXをロボットハンド26で把持する。
次いで、制御装置16は、保管台E上にセットすべき第nMAXの工具TnMAXのロボット座標系Cにおける位置データに基づいてロボット12を制御し、該ロボット12は、ロボットハンド26で把持した第nMAXの工具TnMAXを、保管台E上の所定の位置に戻す。
以上のように、本実施形態においては、制御装置16は、第nの作業が終了すると判断したときに、物品供給動作をロボット12に実行させている(ステップS8)。この構成によれば、作業員Aが第nの作業の次の第n+1の作業を行うときに、該第n+1の作業のための第n+1の工具Tn+1が、ロボット12によって第1の治具Dに自動でセットされる。これにより、作業員Aが第nの作業を円滑に行うのを補助することができる。
また、本実施形態においては、制御装置16は、第nの作業が終了すると判断したときに、物品回収動作をロボット12に実行させている(ステップS9及びS10)。この構成によれば、作業員Aが第nの作業を完了したときに、使用済みの第nの工具Tを、ロボット12によって自動で回収することができる。これにより、作業員Aが作業を円滑に行えるように、該作業員Aの作業を補助することができる。
なお、制御装置16は、ステップS5において、第nの作業を行っている作業員Aの動きと、該第nの作業の段階又は該第nの作業に要した時間tとの相関性を表す学習モデルLMに基づいて、該第nの作業が終了するか否かを判断してもよい。以下、図7を参照して、学習モデルLMを学習する機械学習装置50について、説明する。
機械学習装置50は、例えば、プロセッサ(CPU、GPU等)、メモリ(ROM、RAM)、入力装置(キーボード、マウス、タッチセンサ等)、及びディスプレイ(液晶ディスプレイ、有機ELディスプレイ等)を有するコンピュータ、又は、コンピュータが実行する、学習アルゴリズム等のソフトウェアから構成され得る。
機械学習装置50は、作業員Aが第nの作業を終了するタイミングを学習する。機械学習装置50は、学習データ取得部52、及び学習部54を備える。機械学習装置50の機能の一実施形態として、学習データ取得部52は、上述の検出装置14の検出データDDと、第nの作業の段階(初期段階、中期段階、最終段階等)を示すラベル情報LIとを、学習データセットDSとして取得する。
より具体的には、検出装置14は、作業員Aが第nの作業を行っているときに視線方向VDに沿って作業員Aを撮像し、撮像した画像に基づいて作業員Aの動きを検出する。
検出装置14は、作業員Aの動きを示す検出データDD(例えば、作業員Aの動きを時系列で連続的に示す画像データ)を、学習データ取得部52に供給する。
図8に、検出装置14が連続的に取得する検出データDDを模式的に示す。図8の横軸は、時間tを示す。なお、図8は、検出装置14によって、作業員Aが第nの作業を開始してから終了するまで、計300の検出データDD(m=1~300)を検出した場合を例示している。
ラベル情報LIは、例えば、第nの作業が「初期段階」であることを示す初期段階ラベル情報LIと、第nの作業が「中期段階」であることを示す中期段階ラベル情報LIと、第nの作業が「最終段階」であることを示す最終段階ラベル情報LIとを含む。ここで、図8に示す検出データDD~DD99の集合体は、作業員Aが、図5中の締結孔F~Fのうち、最初の2つの締結孔F(例えば、締結孔FとF)を締結する動きを示しているとする。
また、検出データDD100~DD199の集合体は、作業員Aが、図5中の締結孔F~Fのうち、次の2つの締結孔F(例えば、締結孔FとF)を締結する動きを示しているとする。また、検出データDD200~DD300の集合体は、作業員Aが、図5中の締結孔F~Fのうち、最後の1つの締結孔F(例えば、締結孔F)を締結する動きを示しているとする。
この場合において、オペレータは、検出データDD~DD99に、初期段階ラベル情報LIを付し、検出データDD100~DD199に、中期段階ラベル情報LIを付し、検出データDD200~DD300に、最終段階ラベル情報LIを付してもよい。オペレータがラベル情報LIを付すとき、機械学習装置50のディスプレイは、検出データDD(画像データ)を表示する。
そして、オペレータは、ディスプレイに表示された検出データDDの画像を目視しつつ、機械学習装置50の入力装置を操作して、検出データDDに、第nの作業の進捗段階を示す初期段階ラベル情報LI、中期段階ラベル情報LI、及び最終段階ラベル情報LIのいずれかを、任意で付与する。
こうして、オペレータは、検出データDDで示される作業員Aの動きに応じて、ラベル情報LIを検出データDDに任意で付与する。学習データ取得部52は、検出装置14から取得した検出データDDと、オペレータによって入力されたラベル情報LIとを、学習データセットDSとして取得する。
なお、図8に示す例では、理解の容易のために、第nの作業中に検出装置14が計300の検出データDD~DD300を検出する場合について述べた。しかしながら、検出装置14は、第nの作業中に如何なる数の検出データDDを検出してもよい。オペレータは、検出された検出データDDに応じて、如何なる数の検出データDDの集合体に、如何なる種類のラベル情報LI、LI、又はLIを付与するかを任意で決定する。
また、ラベル情報LIは、上述の初期段階ラベル情報LI、中期段階ラベル情報LI、及び最終段階ラベル情報LIに限らず、例えば、最終段階ラベル情報LIとして、時系列の順に「最終段階1」、「最終段階2」、「最終段階3」といった複数のラベル情報を設定してもよい。同様に、初期段階ラベル情報LI又は中期段階ラベル情報LIとして複数のラベル情報を設定してもよい。また、最終段階ラベル情報LIのみが検出データDDに付与されてもよい。
学習部54は、学習データセットDSを用いて、第nの作業を実行している作業員Aの動きと、該第nの作業の段階(初期段階、中期段階、最終段階)との相関性を表す学習モデルLM(関数)を生成する。例えば、学習部54は、教師あり学習を実行することで、学習モデルLMを生成する。この場合、作業員Aが第nの作業を繰り返し試行し、学習データ取得部52は、作業員Aが第nの作業を実行する毎に、学習データセットDSを教師データとして繰り返し取得する。
学習部54は、教師データとして取得した検出データDDと、第nの作業の段階を示すラベル情報LI(初期段階ラベル情報LI、中期段階ラベル情報LI、最終段階ラベル情報LI)との相関性を暗示する特徴を識別することで、学習モデルLMを学習していく。このような教師あり学習として、例えば、サポートベクターマシン(SVM)、又は混合ガウスモデル(GMM)といったアルゴリズムを用いることができる。
以下、図9を参照して、機械学習装置50が行う学習サイクルのフローについて説明する。ステップS11において、作業員Aは、第nの作業を行い、検出装置14は、第nの作業中に作業員Aの動きを検出する。ステップS12において、学習データ取得部52は、検出データDDとラベル情報LIとの学習データセットDSを取得し、互いに関連付けて機械学習装置50のメモリに記憶する。
ステップS13において、学習部54は、ステップS12で取得した学習データセットDSを用いて、第nの作業を実行中の作業員Aの動きと、該第nの作業の段階との相関性を表す学習モデルLMを生成する。そして、フローは、ステップS11へ戻る。
このような学習サイクルを実行することによって、学習モデルLMの学習が進行し、学習モデルLMが最適解へ導かれることになる。本実施形態によれば、第nの作業を実行中の作業員Aの動きと、該第nの作業の段階との相関性を定量的に表す学習モデルLMを、自動的且つ高精度に求めることができる。
次に、機械学習装置50の機能の他の形態について説明する。本実施形態においては、学習データ取得部52は、上述の検出データDDと、第nの作業に要した時間tとを、学習データセットDSとして取得する。例えば、学習データ取得部52は、学習データセットDSとして、作業員Aが、図5中の締結孔F~Fのうち、最初のp個(pは、4以下の整数)の締結孔Fを締結する作業員Aの動きを示す検出データDD~DDm_pと、p個目の締結孔Fに対する締結を完了した時点から、第nの作業が終了する時点までの時間tとを取得する。
具体的には、学習データ取得部52は、学習データセットDSとして、例えば、最初の2つの締結孔F(締結孔FとF)を締結する作業員Aの動きを示す検出データDD~DD99と、2個目の締結孔F(締結孔F)に対する締結を完了した時点(すなわち、検出データDD99の検出時点)から第nの作業が終了する時点(検出データDD300の検出時点)までの時間tを取得する。
学習部54は、検出データDDと時間tとの学習データセットDSを用いて、第nの作業を実行している作業員Aの動きと、該第nの作業に要した時間t(例えば、p個目の締結孔Fに対する締結を完了した時点から第nの作業が終了する時点までの時間t)との相関性を表す学習モデルLM(関数)を生成する。
以下、図9を参照して、学習モデルLMの学習サイクルのフローについて説明する。学習モデルLMの学習フローは、上述した学習モデルLMの学習フローと、ステップS12及びS13において、相違する。具体的には、ステップS12において、学習データ取得部52は、検出データDDと時間tとの学習データセットDSを取得し、互いに関連付けて機械学習装置50のメモリに記憶する。
ステップS13において、学習部54は、ステップS12で取得した学習データセットDSを用いて、第nの作業を実行中の作業員Aの動きと時間tとの相関性を表す学習モデルLMを生成する。例えば、学習部54は、教師あり学習のアルゴリズム(SVM、GMM等)を実行することによって、学習モデルLMを学習する。そして、フローは、ステップS11に戻る。
このような学習サイクルを実行することによって、学習モデルLMの学習が進行し、学習モデルLMが最適解へ導かれることになる。本実施形態によれば、第nの作業を実行中の作業員Aの動きと、該第nの作業に要した時間tとの相関性を定量的に表す学習モデルLMを、自動的且つ高精度に求めることができる。
なお、学習部54が実行する学習アルゴリズムは、教師あり学習に限定されず、例えば教師なし学習、強化学習、ニューラルネットワーク等、機械学習として公知の学習アルゴリズムを採用できる。一例として、図10は、ニューロンのモデルを模式的に示す。図11は、図10に示すニューロンを組み合わせて構成した三層のニューラルネットワークのモデルを模式的に示す。ニューラルネットワークは、例えば、ニューロンのモデルを模した演算装置や記憶装置等によって構成できる。
図10に示すニューロンは、複数の入力x(図では例として入力x1~x3)に対し結果yを出力する。個々の入力x(x1、x2、x3)にはそれぞれに重みw(w1、w2、w3)が乗算される。入力xと結果yとの関係は、下記の式1で表すことができる。なお、入力x、結果y及び重みwはいずれもベクトルである。また式1において、θはバイアスであり、fは活性化関数である。
図11に示す三層のニューラルネットワークは、左側から複数の入力x(図では例として入力x1~入力x3)が入力され、右側から結果y(図では例として結果y1~結果y3)が出力される。図示の例では、入力x1、x2、x3のそれぞれに対応の重み(総称してW1で表す)が乗算されて、個々の入力x1、x2、x3がいずれも3つのニューロンN11、N12、N13に入力されている。
図11では、ニューロンN11~N13の各々の出力を、総称してZ1で表す。Z1は、入力ベクトルの特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルZ1のそれぞれに対応の重み(総称してW2で表す)が乗算されて、個々の特徴ベクトルZ1がいずれも2つのニューロンN21、N22に入力されている。特徴ベクトルZ1は、重みW1と重みW2との間の特徴を表す。
図11では、ニューロンN21~N22の各々の出力を、総称してZ2で表す。Z2は、特徴ベクトルZ1の特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルZ2のそれぞれに対応の重み(総称してW3で表す)が乗算されて、個々の特徴ベクトルZ2がいずれも3つのニューロンN31、N32、N33に入力されている。
特徴ベクトルZ2は、重みW2と重みW3との間の特徴を表す。最後にニューロンN31~N33は、それぞれ結果y1~y3を出力する。機械学習装置50は、学習データセットDS(DS又はDS)を入力とし、上記したニューラルネットワークに従う多層構造の演算を行うことで、学習モデルLM(LM又はLM)を学習することができる。
上述した機械学習装置50の構成は、コンピュータのプロセッサが実行する機械学習方法(又はソフトウェア)として記述できる。この機械学習方法は、プロセッサが、作業員Aが第nの作業を行っているときに該作業員Aの動きを検出する検出装置14の検出データDDと、第nの作業の段階を示すラベル情報LI又は第nの作業に要した時間tとを、学習データセットDS又はDSとして取得し、該学習データセットDS又はDSを用いて、作業員Aの動きと、第nの作業の段階又は時間tとの相関性を表す学習モデルLM又はLMを生成する。
次に、図2及び図12を参照して、他の実施形態に係るロボットシステム60について説明する。ロボットシステム60は、ロボット12、検出装置14、及び制御装置62を備える。制御装置62は、プロセッサ64(CPU、GPU等)、メモリ66(ROM、RAM等)、入力装置68(キーボード、マウス、タッチセンサ等)、及びディスプレイ70(液晶ディスプレイ、有機ELディスプレイ等)を有するコンピュータである。プロセッサ64、メモリ66、入力装置68、及びディスプレイ70は、バス72を介して、互いに通信可能に接続されている。
本実施形態においては、機械学習装置50は、ハードウェア又はソフトウェアとして制御装置62に実装されており、プロセッサ64は、メモリ66、入力装置68、及びディスプレイ70と通信しつつ、機械学習装置50の機能を果たすための各種演算を実行する。すなわち、本実施形態においては、プロセッサ64は、学習データ取得部52及び学習部54として機能する。メモリ66は、機械学習装置50が学習した学習モデルLM(LM又はLM)を予め格納している。
次に、図3を参照して、ロボットシステム60の動作について説明する。プロセッサ64は、上述のロボット制御部28及び終了判断部30として機能し、メモリ66、入力装置68、及びディスプレイ70と通信しつつ、図3に示すフローを実行する。ここで、ロボットシステム60の動作フローは、上述のロボットシステム10の動作フローと、以下のプロセスにおいて、相違する。
具体的には、ステップS4において、検出装置14は、作業員Aの動きを検出する動作を開始する。このとき、検出装置14は、学習モデルLMの学習段階で実行した上述のステップS11と同じ条件で、作業員Aを連続的に撮像(動画撮影)し、作業員Aの動きを検出する。具体的には、検出装置14は、作業員Aを、上述のステップS11と同じ視線方向VDに沿って、同じ撮影条件(シャッタ速度、撮影速度等)で撮像する。検出装置14は、連続的に取得した検出データDD’を、プロセッサ64に順次送信する。
ステップS5において、プロセッサ64は、検出装置14の検出データDD’及び学習モデルLMに基づいて、第nの作業が終了するか否かを判断する。ここで、メモリ66が学習モデルLMを格納している場合、プロセッサ64は、ステップS4の開始後に検出装置14から取得した連続的な検出データDD’を学習モデルLMに入力する。
そうすると、学習モデルLMは、入力された検出データDD’と相関性を有するラベル情報LI(すなわち、初期段階ラベル情報LI、中期段階ラベル情報LI、又は最終段階ラベル情報LI)を推定し、出力する。一例として、プロセッサ64は、このステップS5において、学習モデルLMが最終段階ラベル情報LIを出力したことを検知した場合にYESと判定する。他の例として、プロセッサ64は、学習モデルLMが最終段階ラベル情報LIを出力したことを検知した時点から所定時間が経過したときに、YESと判定してもよい。
一方、メモリ66が学習モデルLMを格納している場合、ステップS5において、プロセッサ64は、ステップS4の開始後に検出装置14から取得した連続的な検出データDD’を学習モデルLMに入力する。例えば、最初のp個の締結孔Fを締結する作業員Aの動きを示す検出データDD’~DDm_p’が入力されると、学習モデルLMは、第nの作業においてp個目の締結孔Fに対する締結を完了した時点から、第nの作業が終了する時点までの時間tを推定し、出力する。
これにより、プロセッサ64は、第nの作業が終了する時間を認識することができ、第nの作業が終了するタイミングを判断できる。例えば、プロセッサ64は、p個目の締結孔Fを締結する作業員Aの動きを示す検出データDDm_p’を取得した時点からの経過時間τを計時し、該経過時間τが、学習モデルLMが出力した時間t(又は、該時間tよりも所定時間だけ前の時間)に達したときに、YESと判定する。
このように、プロセッサ64は、終了判断部30として機能して、検出データDD’及び学習モデルLMに基づいて、第nの作業が終了するか否かを判断する。本実施形態によれば、プロセッサ64は、学習モデルLMを用いることで、第nの作業が終了するタイミングを、より高精度に判断することができる。
なお、上述の実施形態においては、ロボットシステム10、60が、1人の作業員Aの作業を補助する場合について述べた。しかしながら、ロボットシステム10、60は、複数の作業員Aの作業を補助するように構成されてもよい。このような形態を図13及び図14に示す。
図13及び図14に示すロボットシステム80は、3人の作業員A、A及びAに対して作業の補助を行うように構成されている。具体的には、ロボットシステム80は、ロボット12、検出装置14A、14B及び14C、並びに、制御装置62を備える。検出装置14A、14B及び14Cは、上述の検出装置14と同じ構成を有する。検出装置14Aは、作業員Aの動きを検出し、検出装置14Bは、作業員Aの動きを検出し、検出装置14Cは、作業員Aの動きを検出する。
また、作業セル内の予め定められた位置に、作業員Aのための載置台Cと、作業員Aのための載置台Cと、作業員Aのための載置台Cとがそれぞれ設置されている。載置台C、C及びCの各々には、第1の治具Dと、第2の治具Dとが設けられている。
ロボットシステム80の制御装置62のプロセッサ64は、作業員A、A及びAのそれぞれについて、図3に示すフローを並行して実行することによって、作業員A、A及びAに対して作業のための物品(工具T)をそれぞれ供給し(物品供給動作)、また、作業員A、A及びAが作業に用いた物品を回収する(物品回収動作)。
なお、ロボットシステム80の制御装置62のメモリ66に格納される学習モデルLM(LM、LM)は、検出装置14Aが作業員Aの動きを検出した検出データを用いて学習した学習モデルLM_A(LM1_A、LM2_A)と、検出装置14Bが作業員Aの動きを検出した検出データを用いて学習した学習モデルLM_B(LM1_B、LM2_B)と、検出装置14Cが作業員Aの動きを検出した検出データを用いて学習した学習モデルLM_C(LM1_C、LM2_C)とを含む。
ここで、作業員A、A及びAの間で、実行する作業の種類と順序が互いに異なり得る。この場合、作業員A、A及びAのそれぞれについて図3に示すフローを並行して実行するときに、ステップS1で取得される作業の情報が、作業員A、A及びAに関して互いに異なることになる。
また、作業員A、A及びAのそれぞれについて図3に示すフローを並行して実行しているときに、ステップS5でプロセッサ64によって判断される、作業が終了するタイミングが、少なくとも2人の作業員A、A、Aの間で時間的に近接してしまうことが起こり得る。この場合、プロセッサ64は、該少なくとも2人の作業員A、A、Aが作業を終了する順序を判定し、該順序に従って、作業員A、A、Aに対してステップS8を実行してもよい。
以下、作業員A及びAの作業が終了するタイミングが近接してしまう場合について説明する。プロセッサ64は、ステップS5において、上述の学習モデルLMを用いる場合、作業員A及びAが作業を終了する時間を推定できる。したがって、プロセッサ64は、作業員A及びAが作業を終了する時間が近接するか否かを判定することができるとともに、作業員A及びAの作業が終了する順序を判定することもできる。
例えば、プロセッサ64は、作業員Aが作業員Aよりも先に作業を終了すると判定した場合、先に、作業員Aに対してステップS8を実行し、次に、作業員Aに対してステップS8を実行する。この場合において、プロセッサ64は、作業員Aに関するフローのステップS5において、学習モデルLM2_Aによって作業が終了すると推定された時点よりも所定時間だけ前の時間に達したときに、YESと判定してもよい。
その一方で、プロセッサ64は、作業員Aに関するフローのステップS5において、学習モデルLM2_Bによって作業が終了すると推定された時点でYESと判定してもよい。これにより、作業員A及びAの作業が終了するタイミングが近接してしまう場合において、プロセッサ64は、作業員AとAとに対し、作業が終了する順序に従って、異なるタイミングでステップS8を実行できる。
代替的には、ロボットシステム80のプロセッサ64は、上述のロボットシステム10におけるステップS5と同様に、検出データDDで示される作業員Aの動きが、基準動作パターンに合致するか否かを監視し、作業員Aの動きが該基準動作パターンと合致したときに、第nの作業が終了すると判断することもできる。この場合において、仮に作業員A及びAの作業が終了するタイミングが近接してしまうとすると、プロセッサ64は、作業員A及びAのうちのいずれの動きが基準動作パターンに先に合致したかを判定できる。
例えば、作業員Aの動きが作業員Aよりも先に基準動作パターンに合致した判定した場合、先に、作業員Aに対してステップS8を実行し、次に、作業員Aに対してステップS8を実行する。この場合において、プロセッサ64は、作業員Aに関するフローのステップS5において、作業員Aの動きが基準動作パターンに合致すると判定した時点でYESと判定し、作業員Aに対してステップS8を実行する。
その一方で、作業員Aに関するフローのステップS5において、作業員Aの動きが基準動作パターンに合致すると判定した時点から所定時間経過後にYESと判定し、作業員Aに対してステップS8を実行する。これにより、作業員A及びAの作業が終了するタイミングが近接してしまう場合において、作業員AとAとに対し、作業が終了する順序に従って、異なるタイミングでステップS8を実行できる。
以上のような制御方法によって、作業が終了するタイミングが少なくとも2人の作業員A、A、Aの間で時間的に近接してしまう場合でも、作業員A、A、及びAに対し、ステップS8(物品供給動作)及びステップS9(物品回収動作)を、ロボット12又は作業員A、A、Aの動作が停滞することなく、円滑に実行することができる。
また、ロボット12によって効率よく物品を供給できるため、ロボット12の稼働率を上げることができる。その結果、複数の作業員A、A、Aのそれぞれの作業の補助のために複数のロボットを設ける必要がなくなり、1つのロボット12で複数の作業員A、A、Aの作業の補助を行うことができる。したがって、ロボットシステム80のコストを削減できる。
なお、ロボットシステム80において、プロセッサ64は、作業員A、A及びAのうちのいずれかに対して、上述のロボットシステム10が実行する図3のフロー(すなわち、ステップS5で学習モデルLMを用いないフロー)を実行してもよい。この場合、プロセッサ64は、学習モデルLMを用いない図3のフローと、学習モデルLMを用いる図3のフローとを、別々の作業員に対して並行して実行することになる。また、ロボットシステム80において、1つの検出装置14が、作業員A、A及びAの動きを検出するように構成されてもよい。
なお、上述の実施形態においては、ステップS8において、ロボット12が第nの工具Tを第1の治具Dにセットする場合について述べた。しかしながら、これに限らず、ロボット12は、作業員A(又は、A、A、A)に、第nの工具Tを直接手渡ししてもよい。
この場合、制御装置16、62(プロセッサ64)は、ステップS8において、物品供給動作として、ロボット12がロボットハンド26で把持した第nの工具Tを、予め定められた手渡し位置に運搬する。この手渡し位置は、作業員Aへ第nの工具Tを手渡しするための作業員Aに近接した位置として、定められる。手渡し位置のロボット座標系Cにおける位置データは、メモリ(66)に予め記憶される。作業員A(又は、A、A、A)は、ステップS8でロボット12が手渡し位置に配置した第nの工具Tを、手Hで受け取る。
この場合において、ロボット12に、ロボットハンド26に掛かる外力Fを検出する力センサを設けてもよい。作業員A(又は、A、A、A)が第nの工具Tをロボット12から手Hで受け取った場合、ロボットハンド26に掛かる外力Fは変動することになる。制御装置16、62(プロセッサ64)は、力センサが検出する外力Fを監視し、該外力Fが所定の閾値を超えて変動した場合に、作業員Aが第nの工具Tを受け取ったと判定し、ステップS9に進んでもよい。
また、上述の実施形態においては、ステップS9において、ロボット12が、第2の治具Dにセットされている、直前の第n-1の作業で用いた第n-1の工具Tn-1をロボットハンド26で把持して回収する場合について述べた。しかしながら、これに限らず、ロボット12は、作業員A(又は、A、A、A)から第n-1の工具Tn-1を直接受け取ってもよい。
この場合において、ロボット12に、ロボットハンド26に掛かる外力Fを検出する力センサを設けてもよい。そして、制御装置16、62(プロセッサ64)は、ステップS9において、物品回収動作として、まず、ロボットハンド26の指部26aを開いた状態でロボットハンド26の手先(TCP)を、手渡し位置に配置させる。作業員A(又は、A、A、A)は、ロボットハンド26の指部26aの間に第n-1の工具Tn-1を挿入し、該第n-1の工具Tn-1を通して該ロボットハンド26に外力Fを加える。力センサは、このときの外力Fを検出する。
制御装置16、62(プロセッサ64)は、力センサによって検出された外力Fが予め定められた閾値を超えたときに、ロボットハンド26の指部26aを閉じて第n-1の工具Tn-1を把持する。こうして、ロボット12は、作業員A(又は、A、A、A)から第n-1の工具Tn-1を直接受け取ることができる。そして、制御装置16、62(プロセッサ64)は、受け取った第n-1の工具Tn-1を、保管台E上の所定位置まで運搬する。
なお、上述の実施形態においては、検出装置14が、光学式モーションキャプチャによって、作業員A(又は、A、A、A)を撮像した画像に基づいて、作業員A(又は、A、A、A)の動きを検出する場合について述べた。しかしながら、これに限らず、検出装置は、いわゆる慣性センサ式モーションキャプチャによって作業員A(又は、A、A、A)の動きを検出してもよい。この場合、検出装置は、作業員A(又は、A、A、A)の身体の各部位に設けられた複数の加速度センサを有し、該加速度センサの出力信号から、作業員A(又は、A、A、A)の動きを検出する。
このような加速度センサを有する検出装置を用いて機械学習装置50で学習モデルLMを学習する場合、プロセッサ64(学習データ取得部52)は、学習データセットDSとして、各加速度センサの出力信号を検出データとして取得してもよい。又は、プロセッサ64(学習データ取得部52)は、学習データセットDSとして、各加速度センサの出力信号から得られる作業員A(又は、A、A、A)の動きを示す検出データ(画像データ)を取得してもよい。また、検出装置は、機械式又は磁気式等、如何なるタイプのモーションキャプチャ技術を用いるものであってもよい。
また、上述の実施形態においては、制御装置16(プロセッサ64)が、終了判断部30として機能し、検出装置14の検出データDDに基づいて第nの作業が終了するか否かを判断する場合について述べた。しかしながら、これに限らず、検出装置14に内蔵された画像処理プロセッサが、終了判断部30として機能し、検出データDDに基づいて第nの作業が終了するか否かを判断してもよい。
また、上述の実施形態においては、第nの作業が、締結孔F~Fに、締結孔F→F→F→F→Fの順で締結具Gを締結する作業である場合について述べた。しかしながら、締結孔F~Fに締結具Gを締結する順序は、如何なる順序であってもよい。また、締結孔F~Fの個数も、如何なる個数であってもよい。
さらには、第nの作業は、締結作業に限定されない。例えば、第nの作業は、作業員Aが、溶接トーチである第nの工具によって、第1の溶接点、第2の溶接点、・・・第nの溶接点に対して溶接(例えば、スポット溶接)を行う作業であってもよい。又は、第nの作業は、作業員Aが、塗料塗布器である第nの工具によって、第1の塗装箇所、第2の塗装箇所、・・・第nの塗装箇所に対して順に塗工する作業であってもよい。又は、第nの作業は、作業員Aが、半田ごてである第nの工具によって、電子部品を、基板上の第1の実装位置、第2の実装位置、・・・第nの実装位置で半田付けする作業であってもよい。
また、上述した実施形態においては、ロボット12が、作業のための物品として、工具Tを作業員に対して供給及び回収する場合について述べた。しかしながら、これに限らず、ロボット12は、作業のための物品として、例えば、製品に取り付ける部品(ボルト等の締結具G、ICチップ等の電子部品)を供給及び回収してもよい。
また、ロボットハンド26は、指部aで物品を把持するものに限らず、吸着部を有し、該吸着部によって物品を吸着するものであってもよい。また、ロボット12は、垂直多関節型に限らず、水平多関節型、パラレルリンク型等、如何なるタイプのロボットでもよい。以上、実施形態を通じて本開示を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。
10,60,80 ロボットシステム
12 ロボット
14,14A,14B,14C 検出装置
16,62 制御装置
28 ロボット制御部
30 終了判断部
50 機械学習装置
52 学習データ取得部
54 学習部
制御装置16は、ステップS4の開始後に取得した検出データDDで示される作業員Aの動きが、基準動作パターンに合致するか否かを監視し、作業員Aの動きが該基準動作パターンと合致したときに、第nの作業が終了すると判断する。なお、制御装置16は、作業員Aの動きが基準動作パターンに合致したと判定してから所定時間が経過したときに、第nの作業が終了すると判断してもよい。

Claims (8)

  1. 作業員の作業を補助するロボットシステムであって、
    ロボットと、
    作業員が所定の作業をしているときに該作業員の動きを検出する検出装置と、
    前記検出装置の検出データに基づいて、前記作業が終了するか否かを判断する終了判断部と、
    前記終了判断部によって前記作業が終了すると判断されたときに、該作業のための物品を作業員へ供給するために該物品を予め定められた位置へ運搬する物品供給動作、又は、前記作業で用いた前記物品を回収して予め定めた保管場所まで運搬する物品回収動作、を前記ロボットに実行させるロボット制御部と、を備える、ロボットシステム。
  2. 前記終了判断部は、
    前記検出データから、作業員と作業箇所との距離が所定の閾値以下になったか否かを監視し、
    前記距離が前記閾値以下になったときに、前記作業が終了すると判断する、請求項1に記載のロボットシステム。
  3. 前記終了判断部は、
    前記検出装置が検出する前記動きが、作業員が前記作業を行うときの基準の動作として予め定めた基準動作パターンに合致するか否かを監視し、
    前記動きが前記基準動作パターンと合致したときに、前記作業が終了すると判断する、請求項1に記載のロボットシステム。
  4. 前記終了判断部は、前記動きと、前記作業の段階又は該作業に要した時間と、の相関性を表す学習モデルにさらに基づいて、前記作業が終了するか否かを判断する、請求項1に記載のロボットシステム。
  5. 前記ロボット制御部は、前記物品供給動作を実行した後に、前記ロボットに前記物品回収動作を実行させ、直前の前記作業で用いた前記物品を回収して前記予め定めた保管場所まで運搬する、請求項1~4のいずれか1項に記載のロボットシステム。
  6. 作業員の作業を補助するロボットを制御する方法であって、
    作業員が所定の作業をしているときに該作業員の動きを検出装置によって検出し、
    前記検出装置の検出データに基づいて、前記作業が終了するか否かを判断し、
    前記作業が終了すると判断したときに、該作業のための物品を作業員へ供給するために該物品を予め定められた位置へ運搬する物品供給動作、又は、前記作業で用いた前記物品を回収して予め定めた保管場所まで運搬する物品回収動作、を前記ロボットに実行させる、方法。
  7. 作業員の作業が終了するタイミングを学習する機械学習装置であって、
    作業員が所定の作業を行っているときに該作業員の動きを検出する検出装置の検出データと、前記作業の段階を示すラベル情報又は該作業に要した時間と、を、学習データセットとして取得する学習データ取得部と、
    前記学習データセットを用いて、前記動きと前記段階又は前記時間との相関性を表す学習モデルを生成する学習部と、を備える、機械学習装置。
  8. 作業員の作業が終了するタイミングを学習する機械学習方法であって、
    作業員が所定の作業を行っているときに該作業員の動きを検出する検出装置の検出データと、前記作業の段階を示すラベル情報又は該作業に要した時間と、を、学習データセットとして取得し、
    前記学習データセットを用いて、前記動きと前記段階又は前記時間との相関性を表す学習モデルを生成する、機械学習方法。
JP2023218412A 2019-09-26 2023-12-25 作業員の作業を補助する機械学習装置、及び機械学習方法 Pending JP2024023873A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023218412A JP2024023873A (ja) 2019-09-26 2023-12-25 作業員の作業を補助する機械学習装置、及び機械学習方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019176122A JP7448327B2 (ja) 2019-09-26 2019-09-26 作業員の作業を補助するロボットシステム、制御方法、機械学習装置、及び機械学習方法
JP2023218412A JP2024023873A (ja) 2019-09-26 2023-12-25 作業員の作業を補助する機械学習装置、及び機械学習方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2019176122A Division JP7448327B2 (ja) 2019-09-26 2019-09-26 作業員の作業を補助するロボットシステム、制御方法、機械学習装置、及び機械学習方法

Publications (1)

Publication Number Publication Date
JP2024023873A true JP2024023873A (ja) 2024-02-21

Family

ID=74872805

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019176122A Active JP7448327B2 (ja) 2019-09-26 2019-09-26 作業員の作業を補助するロボットシステム、制御方法、機械学習装置、及び機械学習方法
JP2023218412A Pending JP2024023873A (ja) 2019-09-26 2023-12-25 作業員の作業を補助する機械学習装置、及び機械学習方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2019176122A Active JP7448327B2 (ja) 2019-09-26 2019-09-26 作業員の作業を補助するロボットシステム、制御方法、機械学習装置、及び機械学習方法

Country Status (4)

Country Link
US (1) US12017358B2 (ja)
JP (2) JP7448327B2 (ja)
CN (1) CN112549014A (ja)
DE (1) DE102020124379A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113268431B (zh) * 2021-06-24 2022-08-19 深圳市凯莱特科技股份有限公司 一种rpa机器人软件的学习方法
WO2024085159A1 (ja) * 2022-10-18 2024-04-25 ソフトバンクグループ株式会社 作業ロボット調整方法、センシングシステム、センシング方法、移動式ロボット、動作改変システム、動作改変方法、作業ロボット、作業再現システム、作業再現方法、作業習熟システム、作業習熟方法及び作業再現ロボット

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101483713B1 (ko) * 2008-06-30 2015-01-16 삼성전자 주식회사 모션 캡쳐 장치 및 모션 캡쳐 방법
JP2010264559A (ja) 2009-05-15 2010-11-25 Seiko Epson Corp ロボットの制御方法
JP5062774B2 (ja) * 2009-05-21 2012-10-31 トヨタ自動車東日本株式会社 作業訓練システム及び作業訓練方法並びに該作業訓練方法を記録した記録媒体
CN104308849B (zh) 2009-05-22 2016-06-01 丰田自动车东日本株式会社 作业辅助机器人系统
JP6344084B2 (ja) * 2014-06-20 2018-06-20 オムロン株式会社 ロボット操作用の作業者端末
JP6494331B2 (ja) * 2015-03-03 2019-04-03 キヤノン株式会社 ロボット制御装置およびロボット制御方法
JP6821374B2 (ja) * 2016-10-06 2021-01-27 川崎重工業株式会社 ロボットシステム及びその運転方法
JP6662746B2 (ja) * 2016-10-07 2020-03-11 ファナック株式会社 機械学習部を備えた作業補助システム
JP6487489B2 (ja) * 2017-05-11 2019-03-20 ファナック株式会社 ロボット制御装置及びロボット制御プログラム
US11556879B1 (en) * 2017-06-12 2023-01-17 Amazon Technologies, Inc. Motion data driven performance evaluation and training
US10404851B2 (en) * 2017-07-07 2019-09-03 Tile, Inc. Task completion in a tracking device environment
WO2019097676A1 (ja) 2017-11-17 2019-05-23 三菱電機株式会社 3次元空間監視装置、3次元空間監視方法、及び3次元空間監視プログラム
EP3696772A3 (en) * 2019-02-14 2020-09-09 Denso Wave Incorporated Device and method for analyzing state of manual work by worker, and work analysis program
US20200265363A1 (en) * 2019-02-15 2020-08-20 Wipro Limited Method and system for determining working condition of a worker performing qualitative evaluation of products

Also Published As

Publication number Publication date
JP7448327B2 (ja) 2024-03-12
DE102020124379A1 (de) 2021-04-01
US20210094175A1 (en) 2021-04-01
CN112549014A (zh) 2021-03-26
US12017358B2 (en) 2024-06-25
JP2021053708A (ja) 2021-04-08

Similar Documents

Publication Publication Date Title
CN107767760B (zh) 机械学习器、机器人系统以及机械学习方法
JP2024023873A (ja) 作業員の作業を補助する機械学習装置、及び機械学習方法
CN109002012B (zh) 控制装置以及机器学习装置
US11904469B2 (en) Machine learning device, robot controller, robot system, and machine learning method for learning action pattern of human
JP6810087B2 (ja) 機械学習装置、機械学習装置を用いたロボット制御装置及びロボットビジョンシステム、並びに機械学習方法
US11780095B2 (en) Machine learning device, robot system, and machine learning method for learning object picking operation
JP6549545B2 (ja) 人の行動を学習してロボットを制御する制御装置およびロボットシステム
JP6680732B2 (ja) 物品積み付け装置及び機械学習装置
CN109382825B (zh) 控制装置以及学习装置
EP3222393A1 (en) Automated guidance system and method for a coordinated movement machine
SE526119C2 (sv) Metod och system för programmering av en industrirobot
US11712801B2 (en) Machine learning apparatus, robot system, and machine learning method of learning state of tool
CN109202394B (zh) 部件供给装置以及机器学习装置
US11235463B2 (en) Robot system and robot control method for cooperative work with human
CN112775967A (zh) 基于机器视觉的机械臂抓取方法、装置及设备
CN108687766B (zh) 机器人的控制装置、机器学习装置以及机器学习方法
Namiki et al. Vision-based predictive assist control on master-slave systems
Cserteg et al. Assisted assembly process by gesture controlled robots
US20210339391A1 (en) Method and Device for Creating a Robot Control Program
Iossifidis et al. Anthropomorphism as a pervasive design concept for a robotic assistant
US20230104802A1 (en) Control device, control method and storage medium
JP2023538397A (ja) ロボット溶接システム
JP2022155853A (ja) 作業指示システム
JP2021077230A (ja) 動作認識装置、動作認識方法、動作認識プログラム及び動作認識システム
He et al. Development of a practical tool in pick-and-place tasks for human workers

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240625

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240808