IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 京セラ株式会社の特許一覧

特開2024-96955処理装置、ロボット制御システム、プログラム及び端末装置
<>
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図1
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図2
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図3
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図4
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図5
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図6
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図7
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図8
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図9
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図10
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図11
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図12
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図13
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図14
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図15
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図16
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図17
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図18
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図19
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図20
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図21
  • 特開-処理装置、ロボット制御システム、プログラム及び端末装置 図22
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024096955
(43)【公開日】2024-07-17
(54)【発明の名称】処理装置、ロボット制御システム、プログラム及び端末装置
(51)【国際特許分類】
   B25J 13/00 20060101AFI20240709BHJP
【FI】
B25J13/00 Z
【審査請求】有
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2024067378
(22)【出願日】2024-04-18
(62)【分割の表示】P 2023580885の分割
【原出願日】2023-12-28
(31)【優先権主張番号】P 2022212429
(32)【優先日】2022-12-28
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000006633
【氏名又は名称】京セラ株式会社
(74)【代理人】
【識別番号】100088672
【弁理士】
【氏名又は名称】吉竹 英俊
(74)【代理人】
【識別番号】100088845
【弁理士】
【氏名又は名称】有田 貴弘
(74)【代理人】
【識別番号】100156177
【弁理士】
【氏名又は名称】池見 智治
(74)【代理人】
【識別番号】100130166
【弁理士】
【氏名又は名称】田中 宏明
(72)【発明者】
【氏名】小路 春樹
(57)【要約】      (修正有)
【課題】保持対象物を吸着保持可能なロボット制御システムを提供する。
【解決手段】処理装置は、保持対象物を吸着保持可能であり弾性を有する吸着部を有するロボットを制御する処理装置である。処理装置は、ロボットを制御する制御部を備える。制御部は、吸着部を保持対象物の吸着対象面に対して吸着対象面の法線方向と異なる方向から保持対象物に接触させて、吸着部に保持対象物を吸着させるよう制御可能である。
【選択図】図1
【特許請求の範囲】
【請求項1】
保持対象物を吸着保持可能であり弾性を有する吸着部を有するロボットを制御する処理装置であって、
前記ロボットを制御する制御部を備え、
前記制御部は、前記吸着部を前記保持対象物の吸着対象面に対して前記吸着対象面の法線方向と異なる方向から前記保持対象物に接触させて、前記吸着部に前記保持対象物を吸着させるよう制御可能である、処理装置。
【請求項2】
請求項1に記載の処理装置であって、
前記制御部は、
前記保持対象物の吸着対象面の法線方向を特定する特定部と、
前記特定部で特定された前記法線方向と、前記ロボットの前記保持対象物に対するアプローチの基準方向とに基づいて、前記吸着部が前記保持対象物に接触するアプローチ方向を設定する設定部と
を有する、処理装置。
【請求項3】
請求項2に記載の処理装置であって、
前記設定部は、前記法線方向から調整角度の分前記基準方向側へ移動した、前記調整角度に基づく方向を、前記アプローチ方向に設定する、処理装置。
【請求項4】
請求項3に記載の処理装置であって、
前記設定部は、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定し、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできると判定したとき、前記法線方向を前記アプローチ方向に設定し、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできないと判定したとき、前記調整角度に基づく前記方向を前記アプローチ方向に設定する、処理装置。
【請求項5】
請求項3に記載の処理装置であって、
前記設定部は、前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定せずに、前記調整角度に基づく前記方向を前記アプローチ方向に設定する、処理装置。
【請求項6】
請求項2から請求項5のいずれか一つに記載の処理装置であって、
前記設定部は、前記ロボットの限界姿勢に基づき、前記アプローチ方向を設定する、処理装置。
【請求項7】
請求項3に記載の処理装置であって、
前記設定部は、互いに異なる方法で前記アプローチ方向を設定する第1設定処理及び第2設定処理を実行可能であり、
前記設定部は、前記第1設定処理において、前記法線方向を前記アプローチ方向に設定し、
前記設定部は、前記第2設定処理において、前記調整角度に基づく前記方向を前記アプローチ方向に設定し、
前記設定部は、前記基準方向に対する前記法線方向の角度としての法線角度に応じて、前記第1設定処理及び前記第2設定処理のどちらを実行するかを決定する、処理装置。
【請求項8】
請求項7に記載の処理装置であって、
前記設定部は、前記第1設定処理において、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定し、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできると判定したとき、前記法線方向を前記アプローチ方向に設定し、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできないと判定したとき、前記調整角度に基づく前記方向を前記アプローチ方向に設定する、処理装置。
【請求項9】
請求項7に記載の処理装置であって、
前記設定部は、前記第1設定処理において、
前記法線角度が、前記ロボットが取り得る姿勢に基づく上限値以下であるか否かを判定し、
前記法線角度が前記上限値以下である場合、前記法線方向を前記アプローチ方向に設定し、
前記法線角度が前記上限値よりも大きい場合、前記基準方向から前記上限値の分前記法線方向に近い、前記上限値に基づく方向を、前記アプローチ方向に設定する、処理装置。
【請求項10】
請求項9に記載の処理装置であって、
前記設定部は、前記第1設定処理において、
前記法線角度が前記上限値以下である場合、前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定し、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできると判定したとき、前記法線方向を前記アプローチ方向に設定し、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできないと判定したとき、前記上限値に基づく前記方向を前記アプローチ方向に設定する、処理装置。
【請求項11】
請求項9または請求項10に記載の処理装置であって、
前記設定部は、前記第1設定処理において、
前記法線角度が前記上限値よりも大きい場合、前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできるか否かを判定し、
前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできると判定したとき、前記上限値に基づく前記方向を前記アプローチ方向に設定し、
前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできないと判定したとき、前記調整角度に基づく前記方向を前記アプローチ方向に設定する、処理装置。
【請求項12】
請求項2に記載の処理装置であって、
前記設定部は、
前記基準方向に対する前記法線方向の角度としての法線角度が、前記ロボットが取り得る姿勢に基づく上限値以下であるか否かを判定し、
前記法線角度が前記上限値以下である場合、前記法線方向を前記アプローチ方向に設定し、
前記法線角度が前記上限値よりも大きい場合、前記基準方向から前記上限値の分前記法線方向に近い、前記上限値に基づく方向を、前記アプローチ方向に設定する、処理装置。
【請求項13】
請求項12に記載の処理装置であって、
前記設定部は、
前記法線角度が前記上限値以下である場合、前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定し、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできると判定したとき、前記法線方向を前記アプローチ方向に設定し、
前記ロボットが前記法線方向から前記吸着対象面にアプローチできないと判定したとき、前記法線方向から調整角度の分前記基準方向側へ移動した、前記調整角度に基づく方向を、前記アプローチ方向に設定する、処理装置。
【請求項14】
請求項12または請求項13に記載の処理装置であって、
前記設定部は、
前記法線角度が前記上限値よりも大きい場合、前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできるか否かを判定し、
前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできると判定したとき、前記上限値に基づく前記方向を前記アプローチ方向に設定し、
前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできないと判定したとき、前記法線方向から調整角度の分前記基準方向側へ移動した、前記調整角度に基づく方向を、前記アプローチ方向に設定する、処理装置。
【請求項15】
請求項3から請求項11、請求項13及び請求項14のいずれか一つに記載の処理装置であって、
前記設定部は、前記法線角度に応じて前記調整角度を変更する、処理装置。
【請求項16】
請求項3から請求項11及び請求項13から請求項15のいずれか一つに記載の処理装置であって、
前記設定部は、前記ロボットが有する、前記保持対象物を吸着する吸着部に関する吸着部情報と、前記保持対象物に関する対象物情報とに基づいて、前記調整角度を設定する、処理装置。
【請求項17】
請求項1から請求項16のいずれか一つに記載の処理装置と、
前記処理装置と接続されたロボットと
を備える、ロボット制御システム。
【請求項18】
コンピュータ装置を、請求項1から請求項16のいずれか一つに記載の処理装置として機能させるためのプログラム。
【請求項19】
保持対象物を移動可能に吸着保持する吸着部を有するロボットを制御する処理装置であって、
前記ロボットを制御する制御部を備え、
前記制御部は、前記保持対象物の吸着対象面に対して、前記吸着部の第1端側が前記第1端側に対向する第2端側よりも縮んだ状態で、前記吸着部が前記吸着対象面に接触するように前記ロボットを制御する、処理装置。
【請求項20】
表示部と、
保持対象物の吸着対象面の法線方向とは異なる方向から前記保持対象物を吸着保持可能なロボットの当該保持対象物へのアプローチ方向を取得し、前記アプローチ方向を認識可能に前記表示部に表示させる制御部と
を備える、端末装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ロボットが保持対象物を吸着保持する技術に関する。
【背景技術】
【0002】
特許文献1には、保持対象物を保持するロボットに関する技術が記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2002-331480号公報
【発明の概要】
【0004】
処理装置、ロボット制御システム、プログラム及び端末装置が開示される。一の実施の形態では、処理装置は、保持対象物を吸着保持可能であり弾性を有する吸着部を有するロボットを制御する処理装置である。処理装置は、ロボットを制御する制御部を備える。制御部は、吸着部を保持対象物の吸着対象面に対して吸着対象面の法線方向と異なる方向から保持対象物に接触させて、吸着部に保持対象物を吸着させるよう制御可能である。
【0005】
また、一の実施の形態では、ロボット制御システムは、上記の処理装置と、処理装置と接続されたロボットとを備える。
【0006】
また、一の実施の形態では、プログラムは、コンピュータ装置に、上記の処理装置として機能させるためのプログラムである。
【0007】
また、一の実施の形態では、処理装置は、保持対象物を移動可能に吸着保持する吸着部を有するロボットを制御する処理装置である。処理装置は、ロボットを制御する制御部を備える。制御部は、保持対象物の吸着対象面に対して、吸着部の第1端側が第1端側に対向する第2端側よりも縮んだ状態で、吸着部が吸着対象面に接触するように前記ロボットを制御する。
【0008】
また、一の実施の形態では、端末装置は、表示部と制御部とを備える。制御部は、保持対象物の吸着対象面の法線方向とは異なる方向から前記保持対象物を吸着保持可能なロボットの当該保持対象物へのアプローチ方向を取得し、前記アプローチ方向を認識可能に前記表示部に表示させる。
【図面の簡単な説明】
【0009】
図1】処理装置の一例を示す概略図である。
図2】ロボットとその周辺の様子の一例を示す概略図である。
図3】ロボットが設定アプローチ方向からアプローチする様子の一例を示す概略図である。
図4】制御部の動作の一例を示すフローチャートである。
図5】基準方向及び法線方向の一例を示す概略図である。
図6】基準方向の設定方法の一例を説明するための概略図である。
図7】調整角度(第1緩和方向)に基づく方向の一例を示す概略図である。
図8】ロボットが調整角度に基づく方向からアプローチする様子の一例を示す概略図である。
図9】ロボットが対象物を吸着している様子の一例を示す概略図である。
図10】制御部の動作の一例を示すフローチャートである。
図11】ロボットが法線方向からアプローチする様子の一例を示す概略図である。
図12】制御部の動作の一例を示すフローチャートである。
図13】制御部の動作の一例を示すフローチャートである。
図14】上限値に基づく方向(第2緩和方向)の一例を示す概略図である。
図15】ロボットが上限値に基づく方向からアプローチする様子の一例を示す概略図である。
図16】制御部の動作の一例を示すフローチャートである。
図17】制御部の動作の一例を示すフローチャートである。
図18】調整角度に基づく方向(第1緩和方向)と上限値に基づく方向(第2緩和方向)の一例を示す概略図である。
図19】テーブル情報の一例を示す概略図である。
図20】ロボット制御システムの構成の一例を示す概略図である。
図21】端末装置の表示例を示す概略図である。
図22】端末装置の表示例を示す概略図である。
【発明を実施するための形態】
【0010】
図1は処理装置1の構成の一例を示す概略図である。処理装置1は、保持対象物50を吸着保持するロボット10が保持対象物50にアプローチするアプローチ方向を設定することが可能である。図2は、ロボット10とその周辺の様子の一例を示す概略図である。
【0011】
ロボット10は、例えば、保持対象物50(単に対象物50ともいう)を移動元領域から移動先領域まで移動する作業を行う。ロボット10は、処理装置1が設定したアプローチ方向から移動元領域内の保持対象物50にアプローチして保持対象物50を吸着保持する。そして、保持した対象物50を移動元領域から移動先領域まで移動する。例えば、ロボット10は、当該ロボット10の姿勢を変化させることによって、保持した対象物50を移動元領域から移動先領域まで移動する。対象物50は例えばワークピースとも呼ばれる。
【0012】
移動元領域及び移動先領域は例えば容器である。移動元領域としての容器17(移動元容器17ともいう)内には複数の対象物50が存在する。移動元容器17内では、複数の対象物50が例えばバラ積みされている。ロボット10は、例えば、移動元容器17内の対象物50を一つずつ吸着保持して、移動先領域としての容器18(移動先容器18ともいう)に移動する。移動元容器17及び移動先容器18は、例えば、作業台15及び作業台16の上にそれぞれ置かれている。作業台15は作業開始台15ともいえ、作業台16は作業目標台16ともいえる。ロボット10は、作業開始台15上の対象物50を作業目標台16まで移動するともいえる。
【0013】
ロボット10は、例えば、アーム11と、当該アーム11に接続されたエンドエフェクタ12とを備える。アーム11は複数の関節を備える。アーム11の位置、言い換えればアーム11の姿勢は、複数の関節の回転量で決定される。
【0014】
エンドエフェクタ12は対象物50を吸着保持することが可能である。エンドエフェクタ12は、例えば、細長い吸着ノズル120と、吸着ノズル120の先端に取り付けられた吸着部121とを備える。エンドエフェクタ12は、対象物50を吸着保持する吸着保持部ともいえる。
【0015】
吸着部121は、例えば、合成ゴム等の弾性部材で構成され、例えば吸着パッドとも呼ばれる。吸着部121は、中空状であって、吸着開口121aを有する。エンドエフェクタ12が対象物50を吸着保持する場合、吸着部121での吸着開口121aの開口縁部が対象物50に当接し、吸着開口121aが対象物50で塞がれる。そして、ロボット10が、吸着ノズル120を通じて吸着部121内を減圧することによって、吸着部121の開口縁部が対象物50に密着する。これにより、対象物50が吸着部121に吸着される。吸着部121は、対象物50を吸着するとき、吸着部121内の減圧により弾性変形を行う。吸着部121は、平形であってもよいし、ベロウ形であってもよい。吸着部121は真空パッドとも呼ばれる。
【0016】
ロボット10は、アーム11を動かすことによって、処理装置1で設定されたアプローチ方向(設定アプローチ方向)から移動元容器17内の対象物50にアプローチして対象物50をエンドエフェクタ12で吸着保持する。つまり、ロボット10は、アーム11の姿勢を変化させることによって、設定アプローチ方向にエンドエフェクタ12を移動させて対象物50にアプローチし、その後、対象物50をエンドエフェクタ12で吸着保持する。そして、ロボット10は、エンドエフェクタ12が対象物50を保持した状態でアーム11を動かすことによって、対象物50を移動先容器18まで移動する。例えば、ロボット10は、アーム11の姿勢を変化させることによって、対象物50を移動先容器18まで移動する。そして、エンドエフェクタ12が対象物50を解放すると(つまり、対象物50に対する吸着を解除すると)、対象物50が移動先容器18内に配置される。この作業をロボット10は繰り返し行う。なお、ロボット10が行う作業はこれに限られない。
【0017】
ロボット10は、例えばカメラ13を備える。カメラ13は、例えば3次元カメラである。図2示されるように、カメラ13は、例えば、エンドエフェクタ12に取り付けられている。よって、カメラ13の撮影範囲は、エンドエフェクタ12の姿勢に応じて変化する。エンドエフェクタ12の姿勢はアーム11の姿勢に応じて変化することから、カメラ13の撮影範囲はアーム11の姿勢に応じて変化する。
【0018】
エンドエフェクタ12が容器17内の対象物50を保持する場合、カメラ13は、容器17の開口17a側から(言い換えれば容器17の上方から)容器17を撮影する。この場合、カメラ13の撮影範囲には、容器17内の複数の対象物50が含まれる。一方で、エンドエフェクタ12が対象物50を解放して容器18内に対象物50を配置する場合、カメラ13は、容器18の開口18a側から(言い換えれば容器18の上方から)容器18を撮影する。
【0019】
カメラ13は、撮影範囲を撮影して、例えば、2次元のカラー画像と、距離画像とを生成する。エンドエフェクタ12が容器17内の対象物50を保持する場合、カラー画像には、容器17と、容器17内の複数の対象物50とが写る。カメラ13は、カラー画像及び距離画像を含むカメラ画像を生成する。距離画像は、例えば、ステレオ方式で取得されてもよいし、ToF(Time of Flight)方式で取得されてもよいし、他の方式で取得されてもよい。
【0020】
処理装置1は、例えばコンピュータ装置の一種である。処理装置1は、例えば、吸着部121が対象物50に接触するアプローチ方向を設定するだけではなく、ロボット10を制御することが可能である。処理装置1は、ロボット10を制御するロボット制御装置としても機能する。処理装置1は、例えば、設定アプローチ方向からロボット10が対象物50にアプローチするようにロボット10を制御することが可能である。なお、処理装置1とは別に、ロボット10を制御するロボット制御装置が設けられてもよい。この場合、処理装置1は、設定アプローチ方向をロボット制御装置に通知する。ロボット制御装置は、通知された設定アプローチ方向からロボット10が対象物50にアプローチするようにロボット10を制御する。
【0021】
図1に示されるように、処理装置1は、例えば、制御部2と、記憶部3と、インタフェース4と、入力部5とを備える。処理装置1は、例えば処理回路ともいえる。
【0022】
インタフェース4は、ロボット10と通信することが可能である。制御部2は、インタフェース4を通じてロボット10を制御することができる。制御部2は、カメラ13で生成されるカメラ画像を、インタフェース4を通じて、ロボット10から取得することができる。インタフェース4は、例えば、インタフェース回路、通信部あるいは通信回路ともいえる。インタフェース4は、ロボット10と有線通信を行ってもよいし、無線通信を行ってもよい。なお、処理装置1とは別に、ロボット10を制御するロボット制御装置が設けられる場合、処理装置1はインタフェース4を備えなくてもよい。以後、単にカメラ画像と言えば、カメラ13で生成されるカメラ画像を意味する。
【0023】
制御部2は、処理装置1の他の構成要素を制御することによって、処理装置1の動作を統括的に管理することが可能である。制御部2は、例えば制御回路ともいえる。制御部2は、以下にさらに詳細に述べられるように、種々の機能を実行するための制御及び処理能力を提供するために、少なくとも1つのプロセッサを含む。
【0024】
種々の実施形態によれば、少なくとも1つのプロセッサは、単一の集積回路(IC)として、又は複数の通信可能に接続された集積回路IC及び/又はディスクリート回路(discrete circuits)として実行されてもよい。少なくとも1つのプロセッサは、種々の既知の技術に従って実行されることが可能である。
【0025】
1つの実施形態において、プロセッサは、例えば、関連するメモリに記憶された指示を実行することによって1以上のデータ計算手続又は処理を実行するように構成された1以上の回路又はユニットを含む。他の実施形態において、プロセッサは、1以上のデータ計算手続き又は処理を実行するように構成されたファームウェア(例えば、ディスクリートロジックコンポーネント)であってもよい。
【0026】
種々の実施形態によれば、プロセッサは、1以上のプロセッサ、コントローラ、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路(ASIC)、デジタル信号処理装置、プログラマブルロジックデバイス、フィールドプログラマブルゲートアレイ、又はこれらのデバイス若しくは構成の任意の組み合わせ、又は他の既知のデバイス及び構成の組み合わせを含み、以下に説明される機能を実行してもよい。
【0027】
制御部2は、例えば、プロセッサとしてのCPU(Central Processing Unit)を備えてもよい。記憶部3は、ROM(Read Only Memory)及びRAM(Random Access Memory)などの、制御部2のCPUが読み取り可能な非一時的な記録媒体を含んでもよい。記憶部3には、例えば、処理装置1を制御するためのプログラム30が記憶されている。制御部2の各種機能は、例えば、制御部2のCPUが記憶部3内のプログラム30を実行することによって実現される。
【0028】
なお、制御部2の構成は上記の例に限られない。例えば、制御部2は、複数のCPUを備えてもよい。また制御部2は、少なくとも一つのDSP(Digital Signal Processor)を備えてもよい。また、制御部2の全ての機能あるいは制御部2の一部の機能は、その機能の実現にソフトウェアが不要なハードウェア回路によって実現されてもよい。また、記憶部3は、ROM及びRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えてもよい。記憶部3は、例えば、小型のハードディスクドライブ及びSSD(Solid State Drive)などを備えてもよい。
【0029】
入力部5は、ユーザからの各種入力を受け付けることが可能である。入力部5は、例えば、マウス及びキーボードを備えてもよい。また、入力部5は、ユーザのタッチ操作を受け付けるタッチセンサを備えてもよい。処理装置1は、液晶ディスプレイ等の表示部を備えてもよい。この場合、当該表示部とタッチセンサとで、表示機能及びタッチ検出機能を有するタッチパネルディスプレイが構成されてもよい。また、入力部5は、ユーザの音声入力を受け付けるマイクを備えてもよい。制御部2は、入力部5からの出力信号に基づいて、入力部5が受け付けたユーザ入力の内容を認識する。
【0030】
制御部2は、アプローチ方向を設定するアプローチ方向設定処理を実行することが可能である。制御部2は、例えば、特定部20及び設定部21を備える。特定部20及び設定部21は、例えば、制御部2のCPUが記憶部3内のプログラム30を実行することによって、制御部2に形成される機能ブロックである。なお、特定部20の全ての機能あるいは特定部20の一部の機能は、その機能の実現にソフトウェアが不要なハードウェア回路によって実現されてもよい。設定部21についても同様である。
【0031】
特定部20は、対象物50の吸着対象面の法線方向を特定する。設定部21は、特定部20で特定された法線方向と、ロボット10の対象物50に対するアプローチの基準方向とに基づいて、アプローチ方向を設定する。特定部20及び設定部21の動作例の詳細については後述する。
【0032】
<ロボットが対象物にアプローチする方法の一例>
図3は、ロボット10が容器17内の対象物50にアプローチする様子の一例を示す概略図である。図3では、容器17内の様子が分かるように容器17の断面構造が示されている。容器17が示される後述の各図についても同様である。
【0033】
ロボット10は、容器17内の対象物50を保持する場合、まず、エンドエフェクタ12の吸着部121が対象物50の近くにくるようにアーム11を動かす。そして、ロボット10は、処理装置1で設定された設定アプローチ方向100から対象物50にアプローチして対象物50をエンドエフェクタ12で吸着保持する。
【0034】
ロボット10は、対象物50にアプローチする場合、例えば、エンドエフェクタ12の移動方向が吸着ノズル120の長手方向と一致するように、エンドエフェクタ12を対象物50に近づけていく。
【0035】
ここで、吸着部121の吸着開口121aを含む平面を吸着開口面と呼ぶ。吸着ノズル120の長手方向は、例えば、吸着開口面に対して垂直を成す。この場合、ロボット10は、対象物50にアプローチする場合、例えば、エンドエフェクタ12の移動方向が吸着開口面と垂直を成すように、エンドエフェクタ12を対象物50に近づけていき、吸着対象面に接触させていく。
【0036】
ロボット10は、設定アプローチ方向100から対象物50にアプローチする場合、エンドエフェクタ12をアプローチ方向100に移動させてエンドエフェクタ12を対象物50に近づけて接触させていく。このとき、ロボット10は、図3に示されるように、例えば、吸着部121の吸着開口121aを対象物50に向けつつ、吸着ノズル120の長手方向がアプローチ方向100と一致するように、エンドエフェクタ12をアプローチ方向100に移動させて対象物50に近づけて接触させていく。ロボット10は、対象物50にアプローチして吸着部121が対象物50に密着すると、吸着部121内を減圧して対象物50を吸着部121で吸着する。本例では、吸着ノズル120の長手方向は、吸着開口面に対して垂直を成すことから、ロボット10は、吸着開口面がアプローチ方向100と垂直を成すようにエンドエフェクタ12を対象物50に接触するよう近づけていくことによって、対象物50にアプローチするともいえる。
【0037】
<アプローチ方向設定処理の一例>
図4は制御部2が実行するアプローチ方向設定処理の一例を示すフローチャートである。制御部2は、アプローチ方向設定処理を実行する前に、容器17内の複数の対象物50から、アプローチする対象となる対象物50(アプローチ対象物50ともいう)を決定する。制御部2は、例えばカメラ画像に基づいて、アプローチ対象物50を決定する。制御部2がアプローチ対象物50を決定する場合には、エンドエフェクタ12は容器17の上方に位置し、カメラ13は、容器17と、容器17内の複数の対象物50とを撮影する。
【0038】
本例では、対象物50の表面のある特定の領域が、ロボット10が吸着保持を行う吸着対象面となる。例えば、対象物50の表面のうち、吸着部121が吸着しやすい領域が、吸着対象面となる。あるいは、例えば、対象物50の表面のうち、吸着部121が吸着しても対象物50が損傷しにくい領域が、吸着対象面となる。ロボット10は、対象物50を吸着する場合、対象物50の吸着対象面に対してアプローチして吸着対象面を吸着する。吸着対象面は、平面であってもよいし、曲面であってもよい。また、対象物50の表面を構成する複数の面の一部の複数の面のそれぞれが吸着対象面とされてもよい。
【0039】
制御部2は、例えば、カメラ画像に基づいて、容器17内の複数の対象物50のうち、吸着対象面での視認領域が最も大きい対象物50を特定する。そして、制御部2は、特定した対象物50をアプローチ対象物50とする。吸着対象面での視認領域とは、当該吸着対象面を容器17の上方から見た場合に視認できる領域である。吸着対象面での視認領域とは、当該吸着対象面でのカメラ13に写る領域であるともいえる。なお、アプローチ対象物50の決定方法はこれに限られない。
【0040】
制御部2は、アプローチ対象物50を決定すると、決定したアプローチ対象物50について図4に示されるアプローチ方向設定処理を実行する。アプローチ方向設定処理でアプローチ方向が設定されると、制御部2は、ロボット10がアプローチ対象物50に対する設定アプローチ方向からのアプローチを開始する位置(アプローチ開始位置)にくるようにロボット10を制御する。アプローチ開始位置は、ロボット10が容器17と干渉しない位置に設定される。そして、制御部2は、アプローチ開始位置にいるロボット10が、設定アプローチ方向からアプローチ対象物50にアプローチしてアプローチ対象物50を吸着するように、ロボット10を制御する。
【0041】
アプローチ方向設定処理では、まずステップs1において、制御部2の特定部20は、アプローチ対象物50の吸着対象面(アプローチ対象面ともいう)の位置及び姿勢をカメラ画像に基づいて特定する。これは、アプローチ対象物50の認識であるともいえる。吸着対象面の姿勢は吸着対象面の向きともいえる。特定部20は、例えば、カメラ画像に含まれる距離画像に基づいて、アプローチ対象面を表す点群データを生成する。そして、制御部2は、生成した点群データに基づいて、アプローチ対象面の位置及び姿勢を特定する。
【0042】
ステップs1の後、特定部20は、特定したアプローチ対象面の位置及び姿勢に基づいて、アプローチ対象面の法線方向を特定する。例えば、特定部20は、アプローチ対象面の代表点を通る、アプローチ対象面の法線方向を特定する。代表点は、例えば、アプローチ対象面の中心であってもよい。
【0043】
図5は、特定部20で特定される、アプローチ対象物50のアプローチ対象面50a(吸着対象面50aともいう)の法線方向110の一例を示す概略図である。図5の例のように、アプローチ対象面50aが平面の場合には、アプローチ対象面50aに垂直であって、アプローチ対象面50aの代表点50aaを通る法線方向110が特定される。一方で、アプローチ対象面50aが曲面の場合には、当該曲面に対して代表点50aaで接する接平面に垂直であって、代表点50aaを通る法線方向110が特定される。
【0044】
ステップs2の後、設定部21は、ステップs2で特定された法線方向110と、ロボット10のアプローチ対象物50に対するアプローチの基準方向112とに基づいて、アプローチ方向100を設定する。
【0045】
図6は基準方向112の設定方法の一例を説明するための概略図である。基準方向112は、例えば、ロボット10がアプローチ対象物50にアプローチしやすい方向として設定される。本例では、対象物50は、上面が開口した容器17内に配置されている。したがって、図6に示されるように、ロボット10は、容器17の真上から対象物50にアプローチする場合には、容器17内の各対象物50に対してアプローチしやすい。言い換えれば、ロボット10は、容器17の真上から対象物50にアプローチする場合には、容器17内の複数の対象物50をまんべんなくアプローチすることができる。ロボット10が容器17の真上から容器17内に近づく場合には、吸着部121は、容器17内の各場所に対して到達しやすいともいえる。
【0046】
そこで、基準方向112は、例えば、容器17の開口17aの向きに基づいて設定される。例えば、基準方向112は、図5に示されるように、容器17の開口17aを含む平面17aa(開口平面17aaともいう)に対して垂直な方向に設定されてもよい。例えば、基準方向112は、開口平面17aaに垂直な方向であって、アプローチ対象面50aの代表点50aaを通る方向に設定されてもよい。本例では、容器17の壁170の高さ方向は、開口平面17aaに対して垂直な方向であることから、基準方向112は、壁170の高さ方向に沿って設定されるともいえる。なお、基準方向112は、開口平面17aaに垂直な方向に対して多少傾いていてもよい。この場合、開口平面17aaに垂直な方向に対する基準方向112の傾き角度は、例えば、0度よりも大きく10度以下であってもよい。また、基準方向112は、例えばロボット10と容器17との配置関係に基づいて、ロボット10が容器17にアプローチする際に、最もロボット10の各関節の自由度が高い方向としてもよい。また、基準方向112は、例えばロボット10から容器17内を最も見渡せる位置とアプローチ対象物50の代表点を結んだ線分で表されてもよい。この時、ロボット10から容器17内を最も見渡せる位置とは、例えば、開口平面17aaの中央から上方に位置している。なお、上記の例では、基準方向112をアプローチしやすい方向として設定したが、単純に容器17の開口面に垂直な方向を基準方向112として設定してもよい。また、基準方向112は、アプローチ対象物50ごとに変更されてもよい。
【0047】
基準方向112は、例えば、ロボット使用者またはロボット設定者などのユーザによって設定されてもよい。また、基準方向112の決め方は、例えば、ユーザによって設定されてもよい。ユーザは、例えば入力部5を通じて、基準方向112を示す基準方向情報を処理装置1に入力する。処理装置1に入力された基準方向情報は記憶部3に記憶される。設定部21は、記憶部3内の基準方向情報を示す基準方向112に基づいて、アプローチ方向100を設定する。
【0048】
ステップs2の後にアプローチ方向100が設定される場合、まずステップs3において、設定部21は、図7に示されるように、法線方向110から調整角度αの分基準方向112側に移動した、調整角度αに基づく方向113(第1緩和方向113ともいう)を求める。なお、本実施形態では、第1緩和方向113は、法線方向110から調整角度αの分基準方向112に近くなっている。基準方向112は、アプローチ方向100を設定する場合に、調整方向の基準として利用することができる。調整角度αは、後述するように、例えば、吸着対象面50aに対する吸着部121の吸着の成功率(吸着成功率ともいう)に基づいて設定される。なお、調整角度αは、例えば、少なくとも5度以上に設定されてもよいし、少なくとも10度以上に設定されてもよいし、少なくとも15度以上に設定されてもよいし、少なくとも20度以上に設定されてもよい。
【0049】
設定部21は、調整角度αに基づく方向113(言い換えれば第1緩和方向113)を求める場合、例えば、法線方向110及び基準方向112を含む特定平面を考える。そして、設定部21は、法線方向110の代表点50aa側の一端を回転の支点として、法線方向110を特定平面上で調整角度αだけ基準方向112側に回転させて得られる方向を第1緩和方向113とする。ここで、基準方向112に対する法線方向110の角度、つまり、基準方向112と法線方向110とが成す角度を法線角度βとする。第1緩和方向113は、法線方向110と成す角度がαであって、基準方向112と成す角度が(β-α)となる方向である。
【0050】
ステップs3の後、ステップs4において、設定部21は、ロボット10が第1緩和方向113からアプローチ対象面50aに実際にアプローチできるか否かを判定する。つまり、設定部21は、ロボット10がアプローチ開始位置から第1緩和方向113に沿ってアプローチ対象面50aに近づいてアプローチ対象面50aに実際に到達することができるか否かを判定する。
【0051】
ここで、ロボット10がある方向からアプローチしようとしたときに、ロボット10が容器17と干渉することがある。この場合には、ロボット10は、当該ある方向からアプローチ対象面50aに実際にアプローチできない。また、ロボット10には特異点があることから、ロボット10は、構造的に、エンドエフェクタ12の吸着部121の位置を自由に設定できるわけではない。そのため、ロボット10はある方向からアプローチ対象面50aに実際にアプローチできないことがある。
【0052】
設定部21は、例えばカメラ画像に基づいて、容器17の位置及び姿勢を特定し、その特定結果に基づいて、ロボット10が第1緩和方向113からアプローチ対象面50aにアプローチしようとしたときに、ロボット10が容器17と干渉するか否かを判定する。また、制御部2は、ロボット10が第1緩和方向113からアプローチ対象面50aにアプローチするために設定すべき吸着部121の各位置を特定し、特定した各位置に吸着部121の位置を実際に設定することができるかを、逆運動学方程式を用いて判定する。そして、設定部21は、特定した各位置に吸着部121の位置を実際に設定することができると判定し、かつロボット10が容器17と干渉しないと判定するとき、ロボット10が第1緩和方向113からアプローチ対象面50aに実際にアプローチすることができると判定する。
【0053】
ステップs4において、設定部21は、ロボット10が第1緩和方向113からアプローチ対象面50aにアプローチできると判定したとき、ステップs5において、第1緩和方向113をアプローチ方向100に設定する。これにより、アプローチ対象物50についてのアプローチ方向100が設定されてアプローチ方向設定処理が終了する。
【0054】
アプローチ方向設定処理でアプローチ方向100が設定されると、制御部2は、ロボット10が設定アプローチ方向100からアプローチ対象面50aにアプローチしてアプローチ対象面50aを吸着するようにロボット10を制御する。図8は、アプローチ方向100に設定された第1緩和方向113からロボット10がアプローチ対象面50aにアプローチする様子の一例を示す概略図である。
【0055】
図8の例のように、第1緩和方向113からロボット10がアプローチ対象面50aにアプローチして吸着部121が対象物50を吸着すると、図9に示されるように、対象物50の吸着対象面50aに対して、吸着部121の第1端121x側が、第1端121x側に対向する第2端121y側よりも縮んだ状態で吸着対象面50aに接触している。図9の例では、吸着部121が対象物50に近づいた場合、吸着部121の上側(図9の左側ともいえる)が下側(図9の右側ともいえる)よりも縮んだ状態で対象物50に密着することとなる。吸着部121の外形が例えば円錐台を成す場合、その円錐台の側面において、法線方向110に対してアプローチ方向100が傾いている側の第1部分121xが、当該第1部分121xとは反対側の第2部分121yよりも縮んだ状態で吸着部121は対象物50に密着するともいえる。また、吸着部121は、吸着開口面121aが対象物50の吸着対象面50aに対して正対しない状態で、対象物50に近づくことになる。言い換えれば、吸着部121は、吸着開口面121aが吸着対象面50aに斜めに対向しつつ、対象物50に近づくことになる。また、吸着部121が対象物50を吸着した後、対象物50の重力によって吸着部121の形状が対象物50への密着時と異なることがある。すなわち、吸着部121の形状が、吸着部121が対象物50を持ち上げる前と後で異なることがある。
【0056】
制御部2は、ロボット10が対象物50を吸着すると、ロボット10が対象物50を移動先容器18まで移動して移動先容器18内に対象物50を配置するように、ロボット10を制御する。ロボット10が移動先容器18内に対象物50を配置すると、制御部2は、エンドエフェクタ12が移動元容器17の上方にくるようにロボット10を制御する。その後、制御部2は、次のアプローチ対象物50を決定し、決定した次のアプローチ対象物50についてアプローチ方法設定処理を実行する。以後、制御部2は同様に動作する。制御部2は、カメラ画像に基づいてアプローチ対象物50を決定する場合には、例えば、図6に示されるように、吸着部121の吸着開口面が容器17の開口平面17aaと平行となるようにアーム11の姿勢を制御する。
【0057】
一方で、ステップs4において、ロボット10が容器17と干渉するために、あるいはロボット10の特異点のために、ロボット10が第1緩和方向113からアプローチ対象面50aに実際にアプローチできないと判定されたとき、アプローチ対象物50についてのアプローチ方向100が設定されずにアプローチ方向設定処理が終了する。
【0058】
アプローチ方向100が設定されずにアプローチ設定処理が終了すると、制御部2は、次のアプローチ対象物50を決定する。そして、制御部2は、決定した次のアプローチ対象物50についてアプローチ方法設定処理を実行する。以後、制御部2は同様に動作する。
【0059】
なお、第1緩和方向113を求める場合に、法線方向110の代表点50aa側の一端を回転の支点として、法線方向110を特定平面上で調整角度αだけ基準方向112側に回転させたとき、回転させた法線方向110が基準方向112を超える場合がある。この場合には、設定部21は、ステップs4において、ロボット10が基準方向112からアプローチ対象面50aにアプローチできるか否かを判定してもよい。そして、設定部21は、ロボット10が基準方向112からアプローチ対象面50aにアプローチできると判定するとき、ステップs5において、基準方向112をアプローチ方向100に設定してもよい。
【0060】
このように、本開示では、法線方向110と異なる方向をアプローチ方向100としている。具体的には、例えば法線方向110と基準方向112とに基づいてアプローチ方向100が設定されている。ここで、吸着成功率の観点からすれば、ロボット10は法線方向110からアプローチ対象面50aにアプローチすることが望ましい。一方で、上述のように、ロボット10が容器17と干渉する等の理由で、ロボット10が法線方向110からアプローチ対象面50aに実際にアプローチすることができない可能性がある。また、ロボット10が法線方向110からずれた方向からアプローチ対象面50aにアプローチしたとしても、吸着部121の弾性により(言い換えれば柔軟性により)、吸着部121はアプローチ対象面50aを吸着できる可能性がある。本例のように、法線方向110と、ロボット10のアプローチ対象物50に対するアプローチの基準方向112とに基づいてアプローチ方向100が設定されることによって、吸着成功率を高めつつ、ロボット10が設定アプローチ方向100から実際に対象物50にアプローチできる可能性を向上することができる。例えば、図4の例のように、法線方向110から、調整角度αの分、ロボット10がアプローチ対象物50にアプローチの基準方向112に近い、調整角度αに基づく方向113が、アプローチ方向100に設定されることによって、吸着成功率を高めつつ、ロボット10が設定アプローチ方向100から実際に対象物50にアプローチできる可能性を向上することができる。よって、ロボット10は対象物50を吸着保持しやすくなる。
【0061】
調整角度αは、例えば、ロボット10が第1緩和方向113からアプローチしてアプローチ対象面50aを吸着する場合の吸着成功率(第1緩和方向の吸着成功率ともいう)に基づいて設定される。ロボット10が法線方向110からアプローチしてアプローチ対象面50aを吸着する場合の吸着成功率を法線方向の吸着成功率と呼ぶと、調整角度αは、例えば、第1緩和方向の吸着成功率が、法線方向の吸着成功率の所定%以上となるような値に設定される。所定%は、100%未満であり、例えば70%に設定されてもよいし、他の値に設定されてもよい。また、調整角度αは、例えば、ユーザによって、入力部5を通じて、入力されてもよい。
【0062】
調整角度αを設定するための第1緩和方向の吸着成功率及び法線方向の吸着成功率は、ロボット10が実際に動作させられて算出されてもよいし(つまり、ロボット10の実機が使用されて算出されてもいし)、ロボット用物理演算シミュレータが用いられて算出されてもよい。後者の場合、ロボット用物理演算シミュレータには、第1緩和方向の吸着成功率に影響を与える情報が入力されてもよい。例えば、吸着部121に関する吸着部情報と、対象物50に関する対象物情報とが、ロボット用物理演算シミュレータに入力されてもよい。ロボット用物理演算シミュレータに入力される吸着部情報には、例えば、吸着部121の吸着開口121aの直径、吸着部121の長さ及び吸着部121の材質の少なくとも一つが含まれてもよい。また、ロボット用物理演算シミュレータに入力される対象物情報には、対象物50の質量、対象物50の表面処理(アルマイト処理、ビーズ処理あるいは削り出し処理など)を特定する情報及び対象物50の吸着対象面50aの位置情報の少なくとも一つが含まれてもよい。
【0063】
<アプローチ方向設定処理の他の例>
図10はアプローチ方向設定処理の他の例を示すフローチャートである。図10の例では、上述のステップs1及びs2が実行される。次に、ステップs11において、設定部21は、上述のステップs4と同様にして、ロボット10が法線方向110からアプローチ対象面50aに実際にアプローチできるか否かを判定する。ステップs11においてYESと判定されると、ステップs12において、設定部21は、法線方向110をアプローチ方向100に設定する。これにより、アプローチ対象物50についてのアプローチ方向100が設定されてアプローチ設定処理が終了する。制御部2は、法線方向110をアプローチ方向100に設定すると、ロボット10が法線方向110からアプローチ対象面50aにアプローチしてアプローチ対象面50aを吸着するようにロボット10を制御する。図11は、ロボット10が法線方向110からアプローチ対象面50aにアプローチする様子の一例を示す概略図である、ロボット10が対象物50を吸着すると、以後、制御部2は上記と同様に動作する。
【0064】
一方で、ステップs11において、ロボット10が容器17と干渉する等の理由で、ロボット10が法線方向110からアプローチ対象面50aに実際にアプローチできないと判定されると、上述のステップs3及びs4が実行される。ステップs4においてYesと判定されると、上述のステップs5が実行されて、第1緩和方向113がアプローチ方向100に設定される。これにより、アプローチ対象物50についてのアプローチ方向100が設定されてアプローチ方向設定処理が終了する。アプローチ方向100が設定されてアプローチ方向設定処理が終了すると、制御部2は、上記と同様に、ロボット10が設定アプローチ方向100からアプローチ対象面50aにアプローチしてアプローチ対象面50aを吸着するようにロボット10を制御する。以後、制御部2は同様に動作する。
【0065】
ステップs4においてNOと判定されると、アプローチ対象物50についてのアプローチ方向100が設定されずにアプローチ設定処理が終了する。アプローチ方向100が設定されずにアプローチ設定処理が終了すると、制御部2は、次のアプローチ対象物50を決定する。そして、制御部2は、決定した次のアプローチ対象物50についてアプローチ方法設定処理を実行する。以後、制御部2は同様に動作する。
【0066】
このように、図10の例では、設定部21は、ロボット10が法線方向110からアプローチ対象面50aにアプローチできるか否かを判定する。そして、設定部21は、ロボット10が法線方向110からアプローチ対象面50aにアプローチできると判定したとき、法線方向110をアプローチ方向100に設定している。これにより、吸着成功率を向上させることができる。
【0067】
これに対して、図4の例のように、ロボット10が法線方向110からアプローチ対象面50aにアプローチできるか否かが判定されずに、第1緩和方向113がアプローチ方向100に設定される場合には、アプローチ方向設定処理にかかる時間を短くすることができる。
【0068】
なお、設定部21は、ロボット10がアプローチ対象面50aにアプローチする方向を判定した後、判定した方向からのアプローチ姿勢が、ロボット10の限界姿勢を超えていないか否かをさらに判定してもよい。具体的には、設定部21が、アプローチ対象面50aの法線方向110からアプローチ可能と判定した場合には、法線方向110からのアプローチ姿勢の角度(つまり法線角度β)が、後述する、ロボットが取り得る姿勢に基づく上限値L(姿勢上限値Lともいう)を超えていないか否か判定してよい。法線方向110からのアプローチ姿勢の角度が、姿勢上限値Lを超えていない場合、設定部21は、法線方向110をアプローチ方向として設定してよい。一方、法線方向110からのアプローチ姿勢の角度が、姿勢上限値Lを超えている場合、設定部21は、後述する姿勢上限値Lに基づく方向からロボット10がアプローチ可能か否か判定してよい。さらに、ロボット10が姿勢上限値Lに基づく方向からアプローチできない場合、ロボット10が第1緩和方向113からアプローチ可能か否か判定してもよい。また、法線方向110からのアプローチ姿勢の角度が、姿勢上限値Lを超えている場合、設定部21は、ロボット10が第1緩和方向113からアプローチ可能か否か判定してよい。さらに、ロボット10が第1緩和方向113からアプローチできない場合、ロボット10が姿勢上限値Lに基づく方向からアプローチ可能か否か判定してもよい。その後、設定部21は、ロボット10がアプローチ可能な方向をアプローチ方向100に設定してよい。
【0069】
また、設定部21は、アプローチ対象面50aに第1緩和方向113からアプローチ可能と判定した場合には、第1緩和方向113からのアプローチ姿勢の角度(つまり、基準方向112と第1緩和方向113とが成す角度)が、姿勢上限値Lを超えていないか否か判定してよい。第1緩和方向113からのアプローチ姿勢の角度が、姿勢上限値Lを超えていない場合、設定部21は、第1緩和方向113をアプローチ方向として設定してよい。一方、第1緩和方向113からのアプローチ姿勢の角度が、姿勢上限値Lを超えている場合、設定部21は、ロボット10が姿勢上限値Lに基づく方向からアプローチ可能か否か判定してよい。その後、設定部21は、ロボット10がアプローチ可能な方向をアプローチ方向100に設定してよい。
【0070】
図12はアプローチ方向設定処理の他の例を示すフローチャートである。図12の例では、設定部21は、互いに異なる方法でアプローチ方向100を設定する第1設定処理及び第2設定処理を実行可能である。第1設定処理では、法線方向110がアプローチ方向100に設定される。第2設定処理では、第1緩和方向113がアプローチ方向100に設定される。設定部21は、法線角度β(図7参照)に応じて、第1設定処理及び第2設定処理のどちらを実行するかを決定する。
【0071】
図13のアプローチ方向設定処理では、まず上述のステップs1及びs2が実行される。次にステップs21において、設定部21は、基準方向112に対する法線方向110の角度としての法線角度βを求める。次にステップs22において、設定部21は、法線角度βがしきい値以上か否かを判定する。ステップs22においてYESと判定されると、つまり、法線角度βが比較的大きい場合、ステップs23において設定部21は第1設定処理を実行する。第1設定処理では、例えば、図10のステップs11及びs12が実行される。ステップs11においてYESと判定されてステップs12が実行されると、法線方向110がアプローチ方向100に設定されたアプローチ設定処理が終了する。一方で、ステップs11においてNoと判定されると、アプローチ方向100が設定されずにアプローチ設定処理が終了する。
【0072】
ステップs22においてNOと判定されると、つまり、法線角度βが比較的小さい場合、ステップs24において設定部21は第2設定処理を実行する。第2設定処理では、例えば、図4のステップs3,s4,s5が実行される。ステップs4においてYESと判定されてステップs5が実行されると、第1緩和方向113がアプローチ方向100に設定されてアプローチ方向設定処理が終了する。一方で、ステップs4においてNoと判定されると、アプローチ方向100が設定されずにアプローチ設定処理が終了する。
【0073】
上述のように、ロボット10が対象物50を吸着する場合には、カメラ13は、容器17の上方から対象物50を撮影する。このため、アプローチ対象物50の実際の法線角度βが大きい場合には(言い換えれば、アプローチ対象面50aが基準方向112に対して大きく傾いている場合には)、特定部20が、カメラ画像に含まれる距離画像に基づいて、アプローチ対象面50aの位置及び姿勢を特定する精度(アプローチ対象面50aの特定精度ともいう)が低下することがある。例えば、ステレオ方式で距離画像が取得される場合、アプローチ対象物50の実際の法線角度βが大きい場合には、ステレオカメラにアプローチ対象面50a写りにくくなる。これにより、アプローチ対象面50aの特定精度が低下することがある。また、ToF方式で距離画像が取得される場合、アプローチ対象物50の実際の法線角度βが大きいときには、アプローチ対象面50aでの反射光が受光センサで受光されにくくなる。これにより、アプローチ対象面50aの特定精度が低下する可能性がある。アプローチ対象面50aの特定精度が低下すると、特定部20での法線方向110の特定精度が低下する。法線方向110の特定精度が低下すると、設定部21で設定される第1緩和方向113が、実際の法線方向110よりも、調整角度αよりも大きい角度の分、離れている可能性がある。つまり、設定された第1緩和方向113が、実際の法線方向110に対して大きく傾く可能性がある。この場合、ロボット10は、設定部21で設定された第1緩和方向113からアプローチ対象面50aにアプローチしたとしても、アプローチ対象面50aの吸着に失敗する可能性がある。
【0074】
図12の例のように、設定部21が、求めた法線角度βに応じて、第1設定処理及び第2設定処理のどちらを実行するかを決定する場合には、設定部21は、求めた法線角度βが比較的大きいときに、第1緩和方向113ではなく、特定した法線方向110をアプローチ方向100に設定することが可能となる。これにより、実際の法線角度βが大きく、法線方向110の特定精度が低い場合であっても、設定アプローチ方向100は実際の法線方向110から離れにくくなり、ロボット10はアプローチ対象物50を吸着しやすくなる。
【0075】
ステップs22において法線角度βと比較されるしきい値については、例えば、実際の法線角度βの大きさに応じて、距離画像に基づいて特定される法線方向110の精度がどのように変化するかをユーザが調査し、その調査結果に基づいてユーザが適宜設定することができる。しきい値は、例えば、入力部5を通じて処理装置1に通知される。
【0076】
第1設定処理では、ステップs11でNOと判定されると、図9と同様に、ステップs3,s4,s5が実行されてもよい。この場合、例えば、ロボット10と容器17とが干渉する等の理由で、ロボット10が法線方向110からアプローチ対象面50aにアプローチできないと判定されたとき、第1緩和方向113がアプローチ方向100に設定される可能性があることから、ロボット10がアプローチ対象面50aを吸着できる可能性が向上する。
【0077】
図13はアプローチ方向設定処理の他の例を示すフローチャートである。図13の例では、上述のステップs1,s2,s21が実行される。次にステップs31において、設定部21は、法線角度βが、ロボット10が取り得る姿勢に基づく上限値L(姿勢上限値Lともいう)以下であるか否かを判定する。
【0078】
姿勢上限値Lは、ロボット10が取り得る姿勢に基づいて設定される。本例では、ロボット10の姿勢はアーム11の姿勢で決定されることから、姿勢上限値Lは、例えばアーム11が取り得る姿勢に基づく値といえる。姿勢上限値Lは、例えば、容器17内の対象物50の吸着対象面50aが容器17の上方から視認できる状態であり、かつ当該吸着対象面50aの法線角度βが姿勢上限値L以下であれば、当該吸着対象面50aがどの方向を向いていたとしても、ロボット10は、当該吸着対象面50aの法線方向110から当該吸着対象面50aに対して特定障害物と干渉しないでアプローチできるような姿勢を概ねとることができるような値である。容器17内の対象物50の吸着対象面50aが容器17の上方から視認できる状態とは、容器17内の対象物50の吸着対象面50aを容器17の上方のカメラ13が撮影できる状態であるともいえる。容器17の上方のカメラ13とは、容器17を撮影するカメラ13であるともいえる。ロボット10は、容器17内の対象物50の吸着対象面50aが、容器17を撮影するカメラ13に写る状態であり、かつ当該吸着対象面50aの法線角度βが姿勢上限値L以下であれば、当該吸着対象面50aがどの方向を向いていたとしても、当該吸着対象面50aの法線方向110から当該吸着対象面50aに対して特定障害物と干渉しないでアプローチすることができる可能性が高い。
【0079】
ここで、特定障害物とは、容器17以外の、ロボット10の動きの障害となる障害物であって、ロボット10の動作中に位置及び形状が固定の障害物を意味する。特定障害物には、例えば、ロボット10の周囲を取り囲む安全柵が含まれる。特定障害物には容器17は含まれない。
【0080】
姿勢上限値Lは、ロボット10の実機を使用して、あるいはロボット用物理演算シミュレータ上で、容器17内の様々な位置及び姿勢の対象物50をロボット10に吸着させた結果に基づいて設定される。
【0081】
ステップs31において法線角度βが姿勢上限値L以下であると判定されると、上述のステップs11が実行される。ステップs11において、ロボット10が法線方向110からアプローチ対象面50aにアプローチできると判定されると、上述のステップs12が実行される。これにより、法線方向110がアプローチ方向100に設定されてアプローチ設定処理が終了する。一方で、ステップs11において、ロボット10が法線方向110からアプローチできないと判定されると、アプローチ方向100が設定されずにアプローチ設定処理が終了する。
【0082】
ステップs31において法線角度βが姿勢上限値よりも大きいと判定されると、ステップs32が実行される。ステップs32では、設定部21は、図14に示されるように、基準方向112から姿勢上限値Lの分法線方向110に近い、姿勢上限値Lに基づく方向114(第2緩和方向114ともいう)を求める。設定部21は、姿勢上限値Lに基づく方向114を求める場合、例えば、法線方向110及び基準方向112を含む特定平面を考える。そして、設定部21は、基準方向112の代表点50aa側の一端を回転の支点として、基準方向112を特定平面上で姿勢上限値Lだけ法線方向110側に回転させて得られる方向を、姿勢上限値Lに基づく方向114とする。姿勢上限値Lに基づく方向114(言い換えれば第2緩和方向114)は、基準方向112と成す角度がLであって、法線方向110と成す角度が(β-L)となる方向である。
【0083】
ステップs32の後、ステップs33において、設定部21は、上述のステップs4と同様にして、ロボット10が第2緩和方向114からアプローチ対象面50aに実際にアプローチできるか否かを判定する。ステップs33においてYESと判定されると、ステップs34において、設定部21は、第2緩和方向114をアプローチ方向100に設定する。これにより、アプローチ対象物50についてのアプローチ方向100が設定されてアプローチ設定処理が終了する。制御部2は、第2緩和方向114をアプローチ方向100に設定すると、ロボット10が第2緩和方向114からアプローチ対象面50aにアプローチしてアプローチ対象面50aを吸着するようにロボット10を制御する。図15は、ロボット10が第2緩和方向114からアプローチ対象面50aにアプローチする様子の一例を示す概略図である、ロボット10が対象物50を吸着すると、以後、制御部2は上記と同様に動作する。
【0084】
一方で、ステップs33においてNOと判定されると、アプローチ対象物50についてアプローチ方向100が設定されずにアプローチ設定処理が終了する。その後、制御部2は、次のアプローチ対象物50を決定する。そして、制御部2は、決定した次のアプローチ対象物50についてアプローチ方法設定処理を実行する。以後、制御部2は同様に動作する。
【0085】
このように、図13の例では、アプローチ対象物50の法線角度βが、ロボット10が取り得る姿勢に基づく姿勢上限値Lよりも大きい場合に、基準方向112から姿勢上限値Lの分、法線方向110に近い第2緩和方向114がアプローチ方向100に設定される。この場合、アプローチ方向100として設定された第2緩和方向114は、図14及び15に示されるように、法線方向110よりも、ロボット10が対象物50にアプローチの基準方向112に近い方向となる。これにより、アプローチ対象面50aの法線方向110が基準方向112よりも大きく傾いているために、ロボット10が法線方向110からアプローチできない可能性が高い場合に、ロボット10は、基準方向112に近い第2緩和方向114からアプローチ対象面50aにアプローチすることによって、アプローチ対象面50aを吸着しやすくなる。
【0086】
なお、図13の例においてステップs11でNOと判定された場合には、図16に示されるように、ステップs3,s4,s5が実行されてもよい。この場合、ロボット10が法線方向110からアプローチ対象面50aにアプローチできないとき、法線方向110から調整角度αの分基準方向112に近い第1緩和方向113が、アプローチ方向100に設定され得る。これにより、ロボット10はアプローチ対象面50aを吸着しやすくなる。
【0087】
また、図13の例において、ステップs33において、ロボット10が第2緩和方向114からアプローチ対象面50aにアプローチすることができないと判定されると、図17に示されるように、ステップs3,s4,s5が実行されてもよい。この場合、ロボット10が第2緩和方向114からアプローチ対象面50aにアプローチできないとき、法線方向110から調整角度αの分基準方向112に近い第1緩和方向113が、アプローチ方向100に設定され得る。
【0088】
図18は、法線方向110が姿勢上限値Lよりも大きい場合の第1緩和方向113及び第2緩和方向114の一例を示す概略図である。姿勢上限値Lは、調整角度αよりも大きい値に設定される。例えば、姿勢上限値Lは35度に設定され、調整角度αは20度に設定される。この場合、法線角度βが40度のとき、第1緩和方向113が基準方向112と成す角度は、20度であって、姿勢上限値L(つまり第2緩和方向114が基準方向112と成す角度)よりも小さくなる。また、法線角度βが50度のとき、第1緩和方向113が基準方向112と成す角度は、30度であって、姿勢上限値Lよりも小さくなる。第1緩和方向113が基準方向112と成す角度が姿勢上限値Lよりも小さい場合、図18に示されるように、第1緩和方向113は、第2緩和方向114よりも、ロボット10が対象物50にアプローチの基準方向112に近くなる。ロボット10が第2緩和方向114からアプローチできない場合に、第2緩和方向114よりも基準方向112に近い第1緩和方向113がアプローチ方向100に設定されることによって、ロボット10はアプローチ対象面50aを吸着しやすくなる。
【0089】
なお、第1緩和方向113が基準方向112と成す角度が姿勢上限値L以上となる程度に法線角度βが大きい場合には、ステップs33でNOと判定された場合にステップs3,s4,s5が実行されずにアプローチ方向設定処理が終了してもよい。あるいは、第1緩和方向113が基準方向112と成す角度が姿勢上限値L以上となる程度に法線角度βが大きい場合には、ステップs32以降が実行されずにアプローチ方向設定処理が終了してもよい。
【0090】
上記の図12の例の第1設定処理では、図13のフローチャートでのステップs31以降の処理(つまり、ステップs31,s32,s33,s34,s11,s12)が実行されてもよい。この場合、図12のステップs22において法線角度βと比較されるしきい値は、姿勢上限値Lよりも小さい値に設定される。例えば、しきい値が30度に設定され、姿勢上限値Lが35度に設定される。第1設定処理において、図13のフローチャートでのステップs31以降の処理が実行される場合、ステップs11においてNOと判定されると、図16のようにステップs3,s4,s5が実行されてもよい。また、第1設定処理において、図13のフローチャートでのステップs31以降の処理が実行される場合、ステップs33においてNOと判定されると、図17のようにステップs3,s4,s5が実行されてもよい。
【0091】
上述のように、アプローチ対象物50の実際の法線角度βが大きい場合には、アプローチ対象面50aの特定精度が低下することがある。アプローチ対象面50aの特定精度が低下すると、特定部20での法線方向110の特定精度が低下する。法線方向110の特定精度が低下すると、設定部21で設定される第1緩和方向113が、実際の法線方向110よりも、調整角度αよりも大きい角度の分、離れている可能性がある。つまり、設定された第1緩和方向113が、実際の法線方向110に対して大きく傾く可能性がある。その結果、ロボット10は、第1緩和方向113からアプローチ対象物50にアプローチした場合に、アプローチ対象物50の吸着に失敗することがある。
【0092】
そこで、設定部21は、求めた法線角度βに応じて調整角度αを変更してもよい。具体的には、設定部21は、求めた法線角度βが大きいほど、調整角度αを小さくしてもよい。これにより、第1緩和方向113が、実際の法線方向110から大きく離れる可能性が低減する。よって、ロボット10はアプローチ対象物50の吸着に失敗しにくくなる。例えば、設定部21は、法線角度βが30度よりも大きい場合、調整角度αを15度に設定し、法線角度βが30度以下の場合、調整角度αを20度に設定してもよい。なお、設定部21は、法線角度βに応じて調整角度αを3段階以上変更してもよい。
【0093】
また、容器17の深さが大きい場合(つまり壁170が高い場合)であって、調整角度αが小さい場合には、法線角度βが大きいとき、ロボット10は、第1緩和方向113からアプローチ対象物50にアプローチしようとしたとしても、容器17の高い壁170と干渉してアプローチ対象物50にアプローチできない可能性がある。
【0094】
そこで、アプローチ対象物50の実際の法線角度βが大きい状況でもアプローチ対象面50aの特定精度がそれほど低下しない場合であって、容器17の深さが大きい場合には、設定部21は、求めた法線角度βが大きいほど、調整角度αを大きくしてもよい。これにより、法線角度βが大きい場合であっても、ロボット10は、第1緩和方向113からアプローチ対象物50にアプローチしやすくなる。例えば、設定部21は、法線角度βが30度よりも大きい場合、調整角度αを25度に設定し、法線角度βが30度以下の場合、調整角度αを20度に設定してもよい。
【0095】
また、設定部21は、吸着部121に関する吸着部情報と、対象物50に関する対象物情報とに基づいて、調整角度αを設定してもよい。この場合、設定部21は、例えば、吸着部情報及び対象物情報と、調整角度αとの対応関係を示すテーブル情報500に基づいて、調整角度αを設定してもよい。設定部21は、テーブル情報500を参照することによって、吸着部情報及び対象物情報がどのような場合にどのような値の調整角度αを設定するのかを特定することができる。
【0096】
図19はテーブル情報500の一例を示す概略図である。テーブル情報500に含まれる吸着部情報には、例えば、吸着部121の吸着開口121aの直径(単に開口径ともいう)と、吸着部121の長さと、吸着部121の材質とが含まれる。また、テーブル情報500に含まれる対象物情報には、対象物50の質量と、対象物50の表面処理(アルマイト処理、ビーズ処理あるいは削り出し処理など)を特定する情報とが含まれる。図19に示されるテーブル情報500では、例えば、吸着部121の開口径がa1、吸着部121の長さb1、吸着部121の材質がシリコンゴム、対象物50の質量がd1、対象物50の表面処理がアルマイト処理である場合に、調整角度αの値をα1に設定することが示されている。また、テーブル情報500では、例えば、吸着部121の開口径がa2、吸着部121の長さb2、吸着部121の材質がポリウレタンゴム、対象物50の質量がd2、対象物50の表面処理が削り出し処理である場合に、調整角度αの値をα2に設定することが示されている。また、テーブル情報500では、例えば、吸着部121の開口径がa3、吸着部121の長さb3、吸着部121の材質がフッ素ゴム、対象物50の質量がd3、対象物50の表面処理がビーズ処理である場合に、調整角度αの値をα3に設定することが示されている。
【0097】
記憶部3には、ロボット10が現在備える吸着部121に関する吸着部情報と、現在の対象物50に関する対象物情報が記憶されている。設定部21は、記憶部3内の吸着部情報及び対象物情報の内容に対応する調整角度αの値をテーブル情報500から取得する。そして、設定部21は、テーブル情報500から取得した値を、調整角度αの値として使用する。
【0098】
テーブル情報500は、ロボット10の実機が使用されて算出された第1緩和方向の吸着成功率及び法線方向の吸着成功率に基づいて生成されてもよいし、ロボット用物理演算シミュレータが用いられて算出された第1緩和方向の吸着成功率及び法線方向の吸着成功率に基づいて生成されてもよい。例えば、α1は、吸着部121の開口径がa1、吸着部121の長さb1、吸着部121の材質がシリコンゴム、対象物50の質量がd1、対象物50の表面処理がアルマイト処理である場合に、第1緩和方向の吸着成功率が、法線方向の吸着成功率の所定%以上となるような値に設定されてもよい。テーブル情報500は、例えば、入力部5を通じて処理装置1に入力される。処理装置1に入力されたテーブル情報500は記憶部3に記憶される。
【0099】
なお、設定部21は、求めた法線角度βが大きいほど、調整角度αを小さくする場合には、例えば、調整角度αの最大値をテーブル情報500を使用して決定し、テーブル情報500を使用して決定した最大値に基づいて、調整角度αの他の値を設定してもよい。また、設定部21は、求めた法線角度βが大きいほど、調整角度αを大きくする場合には、例えば、調整角度αの最小値をテーブル情報500を使用して決定し、テーブル情報500を使用して決定した最小値に基づいて、調整角度αの他の値を設定してもよい。
【0100】
上述の基準方向112は、ロボット座標系で指定されてもよいし、カメラ座標系で指定されてもよい。ロボット座標系とは、ロボット10に設定された三次元直交座標系である。制御部2は、ロボット10を制御する場合、ロボット10の位置をロボット座標系で管理する。一方で、カメラ座標系とは、カメラ13に設定された三次元直交座標系である。カメラ13で生成されるカラー画像及び距離画像の各画素値の位置は、カメラ座標系で表される。
【0101】
例えば、基準方向112がロボット座標系で指定される場合、つまり、基準方向112がロボット座標系において設定される場合を考える。この場合、容器17の開口17aの向き(言い換えれば開口平面17aaの向き)が変化すると、ロボット座標系での基準方向112は変化する。そのため、開口17aの向きの変化に応じて基準方向112を指定し直す必要がある。
【0102】
これに対して、基準方向112がカメラ座標系で指定される場合、つまり、基準方向112がカメラ座標系において設定される場合を考える。カメラ13はエンドエフェクタ12に固定されていることから、容器17の開口17aの向きが変化したとしても、カメラ13が容器17内の対象物50を容器17の上方から撮影するときの、開口17aの向きに対するカメラ13の姿勢を一定にすることができる。そのため、基準方向112がカメラ座標系で指定される場合には、開口17aの向きの変化に応じて基準方向112を指定し直す必要はない。また、ロボット10が、開口17aの向きが互いに異なる複数の容器17内から順に対象物50を吸着保持する場合であっても、容器17ごとに基準方向112を指定する必要はなく、複数の容器17に対して共通の基準方向112を指定することができる。よって、基準方向112がカメラ座標系で指定される場合には、ユーザの負担を軽減することができる。
【0103】
なお、上述のアプローチ方向設定処理においては、カメラ座標系でのアプローチ方向100が設定されてもよい。この場合、基準方向112は、カメラ座標系のx軸、y軸及びz軸のいずれか一つの軸に設定されてもよい。これにより、基準方向112を基準として設定される第1緩和方向113及び第2緩和方向114を求める際の計算量が低減する。カメラ13が容器17内の対象物50を容器17の上方から撮影するときのカメラ座標系のz軸が、開口平面17aaに対して垂直を成す場合、基準方向112は、カメラ座標系のz軸に設定されてもよい。アプローチ方向設定処理において、カメラ座標系でのアプローチ方向100が設定される場合、制御部2は、カメラ座標系で設定されたアプローチ方向100をロボット座標系でのアプローチ方向100に変換した上で、ロボット10を制御する。
【0104】
また、アプローチ方向設定処理においては、ロボット座標系でのアプローチ方向100が設定されてもよい。この場合、基準方向112がカメラ座標系で指定される際には、制御部2は、カメラ座標系での基準方向112をロボット座標系での基準方向112に変換した上で、アプローチ方向100を設定する。
【0105】
上記の例では、カメラ13は3次元カメラであったが、カラー画像を生成する2次元カメラであってもよい。この場合、特定部20は、カラー画像に基づいて、アプローチ対象物50の位置及び姿勢を特定する。そして、特定部20は、特定したアプローチ対象物50の位置及び姿勢と、対象物50の表面での吸着対象面の位置及び範囲を示す吸着対象面情報とに基づいて、アプローチ対象面50aの位置及び姿勢を特定する。吸着対象面情報は記憶部3に予め記憶されている。
【0106】
また、上記の例では、調整角度αが法線角度βよりも小さい場合を例に説明されているが、例えば、法線角度βが調整角度αよりも小さい場合もあり得る。この場合、吸着部121は、法線方向110に対して基準方向112を挟んだ反対側にアプローチ方向100が設定されることもある。
【0107】
また、上記の例では、基準方向112に向かってアプローチ方向100を調整する場合を説明しているが、本開示はそれに限られない。例えば、対象物50が容器17の壁際にある場合、基準方向112に向かってアプローチ方向100を設定しようとしたとき、容器17の壁と干渉することがある。この場合、例えば、基準方向112から遠ざかる方向にアプローチ方向100を設定してもよい。この場合、例えば、基準方向112に向かって調整角度αで回転移動した第1アプローチ方向について干渉すると判定された後、基準方向112から遠ざかる方向に調整角度αで回転移動した第2アプローチ方向について干渉するか否か判定してもよい。また、例えば、法線角度βが所定の値よりも小さい場合に、第1アプローチ方向について干渉の判定を行わずに、第2アプローチ方向の干渉の判定をしてもよい。また、これらの場合、第2アプローチ方向に係る調整角度αは、第1アプローチ方向に係る調整角度αよりも小さく設定されていてもよい。
【0108】
また、上記の例では、基準方向112に基づいてアプローチ方向100を設定する例が示されているが、基準方向112は設定されていなくてもよい。この場合、例えば、調整角度αの最大値を設定しておき、調整角度αの最大値を限界値として、調整角度αの最大値に段階的に近づくように調整角度αを設定する。そして、段階的に設定された調整角度αにおけるアプローチ方向100の干渉の判定を行い、干渉しないと判定された場合に、アプローチ方向100として設定すればよい。また、この場合、調整角度αは、例えば、法線方向110のある点の高さが大きくなるように変更されてもよいし、例えば、カメラ画像に基づいて認識された対象物50及び容器17の壁面が遠ざかるように変更されてもよい。
【0109】
また、上記の例では、調整角度αは、例えば、法線方向110のある点の高さが大きくなるように変更されている例が示されているが、本開示はこれに限られない。例えば、容器17の開口平面17aaを含む平面をx軸およびy軸を通る平面としたときに、x軸の値およびy軸の値が変るように、調整角度αが変更されてもよい。
【0110】
<ロボット制御システム>
本実施形態に係る処理装置1は、ロボット制御システム60の一部として、ロボット10を制御可能にロボット10と通信接続されてもよい。図20は、ロボット制御システム60の構成の一例を示す概略図である。図20に示すように、ロボット制御システム60は、例えば、上記の処理装置1と、処理装置1と接続されたロボット10とを備えている。さらに、本実施形態に係るロボット制御システム60は、処理装置1に接続した端末装置70を有している。具体的には、処理装置1のインタフェース4(第1インタフェース4ともいう)と端末装置70が有する第2インタフェース71が互いに通信接続することによって、処理装置1及び端末装置70が互いに接続されている。なお、第2インタフェース71は、例えば、第1インタフェース4と同様の構成を有していてもよい。
【0111】
端末装置70は、第2制御部72と表示部73を有していてもよい。そして、第2制御部72は、第1インタフェース4及び第2インタフェース71を介して、処理装置1の制御部2(第1制御部2ともいう)から必要な情報を取得して表示部73へ表示させてもよい。例えば、第2制御部72は、対象物50への吸着部121のアプローチ方向を視認可能に表示部73に表示させてもよい。具体的には、第2制御部72は、表示部73に対象物50及び対象物50の吸着対象面50aへの吸着部121のアプローチ方向を示す情報を表示してもよい。アプローチ方向を示す情報は、例えば、吸着対象面50aの代表点50aaに接続した線分または矢印などでよいし、吸着部121がアプローチ方向に従って吸着対象面50aに近づくようなアニメーションなどでもよいし、アプローチ軌道上に位置した吸着部121と吸着対象面50aの位置関係が俯瞰して認識可能な画像などでもよいし、吸着対象面50aをアプローチ方向から視認した画像などでもよい。その結果、例えば、ユーザが、作業開始前に、ロボット10がどのように対象物50にアプローチするのか確認することができる。
【0112】
図21及び22は、表示部73の表示例を示す概略図である。図21では、対象物50に対してアプローチする吸着部121を横方向から見た様子を表示部73がアニメーション表示する様子の一例が示されている。図22では、対象物50に対してアプローチする吸着部121を上方向から見た様子を表示部73がアニメーション表示する様子の一例が示されている。図21では、吸着部121のアプローチ方向を示す情報が矢印730で表示されている。図22では、アプローチ軌道上に位置した吸着部121と吸着対象面50aの位置関係が俯瞰して表示されている。
【0113】
なお、第1制御部2もロボット10の制御に必要な情報を第2制御部72から取得することができる。また、端末装置70の第2制御部72は、処理装置1の第1制御部2と同等の構成を有していればよい。端末装置70の表示部73は、例えば、タッチパネルディスプレイまたは液晶ディスプレイ等であればよい。
【0114】
アプローチ方向を示す情報として、複数の情報が同時に表示されてもよいし、互いに異なる複数の情報が互いに異なるタイミングで表示されてもよい。複数の情報が同時に表示される場合は、例えば、アプローチ方向を示す矢印と、この矢印上を吸着部121が吸着対象面50aに近づくようなアニメーションとが同時に表示されてもよい。互いに異なる複数の情報が互いに異なるタイミングで表示される場合は、例えば、アプローチ方向に沿った吸着部121のアプローチ軌跡が表示された後、吸着対象面50aをアプローチ方向から視認した画像に切り替えられて、吸着部121が吸着対象面50aにどのように接触するのかが表示されてもよい。
【0115】
また、端末装置70は、さらに入力部74を有していてもよい。このとき、表示部73が対象物50及びアプローチ方向を示す情報を表示する場合、例えば、入力部74を介して、ユーザが、容器17内に配置された複数の対象物50のうちの少なくとも1つを選択することが可能になっており、表示部73は、選択された対象物50ごとにアプローチ方向を示す情報を表示してもよい。その結果、ロボット10が任意の対象物50に対してアプローチ可能か否か、ユーザが確認することができる。なお、端末装置70の入力部74は、処理装置1の入力部5と同等の構成を有していてもよい。また、ロボット制御システム60が端末装置70の入力部74を有する場合、入力部74は、処理装置1の入力部5として機能してもよい。
【0116】
また、表示部73に表示されたアプローチ方向を示す情報は、入力部74を介してユーザによって操作可能であってもよい。この場合、例えば、ユーザが、入力部74を介して、例えば、線形で表示されたアプローチ方向を示す情報を選択して、その情報を表示部73上で移動するようなユーザ操作を端末装置70は受け付けてもよい。また、第1制御部2は、ユーザ操作によって変更された変更後のアプローチ方向に基づいて、変更後のアプローチ方向に沿ってロボット10が対象物50を保持しようとしたときに、保持可能か否かを判定してもよい。この場合、第2制御部72は、第1制御部2から、変更後のアプローチ方向に基づく保持可能性の判定結果を受けとって、表示部73に、変更後のアプローチ方向に基づく保持可能性の判定結果を表示させてもよい。なお、判定結果は、例えば、保持可能か否かを示す2値で表示されてもよいし、保持成功確率として数値で表示されてもよい。また、例えば、判定結果として、有効なアプローチ方向をハイライトで示すことによって当該アプローチ方向が対象物50を保持可能であることを表してもよいし、または、有効でないアプローチ方向を暗く表示することによって当該アプローチ方向が対象物50を保持可能でないことを表してもよい。
【0117】
また、第2制御部72は、表示部73に対象物50の吸着対象面50aの法線方向を示す情報を表示させてもよい。法線方向を示す情報は、例えば、吸着対象面50aの代表点50aaに接続した線分または矢印などでよいし、吸着部121が法線方向に従って吸着対象面50aに近づくようなアニメーションなどでもよいし、法線上に位置した吸着部121と吸着対象面50aの位置関係が俯瞰して認識可能な画像などでもよいし、または吸着対象面50aを法線方向から視認した画像などでもよい。その結果、例えば、ユーザは、ロボット10がどのように対象物にアプローチするのか確認することができる。
【0118】
また、表示部73が対象物50及び法線方向を示す情報を表示する場合、例えば、入力部74を介して、ユーザが、容器17内に配置された複数の対象物50のうちの少なくとも1つを選択可能になっており、選択された対象物50ごとに法線方向を示す情報が表示されてもよい。その結果、ロボット10が任意の対象物50に対して法線方向からアプローチ可能か否か、ユーザが確認することができる。
【0119】
また、第2制御部72は、アプローチ方向を示す情報及び法線方向を示す情報は、比較可能に表示部73に表示させてもよい。その結果、ユーザは、アプローチ方向が法線方向に対してどれほど傾いているのか判断することが容易になる。なお、第2制御部72は、対象物50のアプローチの基準方向112を示す情報を表示部73に表示させてもよい。また、第2制御部72は、調整角度αを表示部73に表示させてもよい。また、第2制御部72は、法線角度βを表示部73に表示させてもよい。
【0120】
以上のように、処理装置及ロボット制御システムは詳細に説明されたが、上記した説明は、全ての局面において例示であって、この開示がそれに限定されるものではない。また、上述した各種例は、相互に矛盾しない限り組み合わせて適用可能である。そして、例示されていない無数の例が、この開示の範囲から外れることなく想定され得るものと解される。
【0121】
本開示には以下の内容が含まれる。
【0122】
一実施形態において、(1)処理装置は、保持対象物を吸着保持可能であり弾性を有する吸着部を有するロボットを制御する処理装置であって、前記ロボットを制御する制御部を備え、前記制御部は、前記吸着部を前記保持対象物の吸着対象面に対して前記吸着対象面の法線方向と異なる方向から前記保持対象物に接触させて、前記吸着部に前記保持対象物を吸着させるよう制御可能である。
【0123】
(2)上記(1)の処理装置において、前記制御部は、前記保持対象物の吸着対象面の法線方向を特定する特定部と、前記特定部で特定された前記法線方向と、前記ロボットの前記保持対象物に対するアプローチの基準方向とに基づいて、前記吸着部が前記保持対象物に接触するアプローチ方向を設定する設定部とを有する。
【0124】
(3)上記(2)の処理装置において、前記設定部は、前記法線方向から調整角度の分前記基準方向側へ移動した、前記調整角度に基づく方向を、前記アプローチ方向に設定する。
【0125】
(4)上記(3)の処理装置において、前記設定部は、前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定し、前記ロボットが前記法線方向から前記吸着対象面にアプローチできると判定したとき、前記法線方向を前記アプローチ方向に設定し、前記ロボットが前記法線方向から前記吸着対象面にアプローチできないと判定したとき、前記調整角度に基づく前記方向を前記アプローチ方向に設定する。
【0126】
(5)上記(3)の処理装置において、前記設定部は、前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定せずに、前記調整角度に基づく前記方向を前記アプローチ方向に設定する。
【0127】
(6)上記(2)から(5)のいずれか一つの処理装置において、前記設定部は、前記ロボットの限界姿勢に基づき、前記アプローチ方向を設定する。
【0128】
(7)上記(3)の処理装置において、前記設定部は、互いに異なる方法で前記アプローチ方向を設定する第1設定処理及び第2設定処理を実行可能であり、前記設定部は、前記第1設定処理において、前記法線方向を前記アプローチ方向に設定し、前記設定部は、前記第2設定処理において、前記調整角度に基づく前記方向を前記アプローチ方向に設定し、前記設定部は、前記基準方向に対する前記法線方向の角度としての法線角度に応じて、前記第1設定処理及び前記第2設定処理のどちらを実行するかを決定する。
【0129】
(8)上記(7)の処理装置において、前記設定部は、前記第1設定処理において、前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定し、前記ロボットが前記法線方向から前記吸着対象面にアプローチできると判定したとき、前記法線方向を前記アプローチ方向に設定し、前記ロボットが前記法線方向から前記吸着対象面にアプローチできないと判定したとき、前記調整角度に基づく前記方向を前記アプローチ方向に設定する。
【0130】
(9)上記(7)の処理装置において、前記設定部は、前記第1設定処理において、前記法線角度が、前記ロボットが取り得る姿勢に基づく上限値以下であるか否かを判定し、前記法線角度が前記上限値以下である場合、前記法線方向を前記アプローチ方向に設定し、前記法線角度が前記上限値よりも大きい場合、前記基準方向から前記上限値の分前記法線方向に近い、前記上限値に基づく方向を、前記アプローチ方向に設定する。
【0131】
(10)上記(9)の処理装置において、前記設定部は、前記第1設定処理において、前記法線角度が前記上限値以下である場合、前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定し、前記ロボットが前記法線方向から前記吸着対象面にアプローチできると判定したとき、前記法線方向を前記アプローチ方向に設定し、前記ロボットが前記法線方向から前記吸着対象面にアプローチできないと判定したとき、前記上限値に基づく前記方向を前記アプローチ方向に設定する。
【0132】
(11)上記(9)または(10)の処理装置において、前記設定部は、前記第1設定処理において、前記法線角度が前記上限値よりも大きい場合、前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできるか否かを判定し、前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできると判定したとき、前記上限値に基づく前記方向を前記アプローチ方向に設定し、前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできないと判定したとき、前記調整角度に基づく前記方向を前記アプローチ方向に設定する。
【0133】
(12)上記(2)の処理装置において、前記設定部は、前記基準方向に対する前記法線方向の角度としての法線角度が、前記ロボットが取り得る姿勢に基づく上限値以下であるか否かを判定し、前記法線角度が前記上限値以下である場合、前記法線方向を前記アプローチ方向に設定し、前記法線角度が前記上限値よりも大きい場合、前記基準方向から前記上限値の分前記法線方向に近い、前記上限値に基づく方向を、前記アプローチ方向に設定する。
【0134】
(13)上記(12)の処理装置において、前記設定部は、前記法線角度が前記上限値以下である場合、前記ロボットが前記法線方向から前記吸着対象面にアプローチできるか否かを判定し、前記ロボットが前記法線方向から前記吸着対象面にアプローチできると判定したとき、前記法線方向を前記アプローチ方向に設定し、前記ロボットが前記法線方向から前記吸着対象面にアプローチできないと判定したとき、前記法線方向から調整角度の分前記基準方向側へ移動した、前記調整角度に基づく方向を、前記アプローチ方向に設定する。
【0135】
(14)上記(12)または(13)の処理装置において、前記設定部は、前記法線角度が前記上限値よりも大きい場合、前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできるか否かを判定し、前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできると判定したとき、前記上限値に基づく前記方向を前記アプローチ方向に設定し、前記ロボットが前記上限値に基づく前記方向から前記吸着対象面にアプローチできないと判定したとき、前記法線方向から調整角度の分前記基準方向側へ移動した、前記調整角度に基づく方向を、前記アプローチ方向に設定する。
【0136】
(15)上記(3)から(11)、(13)及び(14)のいずれか一つの処理装置において、前記設定部は、前記法線角度に応じて前記調整角度を変更する。
【0137】
(16)上記(3)から(11)及び(13)から(15)のいずれか一つの処理装置において、前記設定部は、前記ロボットが有する、前記保持対象物を吸着する吸着部に関する吸着部情報と、前記保持対象物に関する対象物情報とに基づいて、前記調整角度を設定する。
【0138】
(17)ロボット制御システムは、上記(1)から(16)のいずれか一つの処理装置と、前記処理装置と接続されたロボットとを備える。
【0139】
(18)プログラムは、コンピュータ装置を、上記(1)から(16)のいずれか一つの処理装置として機能させるためのプログラムである。
【0140】
(19)処理装置は、保持対象物を移動可能に吸着保持する吸着部を有するロボットを制御する処理装置であって、前記ロボットを制御する制御部を備え、前記制御部は、前記保持対象物の吸着対象面に対して、前記吸着部の第1端側が前記第1端側に対向する第2端側よりも縮んだ状態で、前記吸着部が前記吸着対象面に接触するように前記ロボットを制御する。
【0141】
(20)端末装置は、表示部と、保持対象物の吸着対象面の法線方向とは異なる方向から前記保持対象物を吸着保持可能なロボットの当該保持対象物へのアプローチ方向を取得し、前記アプローチ方向を認識可能に前記表示部に表示させる制御部とを備える。
【符号の説明】
【0142】
1 処理装置
10 ロボット
2 制御部(第1制御部)
20 特定部
21 設定部
30 プログラム
50 保持対象物
50a 吸着対象面
60 ロボット制御システム
70 端末装置
72 第2制御部
73 表示部
110 法線方向
121 吸着部
112 基準方向
130 第1緩和方向
140 第2緩和方向
L 上限値
α 調整角度
β 法線角度
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22