JP2023094786A - ロボット制御装置、ロボットシステム、ロボット制御プログラム - Google Patents

ロボット制御装置、ロボットシステム、ロボット制御プログラム Download PDF

Info

Publication number
JP2023094786A
JP2023094786A JP2021210293A JP2021210293A JP2023094786A JP 2023094786 A JP2023094786 A JP 2023094786A JP 2021210293 A JP2021210293 A JP 2021210293A JP 2021210293 A JP2021210293 A JP 2021210293A JP 2023094786 A JP2023094786 A JP 2023094786A
Authority
JP
Japan
Prior art keywords
finger
workpiece
hand
fingers
opening
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
JP2021210293A
Other languages
English (en)
Inventor
大樹 末元
Daiki Suemoto
隆介 西川
Ryusuke Nishikawa
裕規 高山
Yuki Takayama
敏行 本間
Toshiyuki Honma
響 入江
Hibiki Irie
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.)
Kawasaki Heavy Industries Ltd
Original Assignee
Kawasaki Heavy Industries Ltd
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 Kawasaki Heavy Industries Ltd filed Critical Kawasaki Heavy Industries Ltd
Priority to JP2021210293A priority Critical patent/JP2023094786A/ja
Priority to PCT/JP2022/046675 priority patent/WO2023120476A1/ja
Publication of JP2023094786A publication Critical patent/JP2023094786A/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
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices

Landscapes

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

Abstract

【課題】複数の指によるワークの適切な把持を簡便に実現する。【解決手段】ロボット制御装置5は、ハンド3が設けられたロボットアーム2を移動させる移動制御部55と、ハンド3に設けられた複数の指31を所定の開閉方向へ開閉させる開閉制御部56とを備えている。移動制御部55は、指31を押付方向へワークWに接触させる接触動作をロボットアーム2に実行させる。開閉制御部56は、接触動作の後に指31に開動作を実行させる。移動制御部55は、開動作によって指31がワークWに対して非接触となった後に把持位置までハンド3を押付方向へ移動させる接近動作をロボットアーム2に実行させる。開閉制御部56は、ハンド3が把持位置に位置する状態において指31に閉動作を実行させることによって指31にワークを把持させる。【選択図】図5

Description

ここに開示された技術は、ロボット制御装置、ロボットシステム、ロボット制御プログラムに関する。
従来より、ワークを複数の指によって把持するロボットの制御装置が知られている。例えば、特許文献1には、複数の指によってワークを把持する際に、複数の指の間隔をワークの形状等に応じて調整する技術が開示されている。
特開2021-84210号公報
ところで、ワークの把持作業においては、まずワークを把持できる位置、即ち、複数の指の間にワークが配置される位置までハンドを移動させ、その状態から指を閉動作させることによって、指でワークが把持される。つまり、ハンドを把持位置まで適切に移動させることが、ワークを把持する上で必要になる。
しかしながら、ハンドの位置精度及びワークの位置精度等が低いと、指がワークに干渉するなどして、ワークを把持できる位置までハンドを適切に移動させることができない場合もある。
ここに開示された技術は、かかる点に鑑みてなされたものであり、その目的とするところは、複数の指によるワークの適切な把持を簡便に実現することにある。
ここに開示されたロボット制御装置は、ハンドが設けられたアームを移動させる移動制御部と、前記ハンドに設けられた複数の指を所定の開閉方向へ開閉させる開閉制御部とを備え、前記移動制御部は、前記指を前記開閉方向と交差する押付方向へワークに接触させる接触動作を前記アームに実行させ、前記開閉制御部は、前記接触動作の後に前記指に開動作を実行させ、前記移動制御部は、前記開動作によって前記指がワークに対して非接触となった後に、複数の前記指の間にワークが配置される所定の把持位置まで前記ハンドを前記押付方向へ移動させる接近動作を前記アームに実行させ、前記開閉制御部は、前記ハンドが前記把持位置に位置する状態において前記指に閉動作を実行させることによって前記指にワークを把持させる。
ここに開示されたロボットシステムは、開閉可能な複数の指が設けられたハンドと、前記ハンドが設けられたアームと、前記ロボット制御装置とを備える。
ここに開示されたロボット制御プログラムは、ハンドに設けられ、所定の開閉方向へ開閉可能な複数の指のうち少なくとも1つの指を前記開閉方向と交差する押付方向へワークに接触させる接触動作を前記ハンドが設けられたアームに実行させる機能と、前記接触動作の後に前記指に開動作を実行させる機能と、前記開動作によって前記指がワークに対して非接触となった後に、複数の前記指の間にワークが配置される所定の把持位置まで前記ハンドを前記押付方向へ移動させる接近動作を前記アームに実行させる機能と、前記ハンドが前記把持位置に位置する状態において前記指に閉動作を実行させることによって前記指にワークを把持させる機能とをコンピュータに実現させる。
前記ロボット制御装置によれば、複数の指によるワークの適切な把持を簡便に実現することができる。
前記ロボットシステムによれば、複数の指によるワークの適切な把持を簡便に実現することができる。
前記ロボット制御プログラムによれば、複数の指によるワークの適切な把持を簡便に実現することができる。
図1は、ロボットシステムの構成を示す模式図である。 図2は、ハンドの拡大図である。 図3は、ロボット制御装置の概略的なハードウェア構成を示す図である。 図4は、制御部の制御系統の構成を示すブロック図である。 図5は、ロボットのピッキング動作の処理を示すフローチャートである。 図6は、準備位置に配置されたハンドの一例を示す図である。 図7は、準備位置からずれた位置に配置されたハンドを示す図である。 図8は、指がワークに接触したハンドを示す図である。 図9は、指に開動作をさせるハンドを示す図である。 図10は、開動作の結果、指がワークに接触していない状態となったハンドを示す図である。 図11は、把持位置に位置するハンドを示す図である。 図12は、把持動作が完了した状態のハンドを示す図である。 図13は、上部と本体とで幅が異なるワークを把持する際に1回目の開動作を実行するハンドを示す図である。 図14は、上部と本体とで幅が異なるワークを把持する際に2回目の開動作を実行するハンドを示す図である。 図15は、凹部が形成されたワークに対して指に開動作をさせるハンドを示す図である。 図16は、変形し得るワークをピッキングするハンドを示す図であって、指がワークに接触した状態を示す。 図17は、変形し得るワークをピッキングするハンドを示す図であって、指がワークの側面に接触した状態を示す。 図18は、変形し得るワークをピッキングするハンドを示す図であって、ハンドが把持位置に到達した状態を示す。 図19は、変形し得るワークをピッキングするハンドを示す図であって、指が把持動作を完了した状態を示す。 図20は、変形例に係るハンドの拡大図である。
以下、例示的な実施形態を図面に基づいて詳細に説明する。図1は、ロボットシステム100の構成を示す模式図である。
ロボットシステム100は、ロボット1と、ロボット1を制御するロボット制御装置5とを備えている。ロボット1は、ロボットアーム2と、開閉可能な複数の指31が設けられたハンド3とを有している。ハンド3は、ロボットアーム2に設けられている。
この例では、ロボット1は、指31でワークWを把持して、ワークWを搬送するピッキング動作を実行する。具体的には、ロボット1は、コンテナ91内の特定のワークWを取り出して、所定の場所へ搬送する。コンテナ91内には、複数のワークWが収容されている。コンテナ91は、例えば、棚92に載置されている。
ロボット1は、この例では、産業用ロボットである。ロボット1が配置される空間には、直交3軸のロボット座標系が規定されている。例えば、上下方向にZ軸が設定され、水平方向に互いに直交するX軸及びY軸が設定される。
ロボット1は、ワークWへの指31の押付力を検出する力覚センサ41(図2参照)をさらに備えている。また、ロボット1は、撮像装置42をさらに備えている。
ロボットアーム2は、三次元状に動作するように構成されている。この例では、ロボットアーム2は、垂直多関節型のロボットアームである。ロボットアーム2は、ベース10に支持されている。ロボットアーム2は、複数のリンク21と、複数のリンク21を接続する複数の関節22とを有している。ロボットアーム2の先端のリンク21に、ハンド3が連結されている。
ロボットアーム2は、各関節を回転駆動するサーボモータ23(図3参照)を有している。各サーボモータ23は、エンコーダ24(図3参照)を有している。
ハンド3は、ロボットアーム2に取り付けられるエンドエフェクタである。図2は、ハンド3の拡大図である。ハンド3は、所定の開閉方向へ開閉する複数の指を有している。具体的には、ハンド3は、第1指31Aと第2指31Bとを有している。第1指31A及び第2指31Bは、開閉方向へ摺動可能にハンド3の本体30に支持されている。第1指31A及び第2指31Bは、本体30から開閉方向と略直交する方向に延びている。
ハンド3は、複数の指を独立に開閉させる複数のサーボモータをさらに有している。具体的には、ハンド3は、第1指31Aを駆動する第1サーボモータ32Aと、第2指31Bを駆動する第2サーボモータ32Bとを有している。第1サーボモータ32A及び第2サーボモータ32Bのトルクによって、第1指31A及び第2指31Bの把持力が調整される。第1サーボモータ32A及び第2サーボモータ32Bはそれぞれ、エンコーダ33(図3参照)を有している。第1サーボモータ32A及び第2サーボモータ32Bは、駆動源の一例である。
尚、第1指31Aと第2指31Bとを区別しない場合には、単に「指31」と称する場合がある。また、第1サーボモータ32Aと第2サーボモータ32Bとを区別しない場合には、単に「サーボモータ32」と称する場合がある。
力覚センサ41は、複数の指31ごとに設けられている。具体的には、力覚センサ41は、第1指31A及び第2指31Bのそれぞれに設けられている。第1指31Aに設けられた力覚センサ41を「第1力覚センサ41A」と称し、第2指31Bに設けられた力覚センサ41を「第2力覚センサ41B」と称する。第1力覚センサ41Aと第2力覚センサ41Bとを区別しない場合には、単に「力覚センサ41」と称する。力覚センサ41は、少なくとも、開閉方向と交差する、詳しくは略直交する方向の力を検出する。力覚センサ41が検出する力の方向は、指31の延伸方向と略同じであってもよい。この例では、力覚センサ41は、直交する3軸方向の力と該3軸回りのモーメントを検出する。直交する3軸方向の1つが開閉方向と交差する方向である。力覚センサ41は、センサの一例である。
撮像装置42は、二次元画像を撮影する。撮像装置42は、ロボットアーム2に設けられている。詳しくは、撮像装置42は、図1に示すように、ロボットアーム2の先端のリンク21に取り付けられている。例えば、撮像装置42は、コンテナ91の上方から、コンテナ91内のワークWを撮影する。撮像装置42は、撮影画像をロボット制御装置5へ出力する。
図3は、ロボット制御装置5の概略的なハードウェア構成を示す図である。ロボット制御装置5には、力覚センサ41の検出結果及び撮像装置42の撮影画像が入力される。ロボット制御装置5は、ロボットアーム2のサーボモータ23及びハンド3のサーボモータ32を制御する。例えば、ロボット制御装置5は、サーボモータ23に電流を供給する。このとき、ロボット制御装置5は、エンコーダ24の出力に基づいて供給電流をフィードバック制御する。また、ロボット制御装置5は、ハンド3のサーボモータ32を制御することによって2本の指31を開閉させる。このとき、ロボット制御装置5は、エンコーダ33の出力に基づいて供給電流をフィードバック制御する。例えば、ロボット制御装置5は、ハンド3がコンテナ91内からワークWを取り出し、そのワークWを所定の場所まで搬送するピッキング動作をロボット1に実行させる。
ロボット制御装置5は、制御部51と、記憶部52と、メモリ53とを有している。
制御部51は、ロボット制御装置5の全体を制御する。制御部51は、各種の演算処理を行う。例えば、制御部51は、CPU(Central Processing Unit)等のプロセッサで形成されている。制御部51は、MCU(Micro Controller Unit)、MPU(Micro Processor Unit)、FPGA(Field Programmable Gate Array)、PLC(Programmable Logic Controller)、システムLSI等で形成されていてもよい。
記憶部52は、制御部51で実行されるプログラム及び各種データを格納している。例えば、記憶部52は、ロボット制御プログラム54が格納されている。記憶部52は、不揮発性メモリ、HDD(Hard Disc Drive)又はSSD(Solid State Drive)等で形成される。
メモリ53は、データ等を一時的に格納する。例えば、メモリ53は、揮発性メモリで形成される。
図4は、制御部51の制御系統の構成を示すブロック図である。制御部51は、記憶部52からロボット制御プログラム54をメモリ53に読み出して展開することによって、各種機能を実現する。具体的には、制御部51は、ロボットアーム2を移動させる移動制御部55と、複数の指31を開閉方向へ開閉させる開閉制御部56と、ワークWの位置を特定する位置特定部57として機能する。
移動制御部55は、サーボモータ23への印加電流を制御して、関節22の回転角を調整することによってロボットアーム2を変形及び移動させる。以下、ロボットアーム2の移動には、特段の断りが無い限り、ロボットアーム2の変形も含むものとする。
開閉制御部56は、サーボモータ32への印加電流を制御して、複数の指31を開閉させる。具体的には、開閉制御部56は、サーボモータ32のトルク指令値(又は、回転角位置指令)を算出し、算出されたトルク指令値をサーボモータ32のサーボアンプへ出力する。サーボモータは、トルク指令値に応じた電流をサーボモータ32に印加する。開閉制御部56は、複数のサーボモータ32を独立に制御する。つまり、開閉制御部56は、複数の指31を独立に開閉させる。例えば、開閉制御部56は、一の指31だけ開動作又は閉動作させ、他の指31を停止させておくことができる。開閉制御部56は、一の指31に開動作をさせ、他の指31に閉動作をさせることもできる。さらに、開閉制御部56は、複数のサーボモータ32のトルクを独立に制御する。例えば、開閉制御部56は、複数の指31を閉動作させる際の各指31の駆動力を互いに異ならせることができる。尚、開閉制御部56は、力覚センサ41によって検出される開閉方向の力に応じて、サーボモータ32への印加電流、例えば、トルク指令値を調整してもよい。
位置特定部57は、撮像装置42の撮影画像からワークWの位置を特定する。具体的には、位置特定部57は、撮影画像を画像処理することによって、撮影画像中のワークWを特定し、該ワークWの位置を特定する。撮像装置42はロボットアーム2によって移動させられるため、撮像装置42の位置は既知である。そのため、位置特定部57は、撮影画像中の被写体、即ち、ワークWの位置を特定することができる。この例では、撮影画像が二次元画像であるため、位置特定部57は、ワークWの二次元位置を特定する。詳しくは、位置特定部57は、ロボット座標系のXY平面におけるワークWの位置を特定する。
また、位置特定部57は、撮像装置42の制御も行う。つまり、位置特定部57は、撮像装置42にワークWを撮影させる。
移動制御部55と開閉制御部56とは、協働して、ワークWのピッキング動作をロボットアーム2及びハンド3に実行させる。詳しくは、移動制御部55及び開閉制御部56は、ワークWを把持できる把持位置までハンド3をロボットアーム2によって移動させ、把持位置において指31にワークWを把持させ、ロボットアーム2にワークWを所定の場所まで搬送させる。把持位置は、複数の指31の間にワークWが配置される位置である。
ここで、ハンド3が把持位置まで移動する際に指31がワークWに干渉する場合がある。その場合には、移動制御部55及び開閉制御部56は、指31を開かせることによって指31とワークWとの干渉を解消させてから、ハンド3を把持位置まで移動させる。
簡単に説明すると、移動制御部55は、指31を開閉方向と交差する押付方向へワークWに接触させる接触動作をロボットアーム2に実行させる。指31がワークWに接触すると、開閉制御部56は、接触動作の後に指31に開動作を実行させる。この指31の開動作は、指31とワークWとの接触を解消する動作であるので、「解消動作」と称することもできる。移動制御部55は、開動作によって指31がワークWに対して非接触となった後に、把持位置までハンド3を押付方向へ移動させる接近動作をロボットアーム2に実行させる。ハンド3が把持位置に位置する状態において、開閉制御部56は、指31に閉動作を実行させることによって指31にワークWを把持させる。
ここで、移動制御部55は、指31の開動作中に、ワークWへの指31の接触が維持されるようにロボットアーム2の力制御を実行する。詳しくは、移動制御部55は、ロボットアーム2の力制御において、ワークWへの指31の押付方向への押付力が所定の目標値となるようにロボットアーム2を制御する。指31の開動作中にワークWへの指31の接触が維持されるので、指31は、ワークWの表面に倣いながら開いていく。指31が開いていくと、やがて指31はワークWに接触しない状態となり得る。以下、「押付力」とは、特段の断りが無い限り、押付方向への押付力を意味する。
移動制御部55は、ロボットアーム2の力制御として、いわゆるアドミッタンス制御を実行する。詳しくは、移動制御部55は、押付力が目標値となるようにハンド3の位置を調整する。移動制御部55は、ロボットアーム2に相当する、質量、バネ及びダンパを有する力学モデルを用いてアドミッタンス制御を実行する。ロボットアーム2の力学モデルを表す関数が記憶部52に格納されている。移動制御部55は、現在の押付力を力覚センサ41によって検出される押付力に基づいて求める。移動制御部55は、記憶部52から力学モデルの関数を読み出し、力覚センサ41によって検出された押付力を関数に代入することによって、ハンド3の目標位置を求める。移動制御部55は、ハンド3の目標位置を実現するためのロボットアーム2の各関節角を算出する。移動制御部55は、算出された関節角を実現するようにサーボモータ23の印加電流を調整する。
以下、ピッキング動作についてフローチャートを用いてさらに説明する。図5は、ロボット1のピッキング動作の処理を示すフローチャートである。
まず、ステップS101において、移動制御部55及び位置特定部57は、ワークWの撮影を実行する。具体的には、移動制御部55は、撮像装置42が所定の撮像位置に配置されるようにロボットアーム2を移動させる。所定の撮像位置は、ピッキング動作に応じて予め決められた位置である。例えば、撮像位置は、コンテナ91の上方であって、コンテナ91内の全体が画角に入る位置である。ただし、コンテナ91が棚92に配置されている場合のように、コンテナ91の周囲に他の物体が存在する場合には、ロボットアーム2及びハンド3等が他の物体と干渉しない位置に撮像位置が設定されている。
撮像装置42が撮像位置へ配置されると、位置特定部57は、撮像装置42に撮影を実行させる。これにより、コンテナ91内のワークWが撮影される。
位置特定部57は、撮像装置42の撮影画像からワークWの位置、詳しくは、ロボット座標系のXY平面におけるワークWの位置を特定する。
続いて、ステップS102において、移動制御部55は、ロボットアーム2にハンド3を所定の準備位置まで移動させる。図6は、準備位置に配置されたハンド3の一例を示す図である。図7は、準備位置からずれた位置に配置されたハンド3を示す図である。
準備位置は、後に続く力制御におけるハンド3の移動方向、即ち、押付方向においてハンド3とワークWとが略直線上に並ぶ位置であって、指31がワークWに干渉しない位置である。この例では、押付方向は、開閉方向と略直交する方向であり、具体的には、ロボット座標系のZ方向である。準備位置のXY座標は、位置特定部57によって特定されたワークWの位置に基づいて設定される。準備位置のZ座標は、対象のワークWに応じて予め定められている。具体的には、準備位置のZ座標は、ワークWの高さ(Z方向の寸法)よりも高い位置である。
また、移動制御部55は、ハンド3を準備位置において所定の準備姿勢にする。準備姿勢は、後の力制御を実行する際のハンド3の姿勢である。具体的には、準備姿勢は、指31の開閉方向が押付方向と略直交する姿勢である。この例では、開閉方向がロボット座標系のX方向と一致するように、ハンド3の姿勢が調整される。
さらに、移動制御部55がハンド3を準備位置へ移動させる間に、開閉制御部56は、複数の指31を所定の初期位置へ移動させる。例えば、初期位置は、複数の指31の間隔がワークWの幅(開閉方向の寸法)よりも広くなる位置である。初期位置は、対象のワークWに応じて予め定められている。尚、初期位置は、撮像装置42の撮影画像から求められるワークWの幅に基づいて、ピッキング動作ごとに決められてもよい。
しかしながら、位置特定部57によって特定される準備位置のXY座標は、撮影画像の解像度及び画像処理の精度等によっては適切な準備位置からずれる可能性がある。また、ロボットアーム2の位置精度によっては、ハンド3の位置が位置特定部57によって特定された準備位置からずれる可能性がある。つまり、ハンド3は、種々の要因で、図7に示すように、適切な準備位置からずれる可能性がある。
次に、ステップS103において、ワークWへの指31の押付力を制御する力制御が開始される。具体的には、移動制御部55は、ワークWへの指31の押付力が所定の目標値となるようにロボットアーム2を移動させる。押付力は、指31がワークWに接触することによって発生する。移動制御部55は、押付力が発生するように、指31、即ち、ハンド3を押付方向へ移動させて、ワークWへ接近させる。
例えば、押付力の目標値は、ワークWを過度に押圧しない値であって、ワークWへの指31の接触を確認できる程度の値である。移動制御部55は、記憶部52に格納された力学モデルに基づいて、押付力が目標値となるような、ロボットアーム2の目標位置を算出する。移動制御部55は、ロボットアーム2を目標位置へ移動させる。こうして、移動制御部55は、力覚センサ41によって検出される押付力が目標値になるようにロボットアーム2、即ち、ハンド3の位置を調整する。
結果として、押付力が目標値よりも小さい場合は、移動制御部55は、ハンド3を押付方向においてワークWに接近する向きへ移動させる。一方、押付力が目標値よりも大きい場合は、移動制御部55は、ハンド3を押付方向においてワークWから離れる向きへ移動させる。ハンド3が準備位置に配置された状態においては、何れの指31もワークWに接触していないので、押付力は0である。そのため、移動制御部55は、ハンド3を押付方向においてワークWに接近する向きへ移動させる。つまり、準備位置から力制御が開始されると、まずは、移動制御部55は、ハンド3を押付方向においてワークWの方へ移動させる。
力制御が開始されると、ステップS104において、移動制御部55は、ハンド3が把持位置に到達したか否かを判定する。この例では、準備位置のXY座標は、把持位置のXY座標と同じであって、ハンド3はZ方向にのみ移動する。そのため、ステップS104では、移動制御部55は、ハンド3の押付方向における位置、即ち、Z方向位置が把持位置のZ座標に到達したか否かを判定する。把持位置のZ座標は、対象のワークWに応じて予め定められている。具体的には、把持位置のZ座標は、高さ方向におけるワークWの適切な部分を指31が把持できる位置である。
ハンド3が把持位置に到達していない場合には、移動制御部55は、ステップS107において、指31がワークWに接触したか否かを判定する。ハンド3が図6に示すように準備位置に適切に配置されている場合には、ハンド3が押付方向に移動しても、指31がワークWに接触する可能性は低い。一方、ハンド3が図7に示すように準備位置に適切に配置されていない場合には、ハンド3が押付方向に移動すると、指31がワークWに接触し得る。ただし、ハンド3が準備位置に適切に配置されていても、ロボットアーム2の位置精度によっては、ハンド3が押付方向へ真っすぐに移動せず、指31がワークWに接触し得る。図8は、指31がワークWに接触したハンド3を示す図である。図8では、第2指31BがワークWに接触している。
具体的に、移動制御部55は、何れかの力覚センサ41によって検出された押付力が目標値以上になったか否かを判定する。何れの指31もワークWに接触していない場合には、移動制御部55は、ステップS104の処理に戻る。このとき、移動制御部55は、力制御を継続しているため、押付方向へのハンド3の移動を継続する。そして、移動制御部55は、ステップS104の処理を再び実行する。つまり、移動制御部55は、ハンド3が把持位置に到達するか、又は、何れかの指31がワークWに接触するまで、押付方向へのハンド3の移動を継続する。尚、指31がワークWに接触するまでのロボットアーム2の動作は、指31を押付方向へワークWに接触させる接触動作に相当する。
何れかの指31がワークWに接触した場合には、ステップS108において、開閉制御部56は、ハンド3に指31の開動作を実行させる。具体的には、開閉制御部56は、複数の指31のうちワークWに接触していない指31を停止させる一方、複数の指31のうちワークWに接触した指31を開動作させる。例えば、図8に示すように、第1指31AはワークWに接触せず、第2指31BがワークWに接触した場合には、開閉制御部56は、第1指31Aを停止させる一方、第2指31Bに開動作を実行させる。
指31の開動作中も、移動制御部55は、ワークWへの指31の接触が維持されるようにロボットアーム2の力制御を継続する。図9は、指31に開動作をさせるハンド3を示す図である。第2指31Bの開動作と並行して、移動制御部55は、図9に示すように、ロボットアーム2によって押付方向におけるハンド3の位置を調整して、目標値と略一致する押付力で第2指31BがワークWに押し付けられた状態を維持する。その結果、第2指31Bは、ワークWのうち第2指31Bが接触している部分の表面形状に倣いながら開いていく。図9の例では、第2指31Bが開くにつれて、ハンド3は押付方向においてワークWに接近していく。
その後、ステップS109において、開閉制御部56は、指31がワークWに接触しない状態まで開いたか否かを判定する。具体的には、開閉制御部56は、ワークWへの指31の押付力が0になったか否かを判定する。指31の開動作とロボットアーム2の力制御とが並行して行われた結果、指31が開閉方向においてワークWを超えて拡がると、指31はワークWに接触しない状態となる。このとき、押付力が0になる。図10は、開動作の結果、指31がワークWに接触していない状態となったハンド3を示す図である。図10に示すように、開動作の結果、第1指31Aも第2指31BもワークWと接触していない状態となる。
指31がワークWに接触しない状態まで開くと、ステップS110において、開閉制御部56は、指31の開動作を停止させる。尚、開閉制御部56は、押付力が0になったときにすぐに指31の開動作を停止させてもよいし、押付力が0になってからしばらく指31の開動作を継続してから開動作を停止させてもよい。図10の例では、押付力が0になってから第2指31Bの開動作が所定量だけ継続され、その後に第2指31Bの開動作が停止されている。
尚、指31が最大まで開いても指31がワークWに接触している場合には、ステップS101の処理からやり直される。
指31の開動作が停止されると、再びステップS104の処理が実行される。指31の開動作が停止されても、移動制御部55は、力制御を継続している。そのため、押付方向へのハンド3の移動が継続される。移動制御部55は、ステップS104において、ハンド3が把持位置に到達したか否かを判定する。ハンド3が把持位置に到達していない場合には、移動制御部55は、ステップS105において指31がワークWに接触したか否かを判定する。つまり、移動制御部55は、ハンド3が把持位置に到達するか、又は、何れかの指31がワークWに接触するまで、押付方向へのハンド3の移動を継続する。指31の開動作によって指31がワークWに対して非接触となった後に、ハンド3を押付方向へ把持位置まで移動させる動作が接近動作に相当する。
尚、指31がワークWに再び接触した場合には、前述のステップS108以降の処理が実行される。ワークWの幅が押付方向において段階的に拡がっている場合には、指31の開動作によって指31がワークWに接触しない状態となっても、ハンド3の押付方向の移動によって指31がワークWに再び接触することもあり得る。
一方、ステップS104において、ハンド3が把持位置に到達したと判定された場合には、移動制御部55は、力制御を停止する。そして、ステップS105において、開閉制御部56は、ハンド3に把持動作を実行させる。図11は、把持位置に位置するハンド3を示す図である。把持位置においては、図11に示すように、複数の指31の間にワークWが配置されている。この状態において、複数の指31が閉動作を行う。
尚、ハンド3が準備位置から、指31がワークWに接触することなく、把持位置まで移動する場合には、ステップS104,S107が繰り返され、やがてステップS105の処理が実行される。
図12は、把持動作が完了した状態のハンド3を示す図である。把持動作においては、複数の指31とワークWとの位置関係によって、各指31がワークWに接触するタイミングは異なる。このとき、開閉制御部56は、各サーボモータ32のトルクを制御している。開閉制御部56は、指31の閉動作において、同じトルクで全てのサーボモータ32を作動させる。何れかの指31がワークWに接触すると、ワークWに接触した指31は、ワークWが抵抗になって閉方向へ移動し難くなる。ワークWに接触していない指31は、そのまま閉方向へ移動する。やがて、図12に示すように、全ての指31がワークWに接触し、ワークWを把持する。つまり、各指31の閉方向への移動量は、複数の指31とワークWとの位置関係に応じて異なり得る。ワークWは、把持動作の開始前の位置と略同じ位置において指31に把持される。
ただし、ワークWが配置面に単に載置されている場合には、閉動作する指31の押圧力がワークWと配置面との間の摩擦力よりも大きい場合には、ワークWは、把持動作の開始前の位置から移動し得る。
把持動作が完了すると、ステップS106において、移動制御部55は、ロボットアーム2に搬送動作を実行させる。具体的には、移動制御部55は、ワークWが所定の場所に搬送させるように、ロボットアーム2を移動させる。尚、開閉制御部56は、ワークWが所定の場所に到達するまでに、複数の指31を、ワークWを把持したまま、開閉方向におけるハンド3の中心位置まで移動させてもよい。これにより、移動制御部55は、ハンド3とワークWとの位置関係を一定にすることができ、ワークWを所定の場所へ高い位置精度で搬送することができる。ワークWが所定の場所へ搬送されると、開閉制御部56がハンド3に開動作を実行させ、指31によるワークWの把持を解除する。
こうして、ピッキング動作が完了する。別のワークWのピッキング動作が実行される場合には、ステップS101の処理が再び実行される。
このように、ロボットシステム100のピッキング動作によれば、ハンド3をワークWの把持位置まで移動させる際に指31がワークWに干渉したとしても、干渉を解消してハンド3を把持位置まで適切に移動させることができる。その結果、ワークWを指31で適切に把持することができる。
例えば、実際のワークWの位置とロボット制御装置5が認識しているワークWの位置とがずれている場合であっても、ハンド3を把持位置まで適切に移動させることができる。前述の如く、撮像装置42の撮影画像によってワークWの位置を特定する場合、解像度、明るさ及び画角等によってはワークWを適切に撮影できず、特定されるワークWの位置の精度が低下する場合がある。例えば、図1に示すように、棚92に配置されたコンテナ91内のワークWを撮影する場合には、ロボットアーム2と棚92との干渉による制約のために撮像装置42を適切な位置に配置できなかったり、コンテナ91内が暗かったりする可能性がある。そのような場合、ワークWの適切な画像を取得できず、ワークWの位置を高い精度で特定することが困難となり得る。当然ながら、高性能な撮像装置を採用することによって、これらの問題は解消し得るが、コストの増大を招く。
ロボット制御装置5が認識しているワークWの位置の精度が低い場合であっても、ハンド3の準備位置をワークWに概ね合わせ、ハンド3を準備位置から押付方向へ移動させることによって、指31をワークWに接触させることができる。指31をワークWに接触させることができれば、指31に開動作をさせることによって、指31とワークWとの接触を解消させ、複数の指31の間にワークWが入り込むことができる状態を作ることができる。その後、ハンド3をワークWにさらに接近させることによって、ハンド3を把持位置へ適切に移動させることができる。
つまり、ハンド3を準備位置から押付方向へ移動させて指31がワークWに接触する範囲でハンド3の準備位置をワークWの位置に合わせておけばよく、準備位置の位置精度はそれほど高くなくてもよい。
これは、ロボット制御装置5が撮像装置42の撮影画像からワークWの位置を特定する場合に限定されず、ロボット制御装置5が外部からワークWの位置を与えられる場合も同様である。例えば、ワークWの位置が概ね決まっている場合には、ロボット制御装置5にはワークWの位置が予め入力されていてもよい。外部から与えられるワークWの位置と実際のワークWの位置とにずれがあっても、ロボットシステム100は、前述の動作によってワークWの適切な把持を実現することができる。
また、ロボットアーム2によって調整されるハンド3の位置精度が高くない場合であっても、ハンド3を把持位置まで適切に移動させることができる。つまり、ハンド3を準備位置から押付方向へ移動させる際に、ハンド3の位置が目標からずれたとしても、指31をワークWに接触させることができれば、前述の指31の開動作等によって、ハンド3を把持位置へ適切に移動させることができる。
さらには、ワークWの大きさにばらつきがある場合であっても、ハンド3を把持位置へ適切に移動させることができる。つまり、ワークWの大きさにばらつきがあっても、指31をワークWに接触させた後、指31の開動作によって接触を解消することによって、ハンド3を把持位置へ適切に移動させることができる。ワークWの大きさにばらつきがある場合とは、同じ種類のワークWの大きさにばらつきがある場合だけでなく、大きさ又は形状に差異がある複数の種類のワークWを把持対象とする場合も含まれる。つまり、ワークWの種類に依存せずに、ハンド3を把持位置へ適切に移動させることができる。
また、このようなピッキング動作によれば、ハンド3を把持位置へ移動させる際に指31がワークWに一旦、接触することを許容しているので、ハンド3を把持位置へ移動させる際の複数の指31の間隔を過度に大きくしなくてもよい。これにより、把持前の複数のワークWの配置間隔を狭くすることができ、ワークWの充填率を向上させることができる。つまり、指31がワークWに接触しないように複数の指31の間隔を大きく設定すると、把持対象となるワークWの隣のワークWに指31が干渉しないように、2つのワークWの間隔を大きくしておく必要がある。その場合、コンテナ91等におけるワークWの充填率が低下する。把持位置へ移動するハンド3の複数の指31の間隔を小さくすることによって、把持対象となるワークWの隣のワークWに指31が干渉する可能性を低減することができる。その結果、複数のワークWの間隔を小さくすることができ、ひいては、ワークWの充填率を向上させることができる。
これらに加えて、ロボット制御装置5は、指31がワークWに接触した後に指31に開動作をさせる際に、ワークWへの指31の押付方向への接触が維持されるようにロボットアーム2の力制御が実行される。これにより、指31がワークWの接触している部分の表面形状に沿って開動作を行うことができる。その結果、ロボット制御装置5は、ワークWへの接触が解消されるまで指31が開いたことをワークWへの指31の押付力に基づいて容易に判断することができる。
以下、いくつかのピッキング動作の具体例についてさらに説明する。図13は、上部w1と本体w0とで幅が異なるワークWを把持する際に1回目の開動作を実行するハンド3を示す図である。図14は、上部w1と本体w0とで幅が異なるワークWを把持する際に2回目の開動作を実行するハンド3を示す図である。例えば、図13に示すようなワークWであっても、ハンド3を把持位置へ適切に移動させることができる。図13に示すワークWは、本体w0に比べて幅が小さい上部w1を有している。前述のフローチャートに従ってピッキング動作が実行され、ステップS103の力制御によって第2指31BがワークWの上部w1に接触したとする。この後、ステップS108の第2指31Bの開動作によって、第2指31Bが開閉方向においてワークWの上部w1よりも拡がる。続いて、力制御が継続されるので、ハンド3が押付方向へ移動して、図14に示すように、第2指31BがワークWの本体w0に接触する。第2指31BがワークWの本体w0に接触すると、ステップS108の第2指31Bの開動作が再び実行される。第2指31Bが開閉方向においてワークWの本体w0よりも拡がると、継続されている力制御によってハンド3が押付方向へ移動して、把持位置に到達する。このように、図13に示すようなワークWであっても、ハンド3を把持位置へ適切に移動させることができる。
あるいは、図15に示すようなワークWであっても、ハンド3を把持位置へ適切に移動させることができる。図15は、凹部w2が形成されたワークWに対して指31に開動作をさせるハンド3を示す図である。図15に示すワークWは、ワークWの上部、即ち、準備位置のハンド3と対向する部分に、凹部w2が形成されている。凹部w2の内面は、押付方向と平行な面を有さず、湾曲面又は押付方向に対して傾斜した傾斜面を有している。前述のフローチャートに従ってピッキング動作が実行され、ステップS103の力制御によって第1指31A及び第2指31BがワークWの凹部w2に接触したとする。この後、ステップS108の指31の開動作によって、第1指31A及び第2指31Bが開動作を実行する。このとき、第1指31A及び第2指31Bが凹部w2の内面に沿って開動作を実行できるように、ロボットアーム2の力制御によってハンド3が押付方向においてワークWから離れる側へ移動する。第1指31A及び第2指31Bが凹部w2から抜け出ると、第1指31A及び第2指31Bが開閉方向においてワークWよりも拡がる。その後、継続されている力制御によって、ハンド3が押付方向へ移動して、把持位置に到達する。このように、ワークWの形状によっては、ハンド3は、指31の開動作時に押付方向におけるワークW側だけでなく、ワークWから離れる側へも移動する。
尚、凹部w2の内面が、開閉方向と平行な底面と、底面の周縁から押付方向と平行に立ち上がる縁面を有するワークWの場合、開動作を行う第1指31A及び第2指31Bが縁面に接触したときに縁面に拘束され得る。移動制御部55は、サーボモータ32のトルク(又は印加電流)が所定値以上の状態が所定期間以上続いた場合には、ハンド3が押付方向においてワークWから離れる側へ所定量だけ移動するようにロボットアーム2を制御してもよい。この動作が繰り返されることによって、第1指31A及び第2指31Bは、やがて凹部w2から抜け出すことができる。移動制御部55は、第1指31A又は第2指31Bが開閉方向において拘束される状態は、サーボモータ32のトルク又は電流ではなく、力覚センサ41によって検出される開閉方向の力に基づいて判定してもよい。
さらにまた、図16に示すような変形し得るワークWであっても、ハンド3を把持位置へ適切に移動させることができる。図16は、変形し得るワークWをピッキングするハンド3を示す図であって、指31がワークWに接触した状態を示す。前述のフローチャートに従ってピッキング動作が実行され、ステップS103の力制御によって第2指31BがワークWに接触したとする。例えば、ワークWは、基本的には正面視で略直方体状の形状を有している。しかし、ワークWは、自重又は指31の接触等によって変形し得る。ワークWは、図16に示すように、正面視で略平行四辺形状に変形する。この後、ステップS108の第2指31Bの開動作によって、第2指31Bが開閉方向においてワークWよりも拡がる。続いて、力制御が継続されるので、ハンド3が押付方向へ移動して、把持位置へ向かう。その途中で、第1指31AがワークWの側面に接触し得る。図17は、変形し得るワークWをピッキングするハンド3を示す図であって、指31がワークWの側面に接触した状態を示す。第1指31AがワークWに接触すると、力制御に加えて、第1指31Aの開動作が実行される。その結果、第1指31AがワークWの側面に沿って開きつつ、ハンド3が押付方向へ把持位置まで移動する。図18は、変形し得るワークWをピッキングするハンド3を示す図であって、ハンド3が把持位置に到達した状態を示す。その後、第1指31A及び第2指31Bが把持動作を行うことによって、第1指31A及び第2指31BがワークWを把持する。図19は、変形し得るワークWをピッキングするハンド3を示す図であって、指31が把持動作を完了した状態を示す。ワークWは、第1指31A及び第2指31Bの閉動作に応じて変形して、正面視で略直方体状の元の状態に戻っていく。
尚、ピッキング動作において、ワークWは、移動してもよい。ワークWには、指31の開動作及び閉動作によってワークWの配置面と平行な力が作用し得る。ワークWと配置面との間の摩擦力よりも該平行な力の方が大きい場合には、ワークWは移動し得る。ワークWが移動しても、複数の指31の間から出ない限りは、ピッキング動作を適切に実行することができる。
また、指31の開動作においては、把持対象のワークWの隣に配置された別のワークWに開動作を行う指31が接触する場合があり得る。この場合、別のワークWと配置面との摩擦力よりも指31による押圧力の方が大きい場合には、別のワークWを配置面と平行にずらすことができる。その結果、把持対象のワークWと別のワークWとの間隔が狭い場合であっても、ピッキング動作を適切に実行することができる。
以上のように、ロボット制御装置5は、ハンド3が設けられたロボットアーム2(アーム)を移動させる移動制御部55と、ハンド3に設けられた複数の指31を所定の開閉方向へ開閉させる開閉制御部56とを備え、移動制御部55は、指31を開閉方向と交差する押付方向へワークWに接触させる接触動作をロボットアーム2に実行させ、開閉制御部56は、接触動作の後に指31に開動作を実行させ、移動制御部55は、開動作によって指31がワークWに対して非接触となった後に、複数の指31の間にワークWが配置される所定の把持位置までハンド3を押付方向へ移動させる接近動作をロボットアーム2に実行させ、開閉制御部56は、ハンド3が把持位置に位置する状態において指31に閉動作を実行させることによって指31にワークを把持させる。
また、ロボットシステム100は、開閉可能な複数の指31が設けられたハンド3と、ハンド3が設けられたロボットアーム2(アーム)と、ロボット制御装置5とを備える。
さらに、ロボット制御プログラム54は、ハンド3に設けられ、所定の開閉方向へ開閉可能な複数の指31のうち少なくとも1つの指31を開閉方向と交差する押付方向へワークWに接触させる接触動作をハンドが3設けられたロボットアーム2(アーム)に実行させる機能と、接触動作の後に指31に開動作を実行させる機能と、開動作によって指31がワークWに対して非接触となった後に、複数の指31の間にワークWが配置される所定の把持位置までハンド3を押付方向へ移動させる接近動作をロボットアーム2に実行させる機能と、ハンド3が把持位置に位置する状態において指31に閉動作を実行させることによって指31にワークWを把持させる機能とをロボット制御装置5(コンピュータ)に実現させる。
この構成によれば、指31がワークWに接触した状態から接触が解消されるまで指31に開動作をさせることによって、複数の指31の間にワークWが入り込むことができる状態を作ることができる。これにより、ハンド3が押付方向へ移動可能となる。その結果、ハンド3を把持位置へ適切に移動させることができる。
また移動制御部55は、指31の開動作中に、ワークWへの指31の接触が維持されるようにロボットアーム2の力制御を実行する。
この構成によれば、指31の開動作中にロボットアーム2の力が制御されて、ワークWへの指31の接触が維持される。これにより、複数の指31の間にワークWが入り込むことができる状態まで、指31を円滑に移動させることができる。つまり、力制御が無ければ、ワークWの指31が接触している部分の表面が指31の開閉方向と平行でない場合に、指31が開閉方向に開くと、指31とワークWとの接触がすぐに解消される可能性がある。指31とワークWとの接触が解消されると、ハンド3が押付方向へ移動する。このとき、複数の指31の間にワークWが入り込むことができる状態まで指31が開いていない場合には、ハンド3が押付方向へ移動するとすぐに指31がワークWに接触する。すると、また指31の開動作が実行される。このように、力制御が無い場合には、指31の先端が階段状の軌跡を描くように、指31の開動作とハンド3の押付方向への移動とが繰り返され得る。それに対し、力制御が実行されると、指31の開動作中に、ワークWへの指31の接触が維持されるようにハンド3の押付方向の位置も調整される。これにより、複数の指31の間にワークWが入り込むことができる状態まで、指31が円滑に移動する。
具体的には、移動制御部55は、ロボットアーム2の力制御において、ワークWへの指31の押付方向への押付力が所定の目標値となるようにロボットアーム2を制御する。
この構成によれば、ロボットアーム2の力制御においては、ワークWへの指31の押付方向への押付力が目標値になるように調整される。目標値は、一定値であっても、変動値であってもよい。押付力が調整されることによって、指31の開動作中に指31がワークWから離れたり、指31がワークWを過度に押圧したりすることが防止することができる。
さらに、開閉制御部56は、指31の開動作において、ワークWへの指31の押付力に基づいて指31がワークWに接触しないようになったと判定する。
この構成によれば、指31とワークWとの接触が解消すると、押付力が0になる。つまり、開閉制御部56は、押付力を監視することによって、指31とワークWとの接触が解消したことを容易に判断することができる。
開閉制御部56は、指31の開動作において、複数の指31のうちワークWに接触していない指31を停止させる一方、複数の指31のうちワークWに接触した指31を開動作させる。
この構成によれば、指31の開動作において、複数の指31の間隔が過度に大きくなることを防止することができる。図7の状態を例に説明すると、開閉制御部56は、ワークWに接触している第2指31Bのみを開動作させ、ワークWに接触していない第1指31Aを停止させたままにする。仮に、第1指31Aが第2指31Bと同様に開動作すると、第1指31Aと第2指31Bとの間隔が過度に大きくなる。例えば、第1指31Aの開方向にコンテナ91の壁等の構造物又は別のワークWが存在する場合は、第1指31Aが構造物又は別のワークWに干渉する虞がある。第1指31Aが何かに干渉すると、第2指31Bの開動作にも支障を来し得る。一方、ワークWに接触していない第1指31Aを移動させないことによって、第1指31Aが周囲のワークW等に干渉することを防止することができる。
また、ロボットシステム100において、ハンドは、複数の前記指を独立に開閉させる複数のサーボモータ32(駆動源)を有し、開閉制御部56は、複数のサーボモータ32を独立に制御する。
この構成によれば、複数の指31のそれぞれを独立に開閉させることができる。このようなハンド3及び開閉制御部56は、前述のようなワークWに接触した指31だけの開動作を実現することができる。
また、ロボットシステム100は、ワークWへの指31の押付力を検出する力覚センサ41をさらに備える。
この構成によれば、力覚センサ41の検出結果に基づいて、ワークWへの指31の接触を容易に判定することができる。
さらに、力覚センサ41は、複数の指31ごとに設けられている。
この構成によれば、力覚センサ41の検出結果に基づいて、ワークWに接触している指31とワークWに接触していない指31とを容易に判別することができる。
《その他の実施形態》
以上のように、本出願において開示する技術の例示として、前記実施形態を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用可能である。また、前記実施形態で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。また、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、前記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
例えば、ロボット1は、産業用ロボットに限定されない。ロボットアーム2は、垂直多関節型のロボットアームに限定されない。ロボットアーム2は、水平多関節型、パラレルリンク型、直角座標型、又は極座標型のロボットアーム等であってもよい。ロボットアーム2は、ハンド3を押付方向に移動させることができる限り、任意のロボットアームを採用することができる。
ハンド3の構成は、一例である。少なくとも1つの開閉動作可能な指を含む複数の指を有する限り、任意の構成を採用することができる。
例えば、指31の本数は、2本に限定されない。指31の本数は、3本以上であってもよい。
複数の指31の全てが開閉動作可能でなくてもよい。つまり、複数の指31のうち少なくとも1つの指31が開閉動作可能であればよい。その場合、開閉動作可能な指31がワークWに接触するように、接触動作が実行される。具体的には、準備位置において、ハンド3を押付方向へ移動させた場合に開閉動作不能な指31がワークWに確実に接触しないように或る程度の余裕を持ってハンド3を配置することが好ましい。
複数の指31の全てが開閉動作可能な構成においては、複数の指31が独立に開閉しなくてもよい。つまり、複数の指31は、同時に又は連動して開閉してもよい。具体的には、複数の指31の駆動源(例えば、サーボモータ32)が共通で1つだけ設けられていてもよい。
指31の駆動源は、サーボモータ32に限定されない。例えば、駆動源は、エアアクチュエータであってもよい。
力覚センサ41は、各指31に設けられていなくてもよい。例えば、1つの力覚センサ41がハンド3に設けられていてもよい。そのような構成であっても、何れかの指31がワークWに接触した場合に、力覚センサ41は、該指31を介して押圧力を検出することができる。
センサは、力覚センサ41に限定されない。センサは、少なくとも押付方向における力を検出できればよい。センサは、モータの電流センサ又はトルクセンサであってもよい。例えば、ハンド3を押付方向へ移動させる際のサーボモータ23の印加電流又はトルクが所定の閾値以上の場合にワークへの指の押付力が発生していると検出してもよい。あるいは、指31とサーボモータ32とが図20に示すようにリンクによって連結された構成のように、指31へのワークWからの反力がサーボモータ32のトルクに影響を与える構成においては、サーボモータ32の印加電流又はトルクに基づいてワークWへの指31の押付力を判定してもよい。例えば、サーボモータ32の印加電流又はトルクが所定の閾値以上の場合に、ワークWへの指31の押付力が発生していると判定される。尚、図20では、第1指31Aの構成のみを図示して、第2指31Bの構成の図示を省略している。
ロボット1は、撮像装置42を備えていなくてもよい。例えばワークW内のワークWの配置が概ね決まっている場合のように、ワークWの位置が既知の場合には、ロボット制御装置5は、既知のワークWの位置に基づいて、ロボットアーム2等を制御してもよい。前述のピッキング動作によれば、ワークWの概ねの位置がわかれば、複数の指31によるワークWの適切な把持を簡便に実現することができる。
あるいは、撮像装置42は、ロボットアーム2に設けられていなくてもよい。例えば、ロボットアーム2とは別のロボットアームに撮像装置42が設けられていてもよい。あるいは、棚板のようなワークWを遮蔽する物体が存在しない場合には、撮像装置42は、ワークWの周囲に固定的に配置されていてもよい。
ワークWの位置情報を取得する装置は、撮像装置42に限定されず、三次元ビジョンセンサ又はステレオカメラ等であってもよい。つまり、ワークWの位置情報を取得する装置は、ワークWの点群データ、RGB-D画像、RGB画像、デプス画像、ボクセル等を取得してもよい。
尚、把持位置のZ座標(即ち、把持位置のうち押付方向における位置)は、ワークWに応じて予め設定されていなくてもよい。例えば、ワークWの位置情報を取得する装置がワークWの三次元情報を取得する場合には、該装置によって取得された三次元情報に基づいて、把持位置のZ座標が特定されてもよい。
ピッキング動作のフローチャートは、一例に過ぎない。複数の指31によるワークWの適切な把持を実現できる限り、フローチャートにおけるステップを適宜、変更、置き換え、付加、省略等を行ってもよい。また、フローチャートにおけるステップの順番を変更したり、直列的な処理を並列的に処理したりしてもよい。
例えば、前述のピッキング動作においては、指31を押付方向へワークWに接触させる接触動作が、ロボットアーム2の力制御によって実現されている。しかし、ステップS103の力制御を、ロボットアーム2、即ち、ハンド3の位置制御に代えてもよい。つまり、ステップS103において、移動制御部55は、ハンド3を押付方向へ把持位置まで移動させるようにロボットアーム2の位置制御を実行してもよい。そして、移動制御部55は、位置制御中に、指31がワークWに接触するか否かを監視し、指31がワークWに接触した場合にロボットアーム2の力制御を開始してもよい。
また、前述のピッキング動作において、接触動作を実行する際の開閉方向における複数の指31の位置(即ち、初期位置)は、複数の指31の間隔がワークWの幅(開閉方向の寸法)よりも広くなる位置となっている。しかし、複数の指31の間隔は、ワークWの幅(開閉方向の寸法)よりも狭い位置となっていてもよい。この構成によれば、ハンド3が把持位置まで移動する際に、指31がワークWに接触する可能性が高くなると共に、指31が対象外のワークWに接触することが防止される。
また、ロボットアーム2の力制御は、アドミッタンス制御に限定されない。例えば、力制御は、目標値と力覚センサ41によって検出された押付力との偏差を入力として、ロボットアーム2の動作指令値を出力するPI制御であってもよい。
本明細書で開示する要素の機能は、開示された機能を実行するよう構成またはプログラムされた汎用プロセッサ、専用プロセッサ、集積回路、ASIC(Application Specific Integrated Circuits)、従来の回路、および/または、それらの組み合わせ、を含む回路または処理回路を使用して実行できる。プロセッサは、トランジスタやその他の回路を含むため、処理回路または回路と見なされる。本開示において、回路、ユニット、または手段は、列挙された機能を実行するハードウェアであるか、または、列挙された機能を実行するようにプログラムされたハードウェアである。ハードウェアは、本明細書に開示されているハードウェアであってもよいし、あるいは、列挙された機能を実行するようにプログラムまたは構成されているその他の既知のハードウェアであってもよい。ハードウェアが回路の一種と考えられるプロセッサである場合、回路、手段、またはユニットはハードウェアとソフトウェアの組み合わせであり、ソフトウェアはハードウェアおよび/またはプロセッサの構成に使用される。
100 ロボットシステム
1 ロボット
2 ロボットアーム(アーム)
3 ハンド
31 指
41 力覚センサ(センサ)
5 ロボット制御装置(コンピュータ)
54 ロボット制御プログラム
55 移動制御部
56 開閉制御部
W ワーク

Claims (10)

  1. ハンドが設けられたアームを移動させる移動制御部と、
    前記ハンドに設けられた複数の指を所定の開閉方向へ開閉させる開閉制御部とを備え、
    前記移動制御部は、前記指を前記開閉方向と交差する押付方向へワークに接触させる接触動作を前記アームに実行させ、
    前記開閉制御部は、前記接触動作の後に前記指に開動作を実行させ、
    前記移動制御部は、前記開動作によって前記指がワークに対して非接触となった後に、複数の前記指の間にワークが配置される所定の把持位置まで前記ハンドを前記押付方向へ移動させる接近動作を前記アームに実行させ、
    前記開閉制御部は、前記ハンドが前記把持位置に位置する状態において前記指に閉動作を実行させることによって前記指にワークを把持させるロボット制御装置。
  2. 請求項1に記載のロボット制御装置において、
    前記移動制御部は、前記指の前記開動作中に、ワークへの前記指の接触が維持されるように前記アームの力制御を実行するロボット制御装置。
  3. 請求項2に記載のロボット制御装置において、
    前記移動制御部は、前記力制御において、ワークへの前記指の前記押付方向への押付力が所定の目標値となるように前記アームを制御するロボット制御装置。
  4. 請求項3に記載のロボット制御装置において、
    前記開閉制御部は、前記指の前記開動作において、ワークへの前記指の押付力に基づいて前記指がワークに接触しないようになったと判定するロボット制御装置。
  5. 請求項1乃至4の何れか1つに記載のロボット制御装置において、
    前記開閉制御部は、前記指の前記開動作において、複数の前記指のうちワークに接触していない指を停止させる一方、複数の前記指のうちワークに接触した指を開動作させるロボット制御装置。
  6. 開閉可能な複数の指が設けられたハンドと、
    前記ハンドが設けられたアームと、
    請求項1乃至5の何れか1つに記載のロボット制御装置とを備えるロボットシステム。
  7. 請求項6に記載のロボットシステムにおいて、
    前記ハンドは、複数の前記指を独立に開閉させる複数の駆動源を有し、
    前記開閉制御部は、複数の前記駆動源を独立に制御するロボットシステム。
  8. 請求項6又は7に記載のロボットシステムにおいて、
    ワークへの前記指の押付力を検出するセンサをさらに備えるロボットシステム。
  9. 請求項8に記載のロボットシステムにおいて、
    前記センサは、複数の前記指ごとに設けられているロボットシステム。
  10. ハンドに設けられ、所定の開閉方向へ開閉可能な複数の指のうち少なくとも1つの指を前記開閉方向と交差する押付方向へワークに接触させる接触動作を前記ハンドが設けられたアームに実行させる機能と、
    前記接触動作の後に前記指に開動作を実行させる機能と、
    前記開動作によって前記指がワークに対して非接触となった後に、複数の前記指の間にワークが配置される所定の把持位置まで前記ハンドを前記押付方向へ移動させる接近動作を前記アームに実行させる機能と、
    前記ハンドが前記把持位置に位置する状態において前記指に閉動作を実行させることによって前記指にワークを把持させる機能とをコンピュータに実現させるロボット制御プログラム。
JP2021210293A 2021-12-24 2021-12-24 ロボット制御装置、ロボットシステム、ロボット制御プログラム Pending JP2023094786A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021210293A JP2023094786A (ja) 2021-12-24 2021-12-24 ロボット制御装置、ロボットシステム、ロボット制御プログラム
PCT/JP2022/046675 WO2023120476A1 (ja) 2021-12-24 2022-12-19 ロボット制御装置、ロボットシステム、ロボット制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021210293A JP2023094786A (ja) 2021-12-24 2021-12-24 ロボット制御装置、ロボットシステム、ロボット制御プログラム

Publications (1)

Publication Number Publication Date
JP2023094786A true JP2023094786A (ja) 2023-07-06

Family

ID=86902448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021210293A Pending JP2023094786A (ja) 2021-12-24 2021-12-24 ロボット制御装置、ロボットシステム、ロボット制御プログラム

Country Status (2)

Country Link
JP (1) JP2023094786A (ja)
WO (1) WO2023120476A1 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0798314B2 (ja) * 1988-06-29 1995-10-25 ソニー・テクトロニクス株式会社 ロボット・ハンドの制御方法
JP2019038079A (ja) * 2017-08-25 2019-03-14 Thk株式会社 把持システム

Also Published As

Publication number Publication date
WO2023120476A1 (ja) 2023-06-29

Similar Documents

Publication Publication Date Title
US10456917B2 (en) Robot system including a plurality of robots, robot controller and robot control method
JP6454960B2 (ja) ロボット、ロボットシステム、ロボット制御装置
US10532461B2 (en) Robot and robot system
JP6450960B2 (ja) ロボット、ロボットシステム及び教示方法
US20200368862A1 (en) Connecting device and connecting method
JP2009255191A (ja) ロボットマニピュレータ
JP6900290B2 (ja) ロボットシステム
JP6746990B2 (ja) ロボット制御装置及びロボットシステム
Koyama et al. Integrated control of a multi-fingered hand and arm using proximity sensors on the fingertips
US11833687B2 (en) Robot apparatus, control method for the robot apparatus, assembly method using the robot apparatus, and recording medium
US11230010B2 (en) Robot system and coupling method
CN111618845B (zh) 机器人***
JP2020138292A (ja) ロボットシステムおよび制御方法
CN116940451A (zh) 机器人***以及工件供给方法
CN114670189A (zh) 存储介质、以及生成机器人的控制程序的方法及***
JP2015150673A (ja) 制御装置、ロボット、ロボットシステムおよび制御方法
WO2023120476A1 (ja) ロボット制御装置、ロボットシステム、ロボット制御プログラム
JP2017127932A (ja) ロボット装置、ロボット制御方法、部品の製造方法、プログラム及び記録媒体
JP2016209936A (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP6314431B2 (ja) ロボットシステム、制御装置、ロボット、及び駆動方法
WO2024009408A1 (ja) ロボットシステム、ロボット制御方法及びロボット制御プログラム
WO2022244437A1 (ja) ロボットコントローラ、制御方法および制御プログラム
JP2013129005A (ja) 把持ロボット装置、把持動作制御方法、および、把持動作制御装置
Kim et al. Vision-based aided-grasping in teleoperation with multiple unknown objects
JP2019010700A (ja) ロボット、ロボットシステム、及びそれらの制御方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20230331