JP7260002B2 - 制御装置、制御方法、及び制御プログラム - Google Patents

制御装置、制御方法、及び制御プログラム Download PDF

Info

Publication number
JP7260002B2
JP7260002B2 JP2021570581A JP2021570581A JP7260002B2 JP 7260002 B2 JP7260002 B2 JP 7260002B2 JP 2021570581 A JP2021570581 A JP 2021570581A JP 2021570581 A JP2021570581 A JP 2021570581A JP 7260002 B2 JP7260002 B2 JP 7260002B2
Authority
JP
Japan
Prior art keywords
suction head
workpiece
pressure
compressed air
robot device
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
JP2021570581A
Other languages
English (en)
Other versions
JPWO2021144935A1 (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 JPWO2021144935A1 publication Critical patent/JPWO2021144935A1/ja
Application granted granted Critical
Publication of JP7260002B2 publication Critical patent/JP7260002B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23PMETAL-WORKING NOT OTHERWISE PROVIDED FOR; COMBINED OPERATIONS; UNIVERSAL MACHINE TOOLS
    • B23P19/00Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes
    • B23P19/001Article feeders for assembling machines
    • B23P19/007Picking-up and placing mechanisms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • B25J15/06Gripping heads and other end effectors with vacuum or magnetic holding means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23PMETAL-WORKING NOT OTHERWISE PROVIDED FOR; COMBINED OPERATIONS; UNIVERSAL MACHINE TOOLS
    • B23P19/00Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes
    • B23P19/04Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes for assembling or disassembling parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23PMETAL-WORKING NOT OTHERWISE PROVIDED FOR; COMBINED OPERATIONS; UNIVERSAL MACHINE TOOLS
    • B23P19/00Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes
    • B23P19/04Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes for assembling or disassembling parts
    • B23P19/06Screw or nut setting or loosening machines
    • 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
    • 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/087Controls for manipulators by means of sensing devices, e.g. viewing or touching devices for sensing other physical parameters, e.g. electrical or chemical properties
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • B25J15/06Gripping heads and other end effectors with vacuum or magnetic holding means
    • B25J15/0616Gripping heads and other end effectors with vacuum or magnetic holding means with vacuum
    • 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/39024Calibration of manipulator
    • 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/39271Ann artificial neural network, ffw-nn, feedforward neural network
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40032Peg and hole insertion, mating and joining, remote center compliance

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)
  • Automatic Assembly (AREA)

Description

本発明は、制御装置、制御方法、及び制御プログラムに関する。
製造ラインのような製品を製造する場面等において、吸着ヘッドによりワークを吸着し、当該ワークを所望の位置に移送するように構成されたロボット装置を利用することがある。このロボット装置を利用する際には、ワークの供給位置から多少ずれた位置にワークが配置されても、吸着ヘッドによりワークを吸着可能にアプリケーションが構成される。しかしながら、許容範囲を超えてワークが供給位置からずれて配置された場合には、吸着ヘッドは、当該供給位置でワークを吸着することができなくなってしまう。これにより、ワークを保持できないため、ロボット装置は、当該ワークを所望の位置に移送することができなくなってしまう。
特許文献1では、この問題を解決するための一つの方法が提案されている。具体的に、特許文献1で提案されている部品移送装置は、部品を圧縮エアで吸着保持する吸着ヘッド、吸着ヘッドを移動させる移動手段、及び圧縮エアの圧力を検出するエア圧センサを備える。この部品移送装置は、部品の供給位置に吸着ヘッドを移動させた後、エア圧センサの出力信号が上がったか否かに応じて、吸着ヘッドが部品を吸着したか否かを判定する。そして、吸着ヘッドが部品を吸着していないと判定した場合には、部品移送装置は、吸着ヘッドを供給位置から互いに直交する水平な2方向(X方向及びY方向)に往復移動させて、吸着ヘッドによる部品の吸着を試行する。この方法によれば、交差する水平な2方向のいずれかの方向に供給位置から部品がずれて配置されても、部品移送装置は、当該部品を吸着保持することができる。
特開2011-218484号公報
本件発明者らは、特許文献1のような従来の方法では、次のような問題点があることを見出した。すなわち、ワークの位置ずれは、供給位置から交差する水平な2方向のいずれかの方向に生じるとは限らない。そのため、これらの2方向から逸れた方向にワークがずれて配置されている場合には、ワークを吸着可能な位置が見つかるとは限らない。また、従来の方法では、ワークを吸着できた位置が1つ見つかると、ワークを吸着可能な位置の探索を打ち切る。探索された当該位置は、ワークを吸着可能な位置の局所解に過ぎず、吸着ヘッドが、この位置で、ワークを安定的に吸着できない可能性がある。特に、吸着ヘッドが比較的に小さい場合には、ワークの位置ずれが、吸着ヘッドとワークとの相対的な位置関係に致命的な影響を与える。そのため、この場合には、位置ずれに起因するこれらの問題が生じやすくなる。
更に、従来の方法では、供給位置から交差する水平な2方向それぞれに存在する探索点の合計4つの探索点でワークを吸着可能な位置を探索するために、いずれかの探索点に吸着ヘッドを移動させて、当該いずれかの探索点でワークを吸着できたか否かを判定する。その後、ワークを吸着できなかった場合には、吸着ヘッドを供給位置に一度戻し、供給位置に戻した吸着ヘッドを他の探索点に移動させる。そのため、吸着ヘッドを各探索点に移動させる度に供給位置を経由する分だけ、ワークを吸着可能な位置を探索するのに手間がかかる。
したがって、従来の方法では、ワークが所定の位置からずれた場合に、吸着ヘッドがワークを安定的に吸着可能な位置を適切かつ簡易に推定することができなかった。
本発明は、一側面では、このような実情を鑑みてなされたものであり、その目的は、ワークが所定の位置からずれた場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を適切かつ簡易に推定するための技術を提供することである。
本発明は、上述した課題を解決するために、以下の構成を採用する。
すなわち、本発明の一側面に係る制御装置は、圧縮空気によりワークを吸着するように構成された吸着ヘッド、及び前記圧縮空気の圧力を検出するように構成された圧力センサを備えるロボット装置の動作を制御する制御装置であって、前記ロボット装置に対して、前記ワークが供給される所定の位置に前記吸着ヘッドを移動させる移動制御部と、前記ロボット装置に対して、前記所定の位置で前記吸着ヘッドによる前記ワークの吸着を試行させる吸着制御部と、前記圧力センサにより前記圧縮空気の圧力を検出した結果に基づいて、前記吸着ヘッドが前記試行により前記ワークを吸着したか否かを判定する判定部と、前記吸着ヘッドが前記ワークを吸着していないと判定された場合、前記ロボット装置に対して、前記圧縮空気により前記ワークを吸着する動作を前記吸着ヘッドに実行させながら、前記吸着ヘッドを水平方向に渦巻状に回転移動させる探査部と、前記回転移動をさせている間における、前記圧力センサにより検出される前記圧縮空気の圧力の変化に基づいて、前記所定の位置に対して前記ワークの存在する方向を推定する推定部と、を備え、前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記移動制御部は、前記ロボット装置に対して、推定された前記方向に前記吸着ヘッドを更に移動させ、推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着制御部は、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させる。
当該構成に係る制御装置は、ロボット装置に対して、ワークの供給される所定の位置に吸着ヘッドを移動させ、当該所定の位置で吸着ヘッドによるワークの吸着を試行させる。この試行において、吸着ヘッドによりワークを吸着することができなかった場合、当該構成に係る制御装置は、ロボット装置に対して、ワークを吸着する動作を吸着ヘッドに実行させながら、吸着ヘッドを水平方向に渦巻状に回転移動させることで、ワークの存在する真の位置を探索する。回転移動は、所定の位置から開始されてもよいし、任意の方向に任意の距離だけ所定の位置からずれた位置より開始されてもよい。次に、当該構成に係る制御装置は、吸着ヘッドを回転移動させている間における、圧縮空気の圧力の変化に基づいて、所定の位置に対してワークの存在する方向を推定する。そして、当該構成に係る制御装置は、ロボット装置に対して、推定された方向に吸着ヘッドを更に移動させ、吸着ヘッドによるワークの吸着を移動先で再び試行させる。なお、移動距離は、一定値であってもよいし、或いは、圧力の検出値に応じて決定されてよい。
吸着ヘッドによりワークを吸着すると圧縮空気の圧力が最大になるため、この探索において、吸着ヘッドがワークに近付くほど圧縮空気の圧力は大きくなり、吸着ヘッドがワークから遠ざかるほど圧縮空気の圧力は小さくなる。そのため、上記推定処理では、当該ワークの存在する位置を適切に推定することができる。加えて、吸着ヘッドの旋回量を1周以上に設定することで、吸着ヘッドの渦巻状の回転移動により、所定の位置から360度の全方向にワークを探索することができる。すなわち、当該構成に係る制御装置によれば、上記2方向に探索する方法に比べて、ワークを探索する方向の漏れを低減する(究極的には無くす)ことができる。更に、当該ワークの探索は、吸着ヘッドの渦巻状の回転移動という比較的に簡易な動作の制御により実現することができる。したがって、当該構成に係る制御装置によれば、ワークが所定の位置からずれて配置された場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を適切かつ簡易に推定することができる。
また、渦巻状の回転移動によれば、別方向の探索を行うために定位置に戻る等のようなワークの探索には無意味な動作を低減することができ、これにより、比較的に短時間でワークを吸着可能な位置を発見することができる。更に、推定結果を利用して吸着ヘッドを移動させた後にワークの吸着を再度試みることで、吸着ヘッドによりワークを安定的に保持し、所望のタスク(工程)をロボット装置に適切に遂行させることができる。これにより、ロボット装置の生産性を高めることができる。
なお、ワークは、吸着により保持可能なものであれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。具体例として、ワークは、ネジ、ワッシャ等であってよい。ロボット装置は、吸着ヘッド及び圧力センサを備えていれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。具体例として、ロボット装置は、垂直多関節ロボット、スカラロボット、パラレルリンクロボット、直交ロボット、協調ロボット等の産業用ロボットであってよい。
吸着ヘッドは、圧縮空気によりワークを吸着可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。吸着ヘッドのタイプは、例えば、長円タイプ、円形タイプ、多段ベローズタイプ等であってよい。また、吸着ヘッドには、コアンダグリッパが用いられてよい。吸着ヘッドは、例えば、吸着パッド、真空パッド等と称されてもよい。圧力センサは、圧縮空気の圧力を検出可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。圧力センサには、例えば、公知のデジタル圧力センサが用いられてよい。
渦巻状は、探索の開始位置(中心軸)から径を大きくしながら円弧を描くことで形成される曲線、換言すると、旋回するにつれて中心(開始位置)から遠ざかる曲線である。開始位置は、所定の位置であってもよいし、或いは、任意の方向に任意の距離だけ所定の位置からずれた位置であってもよい。水平方向に渦巻状に回転移動させることは、垂直方向から見たときに吸着ヘッドの軌跡が水平面に対して渦巻を描くように当該吸着ヘッドを移動させることである。この回転移動の間、吸着ヘッドの高さは一定に維持されてもよいし、或いは、吸着ヘッドは垂直方向上下に移動させてもよい、すなわち、吸着ヘッドの高さは変動させてもよい。
上記一側面に係る制御装置において、前記推定部は、前記回転移動をさせている間における、前記圧力センサにより検出される前記圧縮空気の圧力の変化に基づいて、前記所定の位置と前記ワークの存在する位置との間の距離を更に推定してもよい。そして、前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記移動制御部は、前記ロボット装置に対して、推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させてもよく、推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着制御部は、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させてもよい。当該構成によれば、ワークが所定の位置からずれて配置された場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を更に適切に推定することができる。
上記一側面に係る制御装置において、前記ワークの存在する前記方向を推定することは、前記回転移動の軌跡を、当該回転移動の軸周りに複数の区間に分割し、前記複数の区間のうち、前記圧力センサにより検出される前記圧縮空気の圧力が最も高い1つの区間を特定し、かつ前記所定の位置に対する特定された前記1つの区間の方向を、前記ワークの存在する前記方向として採用すること、により構成されてよい。当該構成によれば、ワークが所定の位置からずれて配置された場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を更に簡易に推定することができる。
上記一側面に係る制御装置において、前記圧縮空気の圧力が最も高い1つの区間を特定することは、前記圧力センサにより検出される前記圧縮空気の圧力が最も高い検出点の属する1つの区間を特定すること、により構成されてよい。或いは、上記一側面に係る制御装置において、前記圧縮空気の圧力が最も高い1つの区間を特定することは、前記圧力センサにより検出される前記圧縮空気の圧力の平均値を前記区間毎に算出し、かつ前記複数の区間のうち、算出された前記圧力の平均値の最も高い1つの区間を特定すること、により構成されてよい。各構成によれば、ワークが所定の位置からずれて配置された場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を適切に推定することができる。
上記一側面に係る制御装置において、前記渦巻状の回転移動は、それぞれ径の異なる複数の旋回を含んでよい。前記推定部は、特定された前記1つの区間において前記圧力センサにより検出される前記圧縮空気の圧力の前記各旋回の間での比較に基づいて、前記所定の位置と前記ワークの存在する位置との間の距離を更に推定してもよい。そして、前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記移動制御部は、前記ロボット装置に対して、推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させてよく、推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着制御部は、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させてもよい。当該構成によれば、ワークが所定の位置からずれて配置された場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を更に適切に推定することができる。
上記一側面に係る制御装置において、検出される前記圧縮空気の圧力を前記各旋回の間で比較することは、前記複数の旋回のうち、特定された前記1つの区間において前記圧力センサにより検出される前記圧縮空気の圧力が最も高い1つの旋回を特定することを含んでもよい。前記推定部は、特定された前記1つの旋回の径に応じて、前記所定の位置と前記ワークの存在する位置との間の距離を推定してもよい。当該構成によれば、ワークが所定の位置からずれて配置された場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を更に適切に推定することができる。
上記一側面に係る制御装置において、前記ワークの存在する前記方向を推定することは、前記圧力センサにより検出される前記圧縮空気の圧力が最も高い検出点を特定し、かつ前記所定の位置に対する特定された前記検出点の方向を、前記ワークの存在する前記方向として採用すること、により構成されてよい。当該構成によれば、ワークが所定の位置からずれて配置された場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を適切かつ簡易に推定することができる。
上記一側面に係る制御装置において、前記渦巻状の回転移動は、それぞれ径の異なる複数の旋回を含んでよい。前記推定部は、前記所定の位置と特定された前記検出点との間の距離に基づいて、前記所定の位置と前記ワークの存在する位置との間の距離を更に推定してもよい。そして、前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記移動制御部は、前記ロボット装置に対して、推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させてよく、推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着制御部は、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させてもよい。旋回の回数が1回の場合、圧力が更に高くなる点が存在する可能性があるため、探索の中で圧力最大の検出点が、ワークを吸着に最適な位置とは限らない。当該構成によれば、径の異なる複数の旋回により、圧力が大きくなる検出点の探索漏れを低減することができる。これにより、ワークが所定の位置からずれて配置された場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を更に適切に推定することができる。なお、この場合、所定の位置と検出点との間の距離がそのまま推定距離に採用されてよい。
上記一側面に係る制御装置は、前記圧力センサにより前記圧縮空気の圧力を検出した結果を較正する較正部を更に備えてもよい。前記探査部は、前記吸着ヘッドを水平方向に渦巻状に回転移動させている間、前記ロボット装置に対して、前記吸着ヘッドを上下方向に更に変位させてもよい。前記検出した結果を較正することは、前記吸着ヘッドを上下方向に変位させている間に前記圧力センサにより検出される前記圧縮空気の圧力の変動と、前記吸着ヘッドの上下方向の変位に基づいて仮定される前記圧縮空気の圧力の変動とのずれを解消することにより構成されてよい。そして、前記推定部は、較正された前記結果を利用して、前記所定の位置に対して前記ワークの存在する方向を推定してもよい。
圧力センサによる圧力の検出結果(検出値)は、吸着ヘッドによる探索時点から時間軸で遅れて得られる可能性がある。この圧力の検出結果が得られる時点と探索時点との時間軸上のずれがなければ、吸着ヘッドを上下方向に移動させた場合、最下点で圧力の検出値が最も大きくなり(極大値)、最高点で圧力の検出値が最も小さくなる(極小値)と想定される。一方、圧力の検出結果が探索時点から遅れて得られる場合、吸着ヘッドが最下点に到達した時点から遅れたタイミングで圧力の検出値が極大値となる。同様に、吸着ヘッドが最高点に到達した時点から遅れたタイミングで圧力の検出値が極小値となる。当該構成によれば、上記較正処理により、このずれを解消することができる。したがって、当該構成によれば、ワークが所定の位置からずれて配置された場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を更に適切に推定することができる。
上記一側面に係る制御装置において、前記ワークは、ネジであってよく、前記ロボット装置は、前記吸着ヘッドにより吸着されたネジを、当該ネジの軸周りに回転させるためのドライバを更に備えてもよい。当該構成によれば、ネジ回しの工程を遂行するロボット装置の生産性を高めることができる。
上記各形態に係る制御装置の別の態様として、本発明の一側面は、以上の各構成を実現する情報処理方法であってもよいし、プログラムであってもよいし、このようなプログラムを記憶した、コンピュータ等が読み取り可能な記憶媒体であってもよい。ここで、コンピュータ等が読み取り可能な記憶媒体とは、プログラム等の情報を、電気的、磁気的、光学的、機械的、又は、化学的作用によって蓄積する媒体である。また、本発明の一側面に係るロボットシステムは、上記いずれかの形態に係る制御装置及びロボット装置により構成されてよい。
例えば、本発明の一側面に係る制御方法は、圧縮空気によりワークを吸着するように構成された吸着ヘッド、及び前記圧縮空気の圧力を検出するように構成された圧力センサを備えるロボット装置の動作の情報処理方法であって、コンピュータが、前記ロボット装置に対して、前記ワークが供給される所定の位置に前記吸着ヘッドを移動させるステップと、前記ロボット装置に対して、前記所定の位置で前記吸着ヘッドによる前記ワークの吸着を試行させるステップと、前記圧力センサにより前記圧縮空気の圧力を検出した結果に基づいて、前記吸着ヘッドが前記試行により前記ワークを吸着したか否かを判定するステップと、を実行し、前記吸着ヘッドが前記ワークを吸着していないと判定した場合に、前記コンピュータが、前記ロボット装置に対して、前記圧縮空気により前記ワークを吸着する動作を前記吸着ヘッドに実行させながら、前記吸着ヘッドを水平方向に渦巻状に回転移動させるステップと、前記回転移動をさせている間における、前記圧力センサにより検出される前記圧縮空気の圧力の変化に基づいて、前記所定の位置に対して前記ワークの存在する方向を推定するステップと、前記ロボット装置に対して、推定された前記方向に前記吸着ヘッドを更に移動させるステップと、推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させるステップと、を実行する、情報処理方法である。
例えば、本発明の一側面に係る制御プログラムは、圧縮空気によりワークを吸着するように構成された吸着ヘッド、及び前記圧縮空気の圧力を検出するように構成された圧力センサを備えるロボット装置の動作を制御するためのプログラムであって、コンピュータに、前記ロボット装置に対して、前記ワークが供給される所定の位置に前記吸着ヘッドを移動させるステップと、前記ロボット装置に対して、前記所定の位置で前記吸着ヘッドによる前記ワークの吸着を試行させるステップと、前記圧力センサにより前記圧縮空気の圧力を検出した結果に基づいて、前記吸着ヘッドが前記試行により前記ワークを吸着したか否かを判定するステップと、を実行させ、前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記コンピュータに、前記ロボット装置に対して、前記圧縮空気により前記ワークを吸着する動作を前記吸着ヘッドに実行させながら、前記吸着ヘッドを水平方向に渦巻状に回転移動させるステップと、前記回転移動をさせている間における、前記圧力センサにより検出される前記圧縮空気の圧力の変化に基づいて、前記所定の位置に対して前記ワークの存在する方向を推定するステップと、前記ロボット装置に対して、推定された前記方向に前記吸着ヘッドを更に移動させるステップと、推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させるステップと、を実行させるための、プログラムである。
本発明によれば、ワークが所定の位置からずれた場合でも、吸着ヘッドがワークを安定的に吸着可能な位置を適切かつ簡易に推定することができる。
図1は、本発明が適用される場面の一例を模式的に例示する。 図2は、探査時における吸着ヘッドの軌跡と圧縮空気の圧力との関係を例示する。 図3は、実施の形態に係る制御装置のハードウェア構成の一例を模式的に例示する。 図4は、実施の形態に係るロボット装置の一例を模式的に例示する。 図5Aは、実施の形態に係るロボット装置の動作の一例を示す。 図5Bは、実施の形態に係るロボット装置の動作の一例を示す。 図5Cは、実施の形態に係るロボット装置の動作の一例を示す。 図5Dは、実施の形態に係るロボット装置の動作の一例を示す。 図5Eは、実施の形態に係るロボット装置の動作の一例を示す。 図5Fは、実施の形態に係るロボット装置の動作の一例を示す。 図5Gは、実施の形態に係るロボット装置の動作の一例を示す。 図5Hは、実施の形態に係るロボット装置の動作の一例を示す。 図6は、実施の形態に係る制御装置のソフトウェア構成の一例を模式的に例示する。 図7は、実施の形態に係る制御装置の処理手順の一例を示す。 図8は、ある位置で吸着ヘッドを上下方向に変位させている間に圧力センサにより検出される圧縮空気の圧力の変動と、当該吸着ヘッドの上下方向の変位に基づいて仮定される圧縮空気の圧力の変動との間の関係を模式的に例示する。 図9は、吸着ヘッドの軌跡と区間との関係の一例を模式的に例示する。 図10は、検出される圧力(検出値)の一例を模式的に例示する。
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
§1 適用例
まず、図1を用いて、本発明が適用される場面の一例について説明する。図1は、本実施形態に係るロボットシステムの適用場面の一例を模式的に例示する。図1に示されるとおり、本実施形態に係るロボットシステムは、制御装置1及びロボット装置2を備える。
本実施形態に係るロボット装置2は、吸着によりワークWを把持し、把持したワークWを所望の位置に運搬するように構成される。具体的には、本実施形態に係るロボット装置2は、吸着ヘッド30、コンプレッサ31、及び圧力センサ32を備える。
吸着ヘッド30は、圧縮空気によりワークWを吸着するように構成される。吸着ヘッド30は、圧縮空気によりワークWを吸着可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。吸着ヘッド30のタイプは、例えば、長円タイプ、円形タイプ、多段ベローズタイプ等であってよい。また、吸着ヘッド30には、コアンダグリッパが用いられてよい。吸着ヘッド30は、吸着ヘッド、真空パッド等と称されてもよい。
コンプレッサ31は、吸着ヘッド30に圧縮空気を供給するように構成される。吸着ヘッド30に圧縮空気を供給する構成は、このような例に限定されなくてもよい。コンプレッサ31の代わりに、例えば、真空ポンプが用いられてよい。また、コンプレッサ31を含む吸着のための構成には、例えば、公知の真空発生器、真空レギュレータ等が用いられてよい。
圧力センサ32は、圧縮空気の圧力を検出するように構成される。この圧力センサ32により、圧縮空気の圧力の検出値を得ることができる。圧力センサ32は、圧縮空気の圧力を検出可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。圧力センサ32には、例えば、公知のデジタル圧力センサが用いられてよい。
なお、図1の例では、圧力センサ32は、吸着ヘッド30にコンプレッサ31を接続する経路に配置されている。しかしながら、吸着ヘッド30で作用する圧縮空気の圧力を検出可能であれば、圧力センサ32の配置は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。
一方、本実施形態に係る制御装置1は、ロボット装置2の動作を制御するように構成されたコンピュータである。具体的に、本実施形態に係る制御装置1は、ロボット装置2に対して、ワークWが供給される所定の位置に吸着ヘッド30を移動させ、所定の位置で吸着ヘッド30によるワークWの吸着を試行させる。本実施形態に係る制御装置1は、圧力センサ32により圧縮空気の圧力を検出した結果に基づいて、吸着ヘッド30が当該試行によりワークWを吸着したか否かを判定する。
所定の位置にワークWが正しく配置されている場合、吸着ヘッド30によりワークWを吸着することができる。圧力の検出結果に基づいて、吸着ヘッド30がワークWを吸着したと判定した場合、制御装置1は、吸着ヘッド30により保持したワークWを所望の位置に運搬する等の次の工程の動作をロボット装置2に実行させる。次の工程の動作は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。
一方、所定の位置からワークWが致命的にずれている場合には、吸着ヘッド30によりワークWを吸着することができない。圧力の検出結果に基づいて、吸着ヘッド30がワークWを吸着していないと判定した場合、制御装置1は、ロボット装置2に対して、圧縮空気によりワークWを吸着する動作を吸着ヘッド30に実行させながら、水平方向に渦巻状に吸着ヘッド30を回転移動させる。これにより、制御装置1は、渦巻状の軌跡Tを描くように吸着ヘッド30を回転移動させながら、ワークWの存在する真の位置を探索する。当該構成に係る制御装置1は、この吸着ヘッド30を回転移動させている間における、検出される圧縮空気の圧力の変化に基づいて、所定の位置に対してワークWの存在する方向を推定する。この吸着ヘッド30がワークWを吸着していないと判定した場合、制御装置1は、ロボット装置2に対して、推定された方向に吸着ヘッド30を更に移動させる。推定された方向に吸着ヘッド30を更に移動させた後に、制御装置1は、ロボット装置2に対して、吸着ヘッド30によるワークWの吸着を再び試行させる。
ここで、図2を更に用いて、圧縮空気の圧力の検出値の変化とワークWが存在すると推定される方向との関係について説明する。図2は、回転移動による探索時における吸着ヘッド30の軌跡Tと圧縮空気の圧力の検出値との関係の一例を模式的に例示する。なお、以下では、説明の便宜のため、紙面の右を「右」、左を「左」、奥を「前方」、及び手前を「後方」と称する。
図1及び図2の例では、吸着ヘッド30はワークWの上方から近接し、ワークWの上面で吸着する場面を想定する。また、ワークWの上面は、円形状に形成されており、中央に近付くほど安定的に吸着可能であると想定する。更に、ワークWは、所定の位置(吸着ヘッド30の位置)に対して左後方にずれた位置に存在しており、これにより、吸着ヘッド30は、所定の位置での吸着の試行では、ワークWを吸着することができなかったと想定する。
制御装置1は、ロボット装置2に対して、吸着ヘッド30を水平方向に渦巻状に回転移動させる。渦巻状は、探索の開始位置を中心軸とし、当該開始位置から径を大きくしながら円弧を描くことで形成される曲線、換言すると、旋回するにつれて中心から遠ざかる曲線である。制御装置1は、ロボット装置2に対して、渦巻状の軌跡Tを描くように吸着ヘッド30を回転移動させる。この回転移動の旋回量は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。
図2の例では、回転移動の旋回量は2周分である。すなわち、渦巻状の回転移動は、それぞれ系の異なる2つの旋回を含んでいる。この例では、2つの旋回による軌跡Tは、回転移動の間に吸着ヘッド30がワークWに近接しているか否かに応じて、4つの部分軌跡T1~T4に分けることができる。なお、図2の例では、説明の便宜のため、吸着ヘッド30がワークWに近接しているか否かを、吸着ヘッド30がワークWの上方の空間に存在するか否かにより表現する。部分軌跡T2及びT3が、吸着ヘッド30がワークWに近接している期間に対応し、部分軌跡T1及びT3が、吸着ヘッド30がワークWに近接していない期間に対応する。
最初の部分軌跡T1を描く期間は、探索の開始位置からワークWに近接するまでの期間に対応する。この期間では、吸着ヘッド30がワークWに近接していないため、圧力センサ32により得られる圧縮空気の圧力の検出値は大きな値(極大値)にはならない。吸着ヘッド30がワークWから離れる方向に移動している間は、圧力の検出値は小さくなっていき、吸着ヘッド30がワークWの中心に最も近づいた地点で、圧力の検出値は極大値になる。そして、吸着ヘッド30がワークWに近付く方向に移動している間は、圧力の検出値は小さな値から徐々に大きくなる。
次の部分軌跡T2を描く期間は、最初にワークWに近接する期間に対応する。この期間では、吸着ヘッド30がワークWに近接しているため、圧力センサ32により得られる圧縮空気の圧力の検出値は比較的に大きな値になる。特に、吸着ヘッド30がワークWの縁部より中心に近付くにつれて、圧力の検出値は大きくなり、吸着ヘッド30がワークWの中心に最も近づいた時点で、圧力の検出値は極大値になる。そして、吸着ヘッド30がワークWの中心付近から離れて縁部に近付くにつれて、圧力の検出値は小さくなる。
次の部分軌跡T3を描く期間は、ワークWに最初に近接した後に、ワークWから離れている期間に対応する。この期間において圧力センサ32により得られる圧縮空気の圧力の検出値の挙動は、部分軌跡T1を描く期間と同様である。圧力の検出値は大きな値にはならない。吸着ヘッド30がワークWから離れる方向に移動している間は、圧力の検出値は小さくなっていき、吸着ヘッド30がワークWから最も離れた時点で、圧力の検出値が極小値になる。そして、吸着ヘッド30がワークWに近付く方向に移動している間は、圧力の検出値は小さな値から徐々に大きくなる。
次の部分軌跡T4を描く期間は、2度目にワークWに近接する期間に対応する。この期間において圧力センサ32により得られる圧縮空気の圧力の検出値の挙動は、基本的には、部分軌跡T2を描く期間と同様である。吸着ヘッド30がワークWの縁部より中心に近付くにつれて、圧力の検出値は大きくなり、吸着ヘッド30がワークWの中心に最も近づいた時点で、圧力の検出値は極大値になる。そして、吸着ヘッド30がワークWの中心付近から離れて縁部に近付くにつれて、圧力の検出値は小さくなる。
ただし、吸着ヘッド30の回転移動は渦巻状であるため、部分軌跡T2と部分軌跡T4とでは旋回時の径が異なっている。そのため、部分軌跡T2を描く期間と部分軌跡T4を描く期間との間で、吸着ヘッド30がワークWの中心に近付く程度が相違する。より中心に近付く期間で、圧力の検出値がより大きくなる。例えば、部分軌跡T4を描いている期間が、部分軌跡T2を描いている期間よりも、吸着ヘッド30がワークWの中心に近付いたと想定する。この場合には、部分軌跡T4を描く間に検出される圧力の極大値が、部分軌跡T2を描く期間に検出される圧力の極大値よりも大きくなる。
このように、回転移動による探索の間、吸着ヘッド30がワークWに近付くほど、圧力センサ32により検出される圧縮空気の圧力は大きくなり、吸着ヘッド30がワークWから遠ざかるほど、圧力センサ32により検出される圧縮空気の圧力は小さくなる。具体的には、図2に例示されるとおり、ワークWは、探索の開始位置に対して、圧力の検出値が大きくなる位相の方向に存在している。そのため、制御装置1は、吸着ヘッド30を回転移動させている間における、検出される圧縮空気の圧力の変化に基づいて、所定の位置に対してワークWの存在する方向を適切に推定することができる。
加えて、図2に例示されるとおり、吸着ヘッド30の旋回量を1周以上に設定することで、吸着ヘッド30の渦巻状の回転移動により、所定の位置から360度の全方向にワークWを探索することができる。すなわち、本実施形態によれば、所定の位置に対してワークWを探索する方向の漏れを低減する(究極的には無くす)ことができる。更には、ワークWの探索は、吸着ヘッド30の渦巻状の回転移動という比較的に簡易な動作の制御により実現することができる。したがって、本実施形態によれば、ワークWが所定の位置からずれて配置された場合でも、吸着ヘッド30がワークWを安定的に吸着可能な位置を適切かつ簡易に推定することができる。
また、渦巻状の回転移動によれば、別方向の探索を行うために定位置に戻る等のようなワークの探索には無意味な動作を低減することができ、これにより、比較的に短時間でワークWを吸着可能な位置を発見することができる。更に、本実施形態に係る制御装置1は、この探索に基づく推定結果を利用して吸着ヘッド30を移動させた後に、ロボット装置2に対して、吸着ヘッド30によるワークWの吸着を再度試行させる。これにより、吸着ヘッド30によりワークWを安定的に保持し、所望のタスク(工程)をロボット装置2に適切に遂行させることができる。これにより、ロボット装置2の生産性を高めることができる。
§2 構成例
[ハードウェア構成]
<制御装置>
次に、図3を用いて、本実施形態に係る制御装置1のハードウェア構成の一例について説明する。図3は、本実施形態に係る制御装置1のハードウェア構成の一例を模式的に例示する。
図3に示されるとおり、本実施形態に係る制御装置1は、制御部11、記憶部12、外部インタフェース13、入力装置14、出力装置15、及びドライブ16が電気的に接続されたコンピュータである。なお、図3では、外部インタフェースを「外部I/F」と記載している。
制御部11は、ハードウェアプロセッサであるCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、プログラム及び各種データに基づいて情報処理を実行するように構成される。記憶部12は、メモリの一例であり、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部12は、制御プログラム81等の各種情報を記憶する。
制御プログラム81は、ロボット装置2の動作を制御するための後述の情報処理(図7)を制御装置1に実行させるためのプログラムである。制御プログラム81は、当該情報処理の一連の命令を含む。詳細は後述する。
外部インタフェース13は、例えば、USB(Universal Serial Bus)ポート、専用ポート等であり、外部装置と接続するためのインタフェースである。外部インタフェース13の種類及び数は、接続される外部装置の種類及び数に応じて適宜選択されてよい。本実施形態では、制御装置1は、外部インタフェース13を介して、ロボット装置2に接続される。これにより、制御装置1は、ロボット装置2の動作を制御可能に構成される。また、制御装置1は、外部インタフェース13を介して、圧力センサ32により検出される圧縮空気の圧力の検出値を時系列に示す圧力データ121、及び回転移動の間における吸着ヘッド30の軌跡Tを示す軌跡データ123を得ることができる。
ただし、ロボット装置2を制御するための構成及び各種データを取得するための構成はそれぞれ、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、制御装置1及びロボット装置2が通信インタフェースを備える場合、制御装置1は、通信インタフェースを介してロボット装置2に接続されてもよい。また、ロボット装置2に他の情報処理装置(例えば、他のコントローラ)が接続される場合、制御装置1は、他の情報処理装置を介してロボット装置2に接続されてもよい。これらの接続により、制御装置1は、圧力データ121及び軌跡データ123を取得してもよい。
入力装置14は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置15は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置14及び出力装置15を利用することで、制御装置1を操作することができる。
ドライブ16は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体91に記憶されたプログラムを読み込むためのドライブ装置である。ドライブ16の種類は、記憶媒体91の種類に応じて適宜選択されてよい。上記制御プログラム81は、この記憶媒体91に記憶されていてもよい。
記憶媒体91は、コンピュータその他装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的又は化学的作用によって蓄積する媒体である。制御装置1は、この記憶媒体91から、上記制御プログラム81を取得してもよい。
ここで、図3では、記憶媒体91の一例として、CD、DVD等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体91の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。
なお、制御装置1の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部11は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA(field-programmable gate array)、DSP(digital signal processor)等で構成されてよい。記憶部12は、制御部11に含まれるRAM及びROMにより構成されてもよい。外部インタフェース13、入力装置14、出力装置15及びドライブ16の少なくともいずれかは省略されてもよい。制御装置1は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、制御装置1は、提供されるサービス専用に設計された情報処理装置の他、汎用のPC(Personal Computer)等であってもよい。
<ロボット装置>
次に、図4を用いて、本実施形態に係るロボット装置2のハードウェア構成の一例について説明する。図4は、本実施形態に係るロボット装置2のハードウェア構成の一例を模式的に例示する。
本実施形態に係るロボット装置2は、垂直多関節型の産業用ロボットであり、台座部21及び4つの関節部(22、23、25、27)を備えている。各関節部(22、23、25、27)は、サーボモータ(不図示)を内蔵していることで、各軸を中心に回転可能に構成されている。第1関節部22は、台座部21に接続されており、先端側の部分を台座の軸周りに回転させる。第2関節部23は、第1関節部22に接続されており、先端側の部分を前後方向に回転させる。第3関節部25は、リンク24を介して第2関節部23に接続されており、先端側の部分を上下方向に回転させる。第4関節部27は、リンク26を介して第3関節部25に接続されており、先端側の部分を上下方向に回転させる。
各関節部(22、23、25、27)には、エンコーダ(不図示)が更に内蔵されている。エンコーダは、各関節部(22、23、25、27)の角度を測定するように構成されている。エンコーダの種類は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。エンコーダの測定値は、各関節部(22、23、25、27)の角度を制御するのに利用される。各関節部(22、23、25、27)の角度を制御する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。各関節部(22、23、25、27)の制御には、例えば、PID(Proportional-Integral-Differential)制御、PI制御等の公知の方法が採用されてよい。また、各関節部(22、23、25、27)の角度と吸着ヘッド30の位置との間の変換は、順運動学及び逆運動学に基づいて行われてよい。
第4関節部27の先端側には、吸着ヘッド30が取り付けられている。吸着ヘッド30は、先端側が開放された内部空間300(中空部)を有しており、この内部空間300には、コンプレッサ31が接続されている。これにより、吸着ヘッド30は、コンプレッサ31から内部空間300に圧縮空気が供給され、開放端において対象物(ワークW)を吸着可能に構成されている。
本実施形態では、ロボット装置2に遂行させるタスクとして、物体にネジを取り付けるタスクを想定する(詳細は後述する)。そのため、本実施形態に係るワークWは、ネジである。また、本実施形態に係るロボット装置2は、吸着ヘッド30により吸着されたネジを、当該ネジの軸回りに回転させるためのドライバ305を更に備えている。本実施形態では、ドライバ305は、吸着ヘッド30の内部空間300に内蔵されており、軸方向に延びるシャフト及びシャフトを軸周りに回転させるためのモータ(不図示)を備える。シャフトの先端部は、ネジに係合可能に適宜形成されている。
本実施形態に係るワークWは、軸40を有する雄ネジであり、軸40の方向に延びる軸体41、及び軸体41の一端部に設けられた頭部43を備えている。軸体41の側面の少なくとも一部には、螺旋状の溝が設けられることで、雄ネジ部が形成されている(不図示)。頭部43の径は、軸体41よりも大きくなっており、頭部43の面には、ドライバ305の先端部に係合するための工具穴(不図示)が形成されている。ネジを取り付ける物体は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。
なお、ロボット装置2は、コントローラ(不図示)を備えてよい。この場合、制御装置1は、コントローラに対して動作の指令を送信することで、ロボット装置2の動作を間接的に制御してもよい。コントローラは、ハードウェアプロセッサ及びメモリを備えてよく、制御装置1から与えられる指令を解釈して、各関節部(22、23、25、27)の角度を制御するように構成されてよい。コントローラは、専用に設計された情報処理装置の他、汎用のPC等であってもよい。或いは、制御装置1がロボット装置2のコントローラとして機能してもよい。この場合、制御装置1は、各関節部(22、23、25、27)の角度を制御することで、ロボット装置2の動作を直接的に制御してもよい。いずれの構成でもロボット装置2の動作を同様に制御可能であるため、本実施形態では、いずれの構成を採用してもよい。以下では、説明の便宜のため、ロボット装置2がコントロールを備えるものとして説明する。
(タスク)
次に、図5A~図5Hを用いて、ロボット装置2に遂行させるタスクの一例を説明する。図5A~図5Hは、ロボット装置2がタスクを遂行する過程の一場面を模式的に例示する。本実施形態の一例として、制御装置1は、所定の位置P1に供給されたワークW(ネジ)を保持し、保持されたワークWを対象物の目的位置P2に取り付けるタスクをロボット装置2に対して遂行させる。対象物の種類は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。
まず、図5Aに示されるとおり、ロボット装置2は、ワークWの供給される所定の位置P1に吸着ヘッド30を移動させるように制御される。この動作前に、適宜設定された基準の位置に吸着ヘッド30は配置されていてよい。この場合、ロボット装置2は、基準の位置から所定の位置P1に吸着ヘッド30を移動させるように制御される。なお、ワークWを所定の位置P1に供給する方法は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。ワークWの供給には、例えば、コンベア装置等の公知の設備が用いられてよい。
次に、吸着ヘッド30が所定の位置P1の上方に到達すると、図5Bに示されるとおり、ロボット装置2は、吸着ヘッド30を上方から所定の位置P1に接近させるように制御される。そして、図5Cに示されるとおり、ロボット装置2は、所定の位置P1で吸着ヘッド30によるワークWの吸着を試行するように制御される。この吸着により、吸着ヘッド30のドライバ305の先端部は、ワークWの頭部43に設けられた工具穴に係合してもよい。なお、この場面でワークWを吸着できなかった場合には、制御装置1は、ロボット装置2に対して、上記探索動作を実行させる。
吸着ヘッド30によりワークWを吸着した後、図5Dに示されるとおり、ロボット装置2は、ワークWを保持(吸着)したまま、吸着ヘッド30を所定の位置P1から離脱させるように制御される。次に、図5Eに示されるとおり、ロボット装置2は、保持したワークWを目的位置P2まで運搬するよう吸着ヘッド30を移動させるように制御される。目的位置P2の上方まで吸着ヘッド30が移動すると、図5Fに示されるとおり、ロボット装置2は、ワークWを保持した吸着ヘッド30を上方から目的位置P2に接近させるように制御される。
対象物の目的位置P2には、一方向に開放された中空部が設けられており、中空部の内面の少なくとも一部には、螺旋状の溝が設けられることで、雌ネジ部が形成されている(不図示)。吸着ヘッド30が目的位置P2に接近した後、図5Gに示されるとおり、ロボット装置2は、ネジ締めのために、モータを作動させてドライバ305を軸回りに回転させるように制御される。これにより、図5Hに示されるとおり、対象物の目的位置P2にワークWは取り付けられ、一連のタスクは完了する。
一連のタスクの完了後、ロボット装置2は、次の一連のタスクを遂行するために、ワークWの吸着を終了し、吸着ヘッド30を基準の位置に移動させるように制御されてよい。そして、吸着ヘッド30が基準の位置に戻った後に、ロボット装置2は、上記と同様の手順により、次の一連のタスクを遂行するように制御されてよい。
[ソフトウェア構成]
<制御装置>
次に、図6を用いて、本実施形態に係る制御装置1のソフトウェア構成の一例について説明する。図6は、本実施形態に係る制御装置1のソフトウェア構成の一例を模式的に例示する。
制御装置1の制御部11は、記憶部12に記憶された制御プログラム81をRAMに展開する。そして、制御部11は、RAMに展開された制御プログラム81に含まれる命令をCPUにより解釈及び実行して、各構成要素を制御する。これによって、図6に示されるとおり、本実施形態に係る制御装置1は、データ取得部110、移動制御部111、吸着制御部112、判定部113、探査部114、推定部115、較正部116及び動作制御部117をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、制御装置1の各ソフトウェアモジュールは、制御部11(CPU)により実現される。
データ取得部110は、ロボット装置2(吸着ヘッド30)の状態をモニタリングするために、圧力データ121及び軌跡データ123を取得する。圧力データ121は、圧力センサ32により得られる。軌跡データ123により示される吸着ヘッド30の軌跡Tは、各関節部(22、23、25、27)の角度の検出値から導出されてもよいし、吸着ヘッド30の挙動を観測するその他のセンサ(例えば、カメラ)により得られる観測データから導出されてもよい。データ取得部110は、圧力データ121及び軌跡データ123を継続的に取得してもよいし、又は限られた時点若しくは期間に取得してもよい。
移動制御部111は、ロボット装置2に対して、ワークWの供給される所定の位置P1に吸着ヘッド30を移動させる。吸着制御部112は、ロボット装置2に対して、所定の位置P1で吸着ヘッド30によるワークWの吸着を試行させる。判定部113は、圧力センサ32により圧縮空気の圧力を検出した結果に基づいて、吸着制御部112による試行により吸着ヘッド30がワークWを吸着したか否かを判定する。吸着ヘッド30がワークWを吸着したと判定した場合、動作制御部117は、ロボット装置2に対して、例えば、吸着ヘッド30に保持したワークWを所望の移送先(目的位置P2)に移動させる等の上記図5C以降の所望の工程をロボット装置2に実行させる。
吸着ヘッド30がワークWを吸着していないと判定された場合、探査部114は、ロボット装置2に対して、圧縮空気によりワークWを吸着する動作を吸着ヘッド30に実行させながら、吸着ヘッド30を水平方向に渦巻状に回転移動させる。これにより、探査部114は、ロボット装置2にワークWの存在する真の位置を探索させる。データ取得部110は、この回転移動の期間における圧力データ121及び軌跡データ123を取得する。なお、水平方向に渦巻状に回転移動させることは、垂直方向から見たときに吸着ヘッド30の軌跡Tが水平面に対して渦巻を描くように当該吸着ヘッド30を移動させることである。吸着ヘッド30の高さは任意でよい(すなわち、一定であってもよいし、或いは一定でなくてもよい)。本実施形態では、後述する較正処理のために、探査部114は、吸着ヘッド30を上下方向に変動させる。
推定部115は、取得された圧力データ121及び軌跡データ123を参照し、回転移動させている間における、圧力センサ32により検出される圧縮空気の圧力の変化に基づいて、所定の位置P1に対してワークWの存在する方向を推定する。判定部113により吸着ヘッド30がワークWを吸着していないと判定された場合に、移動制御部111は、ロボット装置2に対して、推定された方向に吸着ヘッド30を更に移動させる。推定された方向に吸着ヘッド30を更に移動させた後に、吸着制御部112は、ロボット装置2に対して、吸着ヘッド30によるワークWの吸着を再び試行させる。
吸着ヘッド30の先端で生じた圧力変化が圧力センサ32にまで到達するまでに時間がかかる場合、圧力センサ32による圧力の検出結果(検出値)は、吸着ヘッド30による探索時点から時間軸で遅れて得られる可能性がある。そこで、較正部116は、圧力センサ32により圧縮空気の圧力を検出した結果(すなわち、圧力データ121により示される圧力の検出値の時系列)を較正する。これにより、較正部116は、圧力データ121の時間軸を軌跡データ123に適合させる。この較正処理は、少なくともワークWの探索における回転移動の期間に得られる圧力データ121に対して実行されてよい。
具体的に、探査部114は、吸着ヘッド30を水平方向に渦巻状に回転移動させている間、ロボット装置2に対して、吸着ヘッド30を上下方向に更に変位させる。検出した結果を較正することは、吸着ヘッド30を上下方向に変位させている間に圧力センサ32により検出される圧縮空気の圧力の変動と、吸着ヘッド30の上下方向の変位に基づいて仮定される圧縮空気の変動とのずれを解消することにより構成される。
上下方向の移動における最下点は、ワークWに最も近接すると想定される位置である。最高点は、ワークWに最も離れると想定される位置である。そのため、吸着ヘッド30の上下方向の変位に基づいて仮定される圧縮空気の圧力の変動とは、例えば、吸着ヘッド30が最下点に到達する際に圧力の検出値が極大値になり、吸着ヘッド30が最高点に到達する際に圧力の検出値が極小値になるように圧力の検出値が変動することである。この仮定は、実施の形態に応じて、オペレータ等により適宜設定されてよい。較正部116は、得られた圧力の検出値の変動と上記仮定の変動とのずれを解消するように圧力データ121の時間軸をずらすことで、圧力の検出値の時系列を較正する。推定部115は、較正された結果(圧力の検出値)を利用して、所定の位置P1に対してワークWの存在する方向を推定する。
また、本実施形態では、推定部115は、回転移動をさせている間における、圧力センサ32により検出される圧縮空気の圧力の変化に基づいて、所定の位置P1とワークWの存在する位置との間の距離を更に推定する。判定部113により吸着ヘッド30がワークWを吸着していないと判定された場合に、移動制御部111は、ロボット装置2に対して、推定された距離の分だけ推定された方向に吸着ヘッド30を更に移動させる。推定された距離の分だけ推定された方向に吸着ヘッド30を更に移動させた後、吸着制御部112は、ロボット装置2に対して、吸着ヘッド30によるワークWの吸着を再び試行させる。
制御装置1の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、制御装置1の各ソフトウェアモジュールがいずれも汎用のCPUによって実現される例について説明している。しかしながら、以上のソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサにより実現されてもよい。また、制御装置1のソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
§3 動作例
次に、図7を用いて、制御装置1の動作例について説明する。図7は、本実施形態に係る制御装置1によるロボット装置2の動作制御に関する処理手順の一例を示すフローチャートである。以下で説明する処理手順は、本発明の「制御方法」の一例である。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS101)
ステップS101では、制御部11は、移動制御部111として動作し、ロボット装置2に対して、ワークWの供給される所定の位置P1に吸着ヘッド30を移動させる動作を実行させる。
動作開始時における吸着ヘッド30の位置及び吸着ヘッド30の位置を制御する方法はそれぞれ、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。一例として、動作開始時において、吸着ヘッド30は、基準の位置に配置されてよい。この場合、制御部11は、基準の位置から所定の位置P1に吸着ヘッド30を移動させるための指令をロボット装置2に与えてよい。これにより、制御部11は、図5Aに示されるように、ロボット装置2に対して、ワークWの供給される所定の位置P1に吸着ヘッド30を移動させる動作を実行させてよい。吸着ヘッド30を所定の位置P1に移動させると、制御部11は、次のステップS102に処理を進める。
(ステップS102)
ステップS102では、制御部11は、吸着制御部112として動作し、ロボット装置2に対して、所定の位置P1で吸着ヘッド30によりワークWを吸着する動作を開始させる。
吸着の動作を実行させる方法は、ロボット装置2の構成に応じて適宜決定されてよい。本実施形態では、制御部11は、吸着ヘッド30によりワークWを吸着させるためにコンプレッサ31を駆動する指令をロボット装置2に与えてよい。これにより、制御部11は、図5Cに示されるように、ロボット装置2に対して、所定の位置P1で吸着ヘッド30によりワークWを吸着する動作を開始させることができる。
なお、吸着ヘッド30による吸着動作を開始するタイミングは、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、制御部11は、図5Bに示される接近動作の前又は接近動作中に、ロボット装置2に対して、吸着ヘッド30によりワークWを吸着する動作を開始させてもよい。また、例えば、制御部11は、図5Bに示される接近動作の後に、ロボット装置2に対して、吸着ヘッド30によりワークWを吸着する動作を開始させてもよい。吸着ヘッド30によるワークWの吸着を開始させると、制御部11は、吸着ヘッド30による吸着の動作を継続させたまま、次のステップS103に処理を進める。
(ステップS103)
ステップS103では、制御部11は、データ取得部110として動作し、圧力データ121及び軌跡データ123の取得を開始する。
本実施形態では、制御部11は、ロボット装置2の圧力センサ32から圧力データ121を取得することができる。また、制御部11は、ロボット装置2の各関節部(22、23、25、27)のエンコーダにより得られる観測データから軌跡データ123を導出することができる。ただし、圧力データ121及び軌跡データ123を取得する経路は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、圧力センサ32及び各エンコーダには他のコンピュータが接続されてもよい。この場合、制御部11は、他のコンピュータから圧力データ121及び軌跡データ123を取得してもよい。圧力データ121及び軌跡データ123の取得を開始すると、制御部11は、次のステップS104に処理を進める。
(ステップS104)
ステップS104では、制御部11は、吸着制御部112として動作し、ロボット装置2に対して、所定の位置P1で吸着ヘッド30によるワークWの吸着を試行する動作を実行させる。
本実施形態では、制御部11は、図5Cに示されるように、ロボット装置2に対して、ワークWの供給される所定の位置P1の近傍で、ステップS102で開始した吸着ヘッド30による吸着の動作を実行させる。これにより、制御部11は、ロボット装置2に対して、所定の位置P1で吸着ヘッド30によるワークWの吸着を試行させることができる。吸着ヘッド30によるワークWの吸着を試行させると、制御部11は、次のステップS105に処理を進める。
(ステップS105)
ステップS105では、制御部11は、判定部113として動作し、圧力センサ32により圧縮空気の圧力を検出した結果に基づいて、ステップS104の試行により吸着ヘッド30がワークWを吸着したか否かを判定する。
所定の位置P1にワークWが正しく配置されている場合、吸着ヘッド30は、ステップS104の試行によりワークWを吸着することができる。この場合には、吸着ヘッド30の開放端にワークWが吸着されるため、圧縮空気の圧力の検出値は一定値以上になる。そのため、制御部11は、圧力データ121を参照し、圧縮空気の圧力の検出値が閾値以上であるか否かに応じて、吸着ヘッド30がワークWを吸着したか否かを判定してもよい。この判定における閾値は適宜設定されてよい。
圧縮空気の圧力の検出値が閾値以上であることに応じて、吸着ヘッド30がワークWを吸着したと判定すると、制御部11は、次のステップS121に処理を進める。一方、圧縮空気の圧力の検出値が閾値未満であることに応じて、吸着ヘッド30がワークWを吸着していないと判定すると、制御部11は、次のステップS106に処理を進める。なお、圧縮空気の圧力の検出値が閾値と同じであるケースの取り扱いは、このような例に限定されなくてもよい。当該ステップS105の判定において、「以上である」は「超えている」に置き換えられ、「未満である」は「以下である」に置き換えられてよい。
(ステップS106)
ステップS106では、制御部11は、探査部114として動作し、ロボット装置2に対して、圧縮空気によりワークWを吸着する動作を吸着ヘッド30に実行させながら、吸着ヘッド30を水平方向に渦巻状に回転移動する動作を実行させる。
本実施形態では、制御部11は、ロボット装置2に対して、吸着ヘッド30を水平方向に渦巻状に回転移動させている間、吸着ヘッド30を上下方向に更に変位させる。すなわち、制御部11は、ロボット装置2に対して、吸着ヘッド30による吸着動作を実行させながら、吸着ヘッド30を、上下方向に変位させると共に、水平方向に渦巻状に回転移動させる。上下方向の変動の周期は、実施の形態に応じて適宜設定されてよい。上下方向の変動は、一定間隔であってもよいし、一定間隔でなくてもよい。
上下方向の変位量、回転移動の旋回量、及び回転移動の径は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。本実施形態では、図2に例示されるとおり、渦巻状の回転移動は、それぞれ径の異なる複数の旋回を含むように設定される。この回転移動の動作は、ダイレクトティーチング、ティーチングペンダントの利用、プログラミング等の公知の方法により適宜生成されてよい。本実施形態では、制御部11は、生成された回転移動の動作を指示するための指令をロボット装置2に与える。これにより、制御部11は、ロボット装置2に対して、吸着ヘッド30による吸着動作を実行させながら、吸着ヘッド30を、上下方向に変位させると共に、水平方向に渦巻状に回転移動させることができる。回転移動の動作をロボット装置2に実行させると、制御部11は、次のステップS107に処理を進める。なお、回転移動を開始する位置は、所定の位置P1であってもよいし、或いは、任意の方向に任意の距離だけ所定の位置P1からずれた位置であってもよい。以下の本実施形態では、説明の便宜のため、所定の位置P1が回転移動を開始する位置であると想定する。
(ステップS107)
ステップS107では、制御部11は、較正部116として動作し、圧力センサ32により圧縮空気の圧力を検出した結果、すなわち、回転移動の間に取得された圧力データ121により示される圧力の検出値の時系列を較正する。
ここで、図8を更に用いて、較正方法の一例を説明する。図8は、ある位置で吸着ヘッド30を上下方向に変位させている間に圧力センサ32により検出される圧縮空気の圧力の変動と、当該吸着ヘッド30の上下方向の変位に基づいて仮定される圧縮空気の圧力の変動との間の関係の一例を模式的に例示する。
図8に示されるとおり、通常の状態では、吸着ヘッド30は、最下点に到達したときにワークWに最も接近し、最高点に到達したときにワークWから最も遠ざかると想定される。そのため、吸着ヘッド30の上下方向の変位に基づいて仮定される圧縮空気の圧力の変動VVは、例えば、吸着ヘッド30が最下点に到達する際に圧力の検出値が極大値になり、吸着ヘッド30が最高点に到達する際に圧力の検出値が極小値になるように構成される。
一方、吸着ヘッド30の先端で生じた圧力変化が圧力センサ32にまで到達するまでに時間がかかる場合、圧力センサ32による圧力の検出結果(検出値)は、吸着ヘッド30による探索時点から時間軸で遅れて得られる可能性がある。つまり、吸着ヘッド30を上下方向に変位させている間に圧力センサ32により検出される圧縮空気の圧力の変動MVは、仮定される変動VVから時間軸で遅れる方向にずれる可能性がある。そこで、制御部11は、検出された圧力の変動MVと仮定される圧力の変動VVとのずれを解消するように圧力データ121の時間軸をずらすことで、圧力の検出値の時系列を較正する。一例として、制御部11は、検出された圧力の極値の時刻と仮定される圧力の極値の時刻とを一致させることで、圧力データ121により示される圧力の検出値の時系列を較正してもよい。一致させる極値は、極大値及び極小値の少なくとも一方でよい。圧力センサ32により圧縮空気の圧力を検出した結果を較正すると、制御部11は、次のステップS108に処理を進める。
なお、図8の例では、説明の便宜上、圧力の検出結果に対する渦巻状の回転移動の影響を省略している。ただし、この上下方向の変位に基づく圧縮空気の圧力の変動は、渦巻状の回転移動に基づく圧縮空気の圧力の変動と重畳的に生じ得る。そのため、渦巻状の回転移動の影響を考慮しても、上下方向の変位に基づく変動を圧力の検出結果から抽出することは可能である。したがって、渦巻状の回転移動の影響を考慮した場合でも、上記と同様の方法により、圧力データ121により示される圧力の検出値の時系列を較正することができる。
(ステップS108)
ステップS108では、制御部11は、推定部115として動作し、回転移動の間に取得された圧力データ121及び軌跡データ123を参照し、回転移動させている間における、圧力センサ32により検出される圧縮空気の圧力の変化に基づいて、所定の位置P1に対してワークWの存在する方向(以下、単に「存在方向」とも記載する)を推定する。
本実施形態では、回転移動させている間における、圧力センサ32により検出される圧縮空気の圧力の変化に基づいて、所定の位置P1とワークWの存在する位置との間の距離(以下、単に「離間距離」とも記載する)を更に推定する。本実施形態では、制御部11は、ステップS107により較正された圧力データ121を利用して、存在方向及び離間距離を推定する。
吸着ヘッド30がワークWの存在する真の位置(特に、ワークWを安定的に吸着可能な位置)に近付くほど、検出される圧縮空気の圧力が大きくなる一方で、吸着ヘッド30がワークWの存在する真の位置から遠ざかるほど、検出される圧縮空気の圧力が小さくなる。検出される圧力の変化に基づく存在方向及び離間距離の推定方法は、この観点を利用していれば、適宜設定されてよい。
以下では、説明の便宜のため、所定の位置P1が、存在方向及び離間距離の基準の位置であると想定する。ただし、存在方向及び離間距離の見掛け上の基準の位置が所定の位置P1からずれていたとしても、吸着ヘッド30を移動させる際にその分のずれを考慮すれば、所定の位置P1が基準に設定されている場合と同様に移動制御を実現することができる。そのため、存在方向及び離間距離の見掛け上の基準の位置は、所定の位置P1と一致していなくてもよい。存在方向及び離間距離の見掛け上の基準の位置は、所定の位置P1から任意の方向に任意の距離だけずれていてよい。この所定の位置P1から任意の方向に任意の距離だけずれた点は、ステップS106における回転移動の中心であってもよい。なお、ステップS106における回転移動の中心が所定の位置P1である場合でも、存在方向及び離間距離の見掛け上の基準の位置は、所定の位置P1から任意の方向に任意の距離だけずれていてよい。
(A)存在方向の推定方法
まず、存在方向を推定する方法の一例について説明する。本実施形態では、制御部11は、軌跡データ123により示される回転移動の軌跡を、回転移動の軸周りに複数の区間に分割する。次に、制御部11は、複数の区間のうち、圧力センサ32により検出される圧縮空気の圧力が最も高い1つの区間(以下、「圧力最大区間」とも記載する)を特定する。圧力最大区間を特定する方法は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、制御部11は、以下の2つの方法の少なくとも1つの方法により、圧力最大区間を特定してもよい。
第1の方法では、圧力の検出値が最大となる検出点を利用する。具体的には、制御部11は、圧力センサ32により検出される圧縮空気の圧力が最も高い検出点を抽出し、抽出された検出点の属する1つの区間を圧力最大区間として特定してもよい。第2の方法では、圧力の検出値の平均値を利用する。具体的には、制御部11は、圧力センサ32により検出される圧縮空気の圧力の平均値を区間毎に算出してもよい。制御部11は、複数の区間のうち、算出された圧力の平均値の最も高い1つの区間を圧力最大区間として特定してもよい。
そして、制御部11は、所定の位置P1に対して特定された1つの区間の方向を、ワークWの存在する方向として採用する。各区間は、軸周りに角度(後述する図9のθ)の広がりを有しているため、制御部11は、この角度の範囲から、特定された1つの区間の方向を選択することができる。すなわち、制御部11は、特定された1つの区間の占める範囲に含まれる任意の方向を存在方向として採用してよい。例えば、各区間には、圧力最大区間として特定されたときに存在方向として採用する方向が予め規定されていてよい。採用方向は、例えば、各区間の占める角度を二等分する方向、各区間の端部を沿う方向、等適宜規定されてよい。採用方向の規定は、各区間で共通であってもよいし、或いは区間毎に異なっていてもよい。また、採用方向は、オペレータの入力により規定されてもよいし、制御プログラム81内の記述により規定されてもよい。この場合、制御部11は、この規定に基づいて、特定された1つの区間内で存在方向を決定することができる。また、例えば、制御部11は、特定された1つの区間内で検出される圧縮空気の圧力(圧力の検出値)が最も高い検出点を抽出し、抽出された検出点と探索の中心(所定の位置P1)と結ぶ方向を存在方向として採用してもよい。これにより、制御部11は、ワークWの存在する方向を推定することができる。
(B)離間距離の推定方法
次に、離間距離を推定する方法の一例について説明する。本実施形態では、ステップS106における渦巻状の回転移動は、それぞれ径の異なる複数の旋回を含んでいる。旋回は、中心軸周りに360度分の回転移動である。制御部11は、各旋回の間で、上記特定された1つの区間において圧力センサ32により検出される圧縮空気の圧力を比較する。渦巻状の回転移動が複数の旋回を含んでいることで、探索の中心に対して360度の全方向に距離の異なる少なくとも2つ検出点で圧力の検出値を得ることができる。各方向の各検出点で得られる圧力の検出値を比較すると、ワークWの存在する真の位置、特に、ワークWを安定的に吸着可能な位置に対応する検出点又はその位置に最も近い検出点で得られる圧力の検出値が最も大きくなる。そのため、制御部11は、上記特定された1つの区間において検出される圧力の各旋回の間での比較の結果に基づいて、所定の位置P1とワークWの存在する位置との間の距離を推定することができる。
特定された1つの区間において検出される圧力の各旋回の間での比較から離間距離を導出する方法は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。一例として、検出される圧縮空気の圧力を各旋回の間で比較することは、複数の旋回のうち、特定された1つの区間において圧力センサ32により検出される圧縮空気の圧力が最も高い1つの旋回を特定することを含んでよい。制御部11は、特定された1つの旋回の径に応じて、離間距離を推定してもよい。
特定された旋回の径に応じて離間距離を推定する方法は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。例えば、制御部11は、特定された区間及び旋回において、検出される圧縮空気の圧力(圧力の検出値)が最も高い検出点を抽出してもよい。そして、制御部11は、抽出された検出点と探索の中心(所定の位置P1)との間の距離、すなわち、抽出された検出点における旋回の径をそのまま離間距離に採用してもよい。
ただし、探索により得られる圧力の検出値は極大値であり、検出値の最も高い検出点が、ワークWを吸着に最適な位置とは限らない。すなわち、特定された1つの区間内において、圧力の検出値が現に得られている検出点よりも圧力が大きくなる点が存在する可能性がある。そこで、制御部11は、上記方法に代えて、演算モデルを利用することで、特定された1つの旋回の径に応じて、離間距離を推定してもよい。演算モデルは、特定1つの旋回の径と離間距離との関係を規定する。
演算モデルは、離間距離を算出可能に適宜構成されてよい。例えば、演算モデルは、圧力の検出値及び検出点までの距離から真の離間距離を推定するように構成されてよい。この演算モデルは、関数式により表現されてもよいし、データテーブルにより与えられてもよい。関数式又はデータテーブルにより演算モデルを構成する場合、様々な位置でワークWに対して吸着ヘッドにより吸着を試行したときの圧力の検出値を収集し、得られた検出値及び検出点までの距離と真の離間距離との関係を導出する。これにより、離間距離の算出に利用可能な関係式及びデータテーブルを生成することができる。
また、演算モデルは、線形回帰モデル、ニューラルネットワーク、サポートベクタマシン等の機械学習モデルにより与えられてもよい。機械学習モデルにより演算モデルを構成する場合、様々な位置でワークWに対して吸着ヘッドにより吸着を試行したときの圧力の検出値を収集し、得られた検出値及び検出点までの距離と真の離間距離とを関連付けることで学習データセットを生成する。そして、生成された学習データセットを利用した機械学習を実施することで、圧力の検出値及び検出点までの距離を入力すると、真の離間距離を出力するように機械学習モデルを訓練する。機械学習の方法には、回帰分析、誤差逆伝播法等の公知の方法が採用されてよい。これにより、離間距離の算出に利用可能な学習済みの機械学習モデルを生成することができる。
演算モデルは、制御プログラム81内に記述されていてもよいし、或いは所定の記憶領域に保存されていてよい。所定の記憶領域は、記憶部12、記憶媒体91、外部記憶装置又はこれらの組み合わせに保存されていてよい。制御部11は、演算モデルを適宜取得する。そして、制御部11は、特定された区間及び旋回において、抽出された検出値の最大値及びその検出点までの距離を演算モデルに入力し、演算モデルの演算処理を実行する。これにより、制御部11は、演算モデルの出力として離間距離を得ることができる。
なお、演算モデルの入力は、このような例に限られず、任意に選択されてよい。例えば、演算モデルは、特定された存在方向上の複数の検出点における検出値及び距離の入力を受け付けるように構成されてよい。また、演算モデルの入力において、検出値及び距離のいずれか一方が省略されてよい。例えば、演算モデルは、圧力の検出値が最も高い検出点とワークWの存在する真の位置とのずれをその検出点での圧力の検出値から推定するように構成されてよい。この場合、制御部11は、上記比較の結果に基づいて、特定された1つの区間内で検出される圧縮空気の圧力(圧力の検出値)が最も高い検出点を抽出してもよい。続いて、制御部11は、抽出された検出点での圧力の検出値を演算モデルに入力し、演算モデルの演算処理を実行する。これにより、制御部11は、演算モデルの出力としてずれの値を取得する。制御部11は、抽出された検出点における旋回の径に取得されたずれの値を加えることで、離間距離を算出することができる。
(C)具体例
ここで、図9及び図10を更に用いて、存在方向及び離間距離を推定する場面の具体例について説明する。図9は、吸着ヘッド30の軌跡Tと各区間K1~K8との関係の一例を模式的に例示する。図10は、各区間K1~K8で検出される圧力の検出値の一例を模式的に例示する。
(1)存在方向の推定例
まず、制御部11は、回転移動の軌跡Tを複数の区間(K1~K8)に分割する。図9及び図10の例では、説明の便宜のため、制御部11は、回転移動の軌跡Tを8つの区間K1~K8に等分に分割している。各区間K1~K8の占める角度θは45度である。各区間K1~K8は、回転移動により吸着ヘッド30が通過する順に並んでいる。例えば、区間K1は、0度から45度(1/4π)の範囲を占めており、吸着ヘッド30は、各旋回において最初に区間K1を通過する。区間K8は、315度(7/4π)から360度(2π)の範囲を占めており、吸着ヘッド30は、各旋回において最後に区間K8を通過する。
ただし、上記推定方法は、各区間の占める角度θに依らずに採用可能である。そのため、軌跡Tを分割する方法は、このような例に限定されなくてもよい。区間の数は、8つに限定されなくてもよく、2つ~7つのいずれかであってもよいし、9つ以上であってもよい。また、軌跡Tは等分に分割されなくてもよく、複数の区間のうちの少なくともいずれかの区間の占める角度は他の区間の占める角度と異なっていてもよい。各区間の占める角度θは、実施の形態に応じて適宜設定されてよい。
次に、制御部11は、複数の区間K1~K8のうち、圧力センサ32により検出される圧縮空気の圧力が最も高い1つの区間を特定する。図9及び図10の例では、区間K8において、圧力の検出値は極大値とっており、第2旋回における圧力の極大値D2は、第1旋回における圧力の極大値D1よりも大きくなっている。また、8つの区間K1~K8のうち、区間K8において、圧力の検出値の平均値が最も大きくなっている。圧力最大区間を特定する方法として上記第1の方法を利用する場合、制御部11は、圧力データ121を参照し、極大値D2を与える検出点を抽出する。制御部11は、抽出された検出点の属する区間K8を圧力最大区間として特定することができる。また、圧力最大区間を特定する方法として上記第2の方法を利用する場合、制御部11は、圧力センサ32により検出される圧縮空気の圧力の平均値を区間K1~K8毎に算出する。制御部11は、8つの区間K1~K8のうち、算出された圧力の平均値の最も高い区間K8を圧力最大区間として特定することができる。
そして、制御部11は、所定の位置P1に対して特定された区間K8の方向を、ワークWの存在する方向として採用する。例えば、制御部11は、予め定められた規定に基づいて、区間K8の占める角度の範囲(315度~360度)内で存在方向を決定してよい。また、例えば、制御部11は、極大値D1又は極大値D2を与える検出点を抽出し、抽出された検出点と探索の中心(所定の位置P1)と結ぶ方向を存在方向として採用してもよい。或いは、各旋回において極大値を与える検出点の方向が相違する場合、制御部11は、各検出点の方向を平均化することで得られる方向を存在方向として採用してもよい。図9及び図10の例では、探索の中心(所定の位置P1)から各極大値(D1、D2)を与える各検出点を結ぶ線の間の角度を二等分する方向が存在方向として採用される。
(2)離間距離の推定例
図9及び図10の例では、ステップS106における渦巻状の回転移動は、それぞれ径の異なる2つの旋回を含んでいる。制御部11は、各旋回の間で、区間K8において圧力センサ32により検出される圧縮空気の圧力を比較する。制御部11は、この比較の結果に基づいて、離間距離を推定する。
例えば、制御部11は、区間K8における圧力の検出値を各旋回の間で比較した結果、第1旋回における極大値D1よりも第2旋回における極大値D2の方が大きいことを認識することができる。すなわち、制御部11は、2つの旋回のうち、区間K8において検出される圧力が最も高い1つの旋回は第2旋回であると特定することができる。制御部11は、第2旋回の径に応じて、離間距離を推定してもよい。
一例として、制御部11は、検出される圧力の最も高い検出点として極大値D2を与える検出点を抽出してもよい。そして、制御部11は、抽出された検出点(すなわち、極大値D2を与える検出点)における旋回の径(距離d2)をそのまま離間距離に採用してもよい。
或いは、制御部11は、上記演算モデルを利用して、離間距離を算出してもよい。この場合、演算モデルは、検出される圧力の最も高い旋回における圧力の極大値及びその極大値を与える検出点までの距離から真の離間距離を推定するように構成されてよい。このとき、制御部11は、極大値D2及び距離d2を演算モデルに入力し、演算モデルの演算処理を実行する。これにより、制御部11は、演算モデルの出力として離間距離を得ることができる。
その他の例として、演算モデルは、特定された1つの区間内で得られる圧力の各極大値及び各極大値を与える検出点までの距離から真の離間距離を推定するように構成されてよい。この場合、制御部11は、各極大値(D1、D2)及び各検出点までの距離(d1、d2)を演算モデルに入力し、演算モデルの演算処理を実行する。これにより、制御部11は、演算モデルの出力として離間距離を得ることができる。
また、その他、演算モデルは、圧力の検出値が最も高い検出点とワークWの存在する真の位置とのずれをその検出点での圧力の検出値から推定するように構成されてよい。この場合、制御部11は、極大値D2及び距離d2を演算モデルに入力し、演算モデルの演算処理を実行する。これにより、制御部11は、演算モデルの出力としてずれの値を取得する。制御部11は、取得されたずれの値を距離d2に加えることで、離間距離を算出することができる。
(D)小括
以上により、制御部11は、回転移動させている間における、圧力センサ32により検出される圧縮空気の圧力の変化に基づいて、存在方向及び離間距離それぞれを推定することができる。存在方向及び離間距離を推定すると、制御部11は、次のステップS109に処理を進める。
(ステップS109)
ステップS109では、制御部11は、移動制御部111として動作し、ロボット装置2に対して、推定された存在方向に吸着ヘッド30を更に移動させる動作を実行させる。
本実施形態では、離間距離が更に推定されている。そのため、制御部11は、ロボット装置2に対して、推定された離間距離の分だけ推定された存在方向に吸着ヘッド30を更に移動させる動作を実行させる。この更なる移動の開始点は、特に限定されなくてもよい。制御部11は、ロボット装置2に対して、吸着ヘッド30を、上記回転移動(探索)の最終点から移動させるように指示してもよいし、所定の位置P1又は探索の中心から移動させるように指示してもよい。
本実施形態では、制御部11は、所定の位置P1に対して推定された存在方向に推定された離間距離の分だけ吸着ヘッド30を移動させるための指令をロボット装置2に与える。これにより、制御部11は、ロボット装置2に対して、吸着ヘッド30を更に移動させる動作を実行させることができる。推定された存在方向に推定された離間距離の分だけ吸着ヘッド30を更に移動させると、制御部11は、次のステップS110に処理を進める。
(ステップS110)
ステップS110では、制御部11は、吸着制御部112として動作し、ロボット装置2に対して、ステップS109による移動の先で、吸着ヘッド30によるワークWの吸着を試行する動作を再度実行させる。吸着を試行する動作を実行させる方法は、上記ステップS104と同様でよい。ワークWの吸着を試行する動作を吸着ヘッド30に再度実行させると、制御部11は、次のステップS111に処理を進める。
(ステップS111)
ステップS111では、制御部11は、判定部113として動作し、圧力センサ32により圧縮空気の圧力を検出した結果に基づいて、ステップS110の試行により吸着ヘッド30がワークWを吸着したか否かを判定する。吸着ヘッド30がワークWを吸着したか否かを判定する方法は、上記ステップS105と同様であってよい。吸着ヘッド30がワークWを吸着したと判定すると、制御部11は、次のステップS121に処理を進める。一方、吸着ヘッド30がワークWを吸着していないと判定すると、制御部11は、次のステップS122に処理を進める。
(ステップS121)
ステップS121は、吸着ヘッド30によりワークWを吸着できた際に実行される。ステップS121では、制御部11は、動作制御部117として動作し、ロボット装置2に対して、例えば、吸着ヘッド30に保持したワークWを所望の移送先(目的位置P2)に移動させる等の上記図5C以降の所望の工程をロボット装置2に実行させる。
所望の工程の動作は、ダイレクトティーチング、ティーチングペンダントの利用、プログラミング等の公知の方法により適宜生成されてよい。本実施形態では、制御部11は、生成された所望の工程の動作を指示するための指令をロボット装置2に与える。これにより、制御部11は、ワークWを移送先に運搬する等の所望の工程の動作をロボット装置2に対して実行させることができる。所望の工程の動作が完了すると、制御部11は、本動作例に係る一連の処理を終了する。一連の処理を終了した後、制御部11は、ステップS101から再度処理を繰り返すことにより、ロボット装置2に対して次の一連のタスクを遂行させてよい。
(ステップS122)
ステップS122は、ステップS106~S110の一連の探索を実行しても、吸着ヘッド30によりワークWを吸着できなかった際に実行される。ステップS122では、制御部11は、エラー処理を実行する。
エラー処理は、適宜設定されてよい。例えば、エラー処理は、対象の一連のタスクの遂行を省略することであってよい。この場合、制御部11は、ワークWを吸着する以降の処理を省略する。また、例えば、制御部11は、エラー処理として、ロボット装置2の動作の制御を停止してもよい。この場合、制御部11は、ロボット装置2の動作の制御を即座に停止してもよいし、吸着ヘッド30を基準の位置に戻す等の所定の動作をロボット装置2に実行させた後に、ロボット装置2の動作の制御を即座に停止してもよい。
また、エラー処理は、オペレータ、作業者、監督者等の所望の対象者に対して、ワークWの吸着が失敗したことを知らせるための通知を出力する処理を含んでもよい。通知の出力先は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部11は、出力装置15を介して、ワークWの吸着が失敗したことを知らせるための通知を出力してもよい。また、例えば、制御部11は、対象者の携帯する端末、対象者の近傍に配置された出力装置(ディスプレイ、スピーカ、表示灯)等に、ワークWの吸着が失敗したことを知らせるための通知を出力してもよい。
エラー処理を実行した後、制御部11は、本動作例に係る一連の処理を終了する。エラー処理として対象の一連のタスクの遂行を省略した場合、一連の処理を終了した後に、制御部11は、ステップS101から再度処理を繰り返すことにより、ロボット装置2に対して次の一連のタスクを遂行させてよい。
なお、ステップS106~S111の一連の処理を所定回数繰り返した後に、制御部11は、本ステップS122のエラー処理を実行してもよい。この場合、制御部11は、ステップS106~S111の一連の処理を繰り返した回数をカウントしてもよい。ステップS111において、吸着ヘッド30がワークWを吸着していないと判定したときに、制御部11は、カウントされた回数が所定値以上である(又は超えている)か否かを判定してもよい。所定値は適宜設定されてよい。カウントされた回数が所定値以上ではないときには、制御部11は、ステップS106に処理を戻し、ステップS106~S111の処理を繰り返してもよい。一方、カウントされた回数が所定値以上であるときには、制御部11は、本ステップS122のエラー処理を実行してもよい。
[特徴]
以上のとおり、本実施形態では、ステップS106における吸着ヘッド30の渦巻状の回転移動により、所定の位置P1に対してワークWの探索する方向の漏れを低減することができる。本実施形態では、渦巻状に回転移動が複数の旋回を含んでいることで、所定の位置P1に対してワークWの探索する方向の漏れを無くすことができる。更には、ステップS106におけるワークWの探索は、吸着ヘッド30の渦巻状に回転移動という比較的に簡単な動作の制御により実現することができる。したがって、本実施形態によれば、ワークWが所定の位置P1からずれて配置された場合でも、吸着ヘッド30がワークWを安定的に吸着可能な位置を適切かつ簡易に推定することができる。これにより、ロボット装置2の生産性を高めることができる。本実施形態では、ネジ回しの工程を遂行するロボット装置2の生産性を高めることができる。
また、本実施形態では、ステップS108では、制御部11は、回転移動の軌跡Tを複数の区間(K1~K8)に分割し、分割された各区間(K1~K8)から圧力の検出値の最も高い区間を特定することで、ワークWの存在する方向を推定する。加えて、制御部11は、特定された区間におけて検出される圧力の各旋回の間での比較に基づいて、離間距離を推定する。更に、本実施形態では、ステップS106では、制御部11は、渦巻状に回転移動させている間に、ロボット装置2に対して、吸着ヘッド30を更に上下方向に変位させる。そして、ステップS107では、制御部11は、この挙動に基づいて、回転移動の間に取得された圧力データ121により示される圧力の検出値の時系列を較正する。本実施形態によれば、これらの特徴により、ワークWが所定の位置P1からずれて配置された場合でも、吸着ヘッド30がワークWを安定的に吸着可能な位置を更に適切かつ簡易に推定することができる。
§4 変形例
以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
<4.1>
上記実施形態では、ワークWは、ネジである。しかしながら、ワークWは、吸着により保持可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。ワークWは、ネジの他、例えば、ワッシャ等であってよい。
また、上記実施形態では、ロボット装置2は、ネジを軸周りに回転させるためのドライバ305を備えている。しかしながら、ロボット装置2の構成は、このような例に限定されなくてもよい。ロボット装置2の構成に関して、実施の形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、ロボット装置2は、各関節部(22、23、25、27)の角度等の制御量を観測するために、エンコーダ以外のセンサを備えてもよい。また、例えば、ロボット装置2は、例えば、吸着ヘッド30が何らかの物体に接触しているかいないか等のその他の属性を観測するためのその他のセンサを備えてもよい。ロボット装置2の軸数は、上記実施形態の例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。
また、上記実施形態では、ロボット装置2は、垂直多関節ロボットである。しかしながら、ロボット装置2は、吸着ヘッド30及び圧力センサ32を備えていれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。ロボット装置2は、垂直多関節ロボットの他、例えば、スカラロボット、パラレルリンクロボット、直交ロボット、協調ロボット等の産業用ロボットであってよい。ロボット装置2には、公知の産業用ロボットが採用されてもよい。
また、上記実施形態では、ロボット装置2に遂行させるタスクの一例として、ネジを取り付けるタスクを例示した。しかしながら、ロボット装置2に遂行させるタスクの種類は、何らかのワークを吸着ヘッドにより吸着する工程を含んでいれば、ネジの取り付けに限定されなくてもよく、実施の形態に応じて適宜決定されてよい。その他の例として、ロボット装置2には、ワッシャを目標位置に配置するタスクを遂行させてもよい。この場合、吸着ヘッド30には、コアンダグリッパが用いられてよい。
<4.2>
上記実施形態では、渦巻状の回転移動は、2つの旋回を含んでいる。しかしながら、回転移動に含まれる旋回量及び探索する角度の範囲は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。渦巻状の回転移動に含まれる旋回量は、1周以下であってもよいし、1周以上2周未満であってもよいし、2周を超えてもよい。旋回量は、入力装置14を介したオペレータ等の操作により適宜指定されてよい。渦巻状の回転移動に含まれる旋回量が2周未満である場合に、制御部11は、各旋回の間での比較を省略した上で、離間距離を推定してもよい。或いは、制御部11は、上記ステップS108において、離間距離の推定を省略してもよい。
<4.3>
上記実施形態では、ステップS108において、制御部11は、軌跡データ123により示される回転移動の軌跡Tを、回転移動の軸周りに複数の区間(K1~K8)に分割する。これにより、制御部11は、ワークWの存在する方向を区間(K1~K8)単位で探索する。しかしながら、この分割処理は省略されてよく、ワークWの探索する単位は任意に設定されてよい。
区間単位に分割しない探索方法の一例として、上記ステップS108では、制御部11は、回転移動の間に取得された圧力データ121及び軌跡データ123を参照し、圧力センサ32により検出される圧縮空気の圧力が最も高い検出点を特定してもよい。そして、制御部11は、所定の位置P1に対して特定された検出点の方向をワークWの存在する方向として採用してもよい。これにより、制御部11は、ワークWの存在する方向を推定することができる。
また、この場合に、上記実施形態と同様に、ステップS106の渦巻状の回転移動は、それぞれ径の異なる複数の旋回を含んでよい。制御部11は、所定の位置P1と特定された検出点との間の距離に基づいて、離間距離を更に推定してもよい。このとき、上記実施形態と同様に、制御部11は、検出点までの距離をそのまま離間距離として採用してもよいし、演算モデルを利用して、検出点までの距離から推定距離を導出してもよい。この後、ステップS109では、制御部11は、ロボット装置2に対して、推定された離間距離の分だけ推定された存在方向に吸着ヘッド30を更に移動させてよい。そして、ステップS110では、制御部11は、ロボット装置2に対して、ステップS109による移動の先で、吸着ヘッド30によるワークWの吸着を試行する動作を再度実行させてよい。これにより、ワークWが所定の位置P1からずれて配置された場合でも、吸着ヘッド30がワークWを安定的に吸着可能な位置を適切かつ簡易に推定することができる。
<4.4>
上記実施形態では、制御部11は、ステップS108において、存在方向と共に離間距離を推定している。しかしながら、離間距離の推定は省略されてよい。この場合、ステップS109における吸着ヘッド30の移動距離は、適宜決定されてよい。例えば、移動距離は、所定値に設定されていてもよい。所定値は、オペレータ等の入力装置14を介した入力により設定されてもよいし、制御プログラム81内で設定されていてもよい。
なお、上記実施形態における離間距離を推定することは、圧力の検出値及び検出点に応じて移動距離を算出するあらゆる形態の演算を含んでよい。すなわち、離間距離として明示的に算出していなくても、圧力の検出値(及び検出点)に応じて算出されるあらゆる形態の移動距離は、推定された離間距離として取り扱われてよい。離間距離を推定する単純な方法の一例として、制御部11は、圧力の検出値が大きければ、移動距離を小さくし、圧力の検出値が小さければ、移動距離が大きくなるように、圧力の検出値に応じて、移動距離を決定してもよい。基準となる圧力の検出値には、極大値又は検出範囲での最大値が用いられてよい。
<4.5>
上記実施形態では、上記ステップS106において、制御部11は、渦巻状に回転移動させている間に、ロボット装置2に対して、吸着ヘッド30を更に上下方向に変位させる。そして、ステップS107では、制御部11は、この挙動に基づいて、回転移動の間に取得された圧力データ121により示される圧力の検出値の時系列を較正する。しかしながら、この一連の較正処理は省略されてよい。
例えば、制御部11は、ステップS107の処理を省略してもよい。この場合、制御部11は、ステップS106における回転移動の間、ロボット装置2に対して、吸着ヘッド30の高さを一定に維持するように指示してもよい。或いは、ステップS107の処理を省略する場合でも、制御部11は、ステップS106において、渦巻状に回転移動させている間に、ロボット装置2に対して、吸着ヘッド30を更に上下方向に変位させてもよい。また、この場合、制御装置1のソフトウェア構成において、較正部116は省略されてよい。
<4.6>
上記実施形態では、ステップS103以降、制御装置1は、圧力データ121及び軌跡データ123を取得している。しかしながら、圧力データ121及び軌跡データ123それぞれを取得する期間は、このような例に限定されなくてもよい。圧力データ121を取得する期間は、ワークWの吸着を試行する期間及びステップS106により探索する期間を含んでいれば、実施の形態に応じて適宜決定されてよい。また、軌跡データ123を取得する期間は、ステップS106により探索する期間を含んでいれば、実施の形態に応じて適宜決定されてよい。また、上記処理手順において、ステップS111で吸着ヘッド30がワークWを吸着していないと判定した場合に、制御部11は、ステップS122の処理を省略し、ステップS106から再度処理を繰り返してもよい。
1…制御装置、
11…制御部、12…記憶部、13…外部インタフェース、
14…入力装置、15…出力装置、16…ドライブ、
110…データ取得部、111…移動制御部、
112…吸着制御部、113…判定部、114…探査部、
115…推定部、116…較正部、117…動作制御部、
121…圧力データ、123…軌跡データ、
81…制御プログラム、91…記憶媒体、
2…ロボット装置、
21…台座部、22…第1関節部、
23…第2関節部、24・26…リンク、
25…第3関節部、27…第4関節部、
30…吸着ヘッド、300…内部空間、
305…ドライバ、
31…コンプレッサ、32…圧力センサ、
W…ワーク、41…軸体、43…頭部

Claims (13)

  1. 圧縮空気によりワークを吸着するように構成された吸着ヘッド、及び前記圧縮空気の圧力を検出するように構成された圧力センサを備えるロボット装置の動作を制御する制御装置であって、
    前記ロボット装置に対して、前記ワークが供給される所定の位置に前記吸着ヘッドを移動させる移動制御部と、
    前記ロボット装置に対して、前記所定の位置で前記吸着ヘッドによる前記ワークの吸着を試行させる吸着制御部と、
    前記圧力センサにより前記圧縮空気の圧力を検出した結果に基づいて、前記吸着ヘッドが前記試行により前記ワークを吸着したか否かを判定する判定部と、
    前記吸着ヘッドが前記ワークを吸着していないと判定された場合、前記ロボット装置に対して、前記圧縮空気により前記ワークを吸着する動作を前記吸着ヘッドに実行させながら、前記吸着ヘッドを水平方向に渦巻状に回転移動させる探査部と、
    前記回転移動をさせている間における、前記圧力センサにより検出される前記圧縮空気の圧力の変化に基づいて、前記所定の位置に対して前記ワークの存在する方向を推定する推定部と、
    を備え、
    前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記移動制御部は、前記ロボット装置に対して、推定された前記方向に前記吸着ヘッドを更に移動させ、
    推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着制御部は、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させる、
    制御装置。
  2. 前記推定部は、前記回転移動をさせている間における、前記圧力センサにより検出される前記圧縮空気の圧力の変化に基づいて、前記所定の位置と前記ワークの存在する位置との間の距離を更に推定し、
    前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記移動制御部は、前記ロボット装置に対して、推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させ、
    推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着制御部は、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させる、
    請求項1に記載の制御装置。
  3. 前記ワークの存在する前記方向を推定することは、
    前記回転移動の軌跡を、当該回転移動の軸周りに複数の区間に分割し、
    前記複数の区間のうち、前記圧力センサにより検出される前記圧縮空気の圧力が最も高い1つの区間を特定し、かつ
    前記所定の位置に対する特定された前記1つの区間の方向を、前記ワークの存在する前記方向として採用すること、
    により構成される、
    請求項1に記載の制御装置。
  4. 前記圧縮空気の圧力が最も高い1つの区間を特定することは、前記圧力センサにより検出される前記圧縮空気の圧力が最も高い検出点の属する1つの区間を特定すること、により構成される、
    請求項3に記載の制御装置。
  5. 前記圧縮空気の圧力が最も高い1つの区間を特定することは、
    前記圧力センサにより検出される前記圧縮空気の圧力の平均値を前記区間毎に算出し、かつ
    前記複数の区間のうち、算出された前記圧力の平均値の最も高い1つの区間を特定すること、
    により構成される、
    請求項3に記載の制御装置。
  6. 前記渦巻状の回転移動は、それぞれ径の異なる複数の旋回を含み、
    前記推定部は、特定された前記1つの区間において前記圧力センサにより検出される前記圧縮空気の圧力の前記各旋回の間での比較に基づいて、前記所定の位置と前記ワークの存在する位置との間の距離を更に推定し、
    前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記移動制御部は、前記ロボット装置に対して、推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させ、
    推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着制御部は、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させる、
    請求項3から5のいずれか1項に記載の制御装置。
  7. 検出される前記圧縮空気の圧力を前記各旋回の間で比較することは、前記複数の旋回のうち、特定された前記1つの区間において前記圧力センサにより検出される前記圧縮空気の圧力が最も高い1つの旋回を特定することを含み、
    前記推定部は、特定された前記1つの旋回の径に応じて、前記所定の位置と前記ワークの存在する位置との間の距離を推定する、
    請求項6に記載の制御装置。
  8. 前記ワークの存在する前記方向を推定することは、
    前記圧力センサにより検出される前記圧縮空気の圧力が最も高い検出点を特定し、かつ
    前記所定の位置に対する特定された前記検出点の方向を、前記ワークの存在する前記方向として採用すること、
    により構成される、
    請求項1に記載の制御装置。
  9. 前記渦巻状の回転移動は、それぞれ径の異なる複数の旋回を含み、
    前記推定部は、前記所定の位置と特定された前記検出点との間の距離に基づいて、前記所定の位置と前記ワークの存在する位置との間の距離を更に推定し、
    前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記移動制御部は、前記ロボット装置に対して、推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させ、
    推定された前記距離の分だけ推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着制御部は、前記ロボット装置に対して、前記吸着ヘッドによる前記ワークの吸着を再び試行させる、
    請求項8に記載の制御装置。
  10. 前記圧力センサにより前記圧縮空気の圧力を検出した結果を較正する較正部を更に備え、
    前記探査部は、前記吸着ヘッドを水平方向に渦巻状に回転移動させている間、前記ロボット装置に対して、前記吸着ヘッドを上下方向に更に変位させ、
    前記検出した結果を較正することは、前記吸着ヘッドを上下方向に変位させている間に前記圧力センサにより検出される前記圧縮空気の圧力の変動と、前記吸着ヘッドの上下方向の変位に基づいて仮定される前記圧縮空気の圧力の変動とのずれを解消することにより構成され、
    前記推定部は、較正された前記結果を利用して、前記所定の位置に対して前記ワークの存在する方向を推定する、
    請求項1から9のいずれか1項に記載の制御装置。
  11. 前記ワークは、ネジであり、
    前記ロボット装置は、前記吸着ヘッドにより吸着されたネジを、当該ネジの軸周りに回転させるためのドライバを更に備える、
    請求項1から10のいずれか1項に記載の制御装置。
  12. 圧縮空気によりワークを吸着するように構成された吸着ヘッド、及び前記圧縮空気の圧力を検出するように構成された圧力センサを備えるロボット装置の動作の制御方法であって、
    コンピュータが、
    前記ロボット装置に対して、前記ワークが供給される所定の位置に前記吸着ヘッドを移動させるステップと、
    前記ロボット装置に対して、前記所定の位置で前記吸着ヘッドによる前記ワークの吸着を試行させるステップと、
    前記圧力センサにより前記圧縮空気の圧力を検出した結果に基づいて、前記吸着ヘッドが前記試行により前記ワークを吸着したか否かを判定するステップと、
    を実行し、
    前記吸着ヘッドが前記ワークを吸着していないと判定した場合に、前記コンピュータが、
    前記ロボット装置に対して、前記圧縮空気により前記ワークを吸着する動作を前記吸着ヘッドに実行させながら、前記吸着ヘッドを水平方向に渦巻状に回転移動させるステップと、
    前記回転移動をさせている間における、前記圧力センサにより検出される前記圧縮空気の圧力の変化に基づいて、前記所定の位置に対して前記ワークの存在する方向を推定するステップと、
    前記ロボット装置に対して、推定された前記方向に前記吸着ヘッドを更に移動させるステップと、
    前記ロボット装置に対して、推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着ヘッドによる前記ワークの吸着を再び試行させるステップと、
    を実行する、
    制御方法。
  13. 圧縮空気によりワークを吸着するように構成された吸着ヘッド、及び前記圧縮空気の圧力を検出するように構成された圧力センサを備えるロボット装置の動作を制御するための制御プログラムであって、
    コンピュータに、
    前記ロボット装置に対して、前記ワークが供給される所定の位置に前記吸着ヘッドを移動させるステップと、
    前記ロボット装置に対して、前記所定の位置で前記吸着ヘッドによる前記ワークの吸着を試行させるステップと、
    前記圧力センサにより前記圧縮空気の圧力を検出した結果に基づいて、前記吸着ヘッドが前記試行により前記ワークを吸着したか否かを判定するステップと、
    を実行させ、
    前記吸着ヘッドが前記ワークを吸着していないと判定された場合に、前記コンピュータに、
    前記ロボット装置に対して、前記圧縮空気により前記ワークを吸着する動作を前記吸着ヘッドに実行させながら、前記吸着ヘッドを水平方向に渦巻状に回転移動させるステップと、
    前記回転移動をさせている間における、前記圧力センサにより検出される前記圧縮空気の圧力の変化に基づいて、前記所定の位置に対して前記ワークの存在する方向を推定するステップと、
    前記ロボット装置に対して、推定された前記方向に前記吸着ヘッドを更に移動させるステップと、
    前記ロボット装置に対して、推定された前記方向に前記吸着ヘッドを更に移動させた後に、前記吸着ヘッドによる前記ワークの吸着を再び試行させるステップと、
    を実行させるための、
    制御プログラム。
JP2021570581A 2020-01-16 2020-01-16 制御装置、制御方法、及び制御プログラム Active JP7260002B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/001364 WO2021144935A1 (ja) 2020-01-16 2020-01-16 制御装置、制御方法、及び制御プログラム

Publications (2)

Publication Number Publication Date
JPWO2021144935A1 JPWO2021144935A1 (ja) 2021-07-22
JP7260002B2 true JP7260002B2 (ja) 2023-04-18

Family

ID=76864055

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021570581A Active JP7260002B2 (ja) 2020-01-16 2020-01-16 制御装置、制御方法、及び制御プログラム

Country Status (5)

Country Link
US (1) US12109686B2 (ja)
EP (1) EP4091777B1 (ja)
JP (1) JP7260002B2 (ja)
CN (1) CN114786888B (ja)
WO (1) WO2021144935A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113732681A (zh) * 2021-09-09 2021-12-03 普雷思讯自动化科技(苏州)有限公司 一种多角度自动锁付螺丝机
JP7730702B2 (ja) * 2021-09-22 2025-08-28 Yushin株式会社 成形品取出機
JP2023049270A (ja) * 2021-09-29 2023-04-10 オムロン株式会社 ロボットシステム、制御方法および制御プログラム
US20240058953A1 (en) * 2022-08-19 2024-02-22 AMP Robotics Corporation Object picking optimization
CN118721193B (zh) * 2024-06-27 2025-10-17 华中科技大学 空间电连接器任意姿态下的机器人力感知装配方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011218484A (ja) 2010-04-09 2011-11-04 Kawada Kogyo Kk 部品移送装置
WO2019107208A1 (ja) 2017-11-28 2019-06-06 川崎重工業株式会社 作業機の動作制御方法

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3420330C1 (de) * 1984-05-30 1985-12-05 Deutsche Forschungs- und Versuchsanstalt für Luft- und Raumfahrt e.V., 5000 Köln Induktiver Sensor und Verfahren zur beruehrungslosen,dreidimensionalen Positionserfassung von Loechern,Bohrungen,Bolzen,Niete u.ae. in bzw. an Metallteilen mittels eines solchen Sensors
JP3225063B2 (ja) * 1991-09-10 2001-11-05 エスエムシー株式会社 圧力値設定方法
JPH0560735U (ja) * 1992-01-21 1993-08-10 新明和工業株式会社 ねじ締め装置
KR100877903B1 (ko) * 2006-10-25 2009-01-13 (주)진성 테크템 다수 물품의 흡착 전환 이송 집접장치.
JP4565023B2 (ja) * 2008-07-04 2010-10-20 ファナック株式会社 物品取り出し装置
TW201116383A (en) * 2009-11-10 2011-05-16 Micro Star Int Co Ltd Control method and cleaning robot utilizing the same
JP2012143842A (ja) * 2011-01-13 2012-08-02 Sharp Corp 探索装置、自動組付け装置、探索方法、およびプログラム
JP5266377B2 (ja) * 2011-12-19 2013-08-21 ファナック株式会社 物品の姿勢を修正する機能を備えた取出し装置
JP2013154457A (ja) * 2012-01-31 2013-08-15 Asahi Kosan Kk ワーク移載システム、ワーク移載方法及びプログラム
JP2016028836A (ja) * 2014-07-25 2016-03-03 日立金属株式会社 バラ積みワークのピックアップ搬送装置
CN105643267A (zh) * 2014-11-11 2016-06-08 沈阳新松机器人自动化股份有限公司 一种机械手力控制装配装置及装配方法
KR101616464B1 (ko) * 2014-11-18 2016-04-29 주식회사 엘지실트론 웨이퍼 연마장비의 웨이퍼 로딩장치 및 웨이퍼 로딩위치 조정 방법
JP6592969B2 (ja) * 2015-06-02 2019-10-23 セイコーエプソン株式会社 嵌合方法
JP7027030B2 (ja) * 2015-07-07 2022-03-01 トーヨーカネツ株式会社 ピッキングハンド及びピッキング移載装置
DE102016009030B4 (de) 2015-07-31 2019-05-09 Fanuc Corporation Vorrichtung für maschinelles Lernen, Robotersystem und maschinelles Lernsystem zum Lernen eines Werkstückaufnahmevorgangs
JP6522488B2 (ja) 2015-07-31 2019-05-29 ファナック株式会社 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
JP6693098B2 (ja) 2015-11-26 2020-05-13 セイコーエプソン株式会社 ロボット、及びロボットシステム
CN108290257B (zh) * 2015-12-16 2020-03-06 株式会社安川电机 机器人系统以及控制方法
JP6707853B2 (ja) * 2015-12-18 2020-06-10 大同特殊鋼株式会社 山積み部品の取出し装置および山積み部品の取出し方法
CN108965690B (zh) * 2017-05-17 2021-02-26 欧姆龙株式会社 图像处理系统、图像处理装置及计算机可读存储介质
JP7062406B2 (ja) * 2017-10-30 2022-05-16 株式会社東芝 情報処理装置及びロボットアーム制御システム
JP2019107737A (ja) * 2017-12-19 2019-07-04 株式会社東芝 物品の把持機構
JP6973119B2 (ja) 2018-01-26 2021-11-24 セイコーエプソン株式会社 ロボット制御装置及びロボットシステム
JP6947082B2 (ja) * 2018-02-28 2021-10-13 オムロン株式会社 落下ばらつき予測装置、方法、プログラム、及びロボットシステム
US11260534B2 (en) * 2018-04-04 2022-03-01 Canon Kabushiki Kaisha Information processing apparatus and information processing method
JP7087632B2 (ja) 2018-04-26 2022-06-21 セイコーエプソン株式会社 ロボット制御装置
SE544741C2 (en) 2018-05-11 2022-11-01 Genie Ind Bv Waste Sorting Gantry Robot and associated method
CN109382828B (zh) * 2018-10-30 2021-04-16 武汉大学 一种基于示教学习的机器人轴孔装配系统及方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011218484A (ja) 2010-04-09 2011-11-04 Kawada Kogyo Kk 部品移送装置
WO2019107208A1 (ja) 2017-11-28 2019-06-06 川崎重工業株式会社 作業機の動作制御方法

Also Published As

Publication number Publication date
EP4091777A1 (en) 2022-11-23
WO2021144935A1 (ja) 2021-07-22
CN114786888A (zh) 2022-07-22
US12109686B2 (en) 2024-10-08
CN114786888B (zh) 2024-07-30
EP4091777A4 (en) 2023-05-03
EP4091777B1 (en) 2024-04-03
JPWO2021144935A1 (ja) 2021-07-22
US20230064484A1 (en) 2023-03-02

Similar Documents

Publication Publication Date Title
JP7260002B2 (ja) 制御装置、制御方法、及び制御プログラム
US10858188B2 (en) Gripping device and conveying apparatus
US10532461B2 (en) Robot and robot system
JP5685027B2 (ja) 情報処理装置、物体把持システム、ロボットシステム、情報処理方法、物体把持方法およびプログラム
CN111745640B (zh) 物体检测方法、物体检测装置以及机器人系统
CN104842361B (zh) 具有3d箱体定位功能的机器人系统
EP3392002A1 (en) Information processing apparatus, measuring apparatus, system, interference determination method, and article manufacturing method
US8630737B2 (en) Taking out device having function for correcting posture of an article
JP6088563B2 (ja) 位置及び姿勢の変換演算機能を備えたワーク取出しロボットシステム、及びワーク取出し方法
US9317032B2 (en) Robot and method for operating a robot
JP7191569B2 (ja) 把持装置
Ahlin et al. Autonomous leaf picking using deep learning and visual-servoing
CN106994680B (zh) 机器人以及机器人系统
US20140277720A1 (en) Robot system, method for controlling robot, and method for producing to-be-processed material
CN108081268A (zh) 机器人控制系统、机器人、程序以及机器人控制方法
JP2014161965A (ja) 物品取り出し装置
JP6390088B2 (ja) ロボット制御システム、ロボット、プログラム及びロボット制御方法
Zheng et al. Peg-in-hole assembly based on hybrid vision/force guidance and dual-arm coordination
US20200189116A1 (en) Control apparatus that controls arm for gripping object
JP6176091B2 (ja) 把持方法、運搬方法及びロボット
US20220134550A1 (en) Control system for hand and control method for hand
Xu et al. Industrial robot base assembly based on improved hough transform of circle detection algorithm
Chen et al. Vision-based high-precision assembly with force feedback
Schleth et al. Workpiece localization methods for robotic welding-a review
JP7583942B2 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220616

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: 20230307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230320

R150 Certificate of patent or registration of utility model

Ref document number: 7260002

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150