JP2024017442A - 自律ロボットとそのキャリブレーション方法 - Google Patents

自律ロボットとそのキャリブレーション方法 Download PDF

Info

Publication number
JP2024017442A
JP2024017442A JP2022120079A JP2022120079A JP2024017442A JP 2024017442 A JP2024017442 A JP 2024017442A JP 2022120079 A JP2022120079 A JP 2022120079A JP 2022120079 A JP2022120079 A JP 2022120079A JP 2024017442 A JP2024017442 A JP 2024017442A
Authority
JP
Japan
Prior art keywords
robot
additional axis
additional
imaging means
orientation
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
JP2022120079A
Other languages
English (en)
Inventor
毅 北村
Takeshi Kitamura
聡 笹谷
So Sasatani
信博 知原
Nobuhiro Chihara
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2022120079A priority Critical patent/JP2024017442A/ja
Publication of JP2024017442A publication Critical patent/JP2024017442A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】付加軸を有する自律ロボットにおいて、キャリブレーションにかかる工数を低減する。【解決手段】初期位置におけるロボットと撮像手段との間の相対的な位置と姿勢の変換パラメータである初期位置姿勢変換パラメータ2を推定する初期校正実行工程と、校正対象の付加軸を1つずつ選択し、校正対象の付加軸を2地点以上に移動させ、各地点で撮像手段により撮影した画像のデータ群に基づき、校正対象の付加軸の傾き角度のパラメータである付加軸傾き角パラメータ4を推定する付加軸傾き角度推定工程と、を有する。初期位置姿勢変換パラメータ2と付加軸傾き角パラメータ4と付加軸の移動量とに基づいて任意の付加軸の位置の組合せにおけるロボットと撮像手段との間の相対的な位置と姿勢の変換パラメータ(現在位置姿勢変換パラメータ10)を推定し、自律作業を実行する。【選択図】図1

Description

本発明は、ロボットと撮像手段とを用いて自律作業を行う自律ロボットとそのキャリブレーション方法に関し、特に、付加軸を有する自律ロボットとそのキャリブレーション方法に関する。
近年の労働力不足を解消するため、物流分野におけるピッキング作業や産業分野における組み立て作業など、従来は人が行っていた何らかのワーク(作業対象物)を取り扱う各種作業を自動化する自律ロボットのニーズが高まっている。ロボットに適切な自律作業を実行させるには、ワークなどの周辺環境を高精度に認識するための撮像手段が必要となる。
撮像手段に基づく認識結果によりロボットが自律作業するには、ロボットと撮像手段との間の相対的な位置と姿勢の変換パラメータを決定するキャリブレーション(校正)の実施が必要である。
このキャリブレーションには、例えば、形状が既知のマーカ(ターゲットマーカとも呼ばれる)をロボットに取り付け、様々な姿勢に変更したロボット上のマーカを周辺に設置された撮像手段により撮影し、撮影した画像とロボットの姿勢との複数の組を用いて、ロボットと撮像手段との間の相対的な位置と姿勢の変換パラメータを推定するハンドアイキャリブレーションとよばれる方法がある。
ここで、一般的な自律ロボットでは、ロボットおよび撮像手段がそれぞれ環境に固定されており、ロボットに対する撮像手段の配置が単一であるため、ハンドアイキャリブレーションを1度実行することで、自律作業を実行できる。
しかし、ロボットおよび/または撮像手段を移動させる付加軸(スライダによる並進軸またはモータによる回転軸の総称)を有する自律ロボットの場合、付加軸による移動によってロボットと撮像手段との間の配置が変更されるため、移動後の位置で再度ハンドアイキャリブレーションを行う必要がある。
また、撮像手段の配置や向きが変更される場合に、カメラ座標系におけるワークの位置とロボット座標系におけるワークの位置との間を変換する技術として、例えば特許文献1がある。
特許文献1の請求項1には、「溶接ロボットで自動溶接される溶接対象物に形成された開先の断面形状を、前記溶接ロボットに対する位置が変更可能なカメラを用いて測定する開先形状測定方法であって、前記カメラが撮影した被写体のカメラ座標系の画像データを前記溶接ロボットのロボット座標系に対応させるための準備データを、前記カメラの位置に応じて準備しておく準備工程と、前記カメラが前記開先を撮影する撮影工程と、前記準備工程で準備された前記準備データを用い、前記撮影工程で撮影された前記開先の画像データから、前記開先の断面形状情報を検出する測定工程と、を有することを特徴とする開先形状測定方法」が記載されている。
また、特許文献1の段落0043には、「本実施形態では、撮影工程S2および測定工程S3により、開先3の任意の位置を測定部位31として選択し、その断面形状32を画像処理により測定(センシング)することができる。断面形状32の測定(撮影工程S2および測定工程S3)は、溶接ロボット10を開先3に沿って移動させることで、開先3の複数の測定部位31について間欠的または連続的に行うことができる。」ことが記載されている。
すなわち、特許文献1には、あらかじめ作業時のカメラの位置に応じて、カメラが撮影した被写体のカメラ座標系の画像データを溶接ロボットのロボット座標系に対応させるための準備データを準備しておくこと、および、溶接ロボットを移動させて複数の測定部位において間欠的または連続的に測定を行い、準備データを準備することが記載されている。
特開2022-18144号公報
しかしながら、ロボットおよび/または撮像手段が付加軸により任意の位置に移動可能で作業時のワークの状況に基づき作業中でもロボットや撮像手段の相対的な配置が動的に変化する自律ロボットに対して特許文献1の技術を適用しようとすると、すべてのロボットおよび/またはカメラの位置に対応して準備データを準備しておく必要があり、キャリブレーションにかかる工数が膨大になってしまうという問題がある。
同様に、ハンドアイキャリブレーションについても、付加軸を有する自律ロボットでは、付加軸が設計値に対して傾きを有している可能性があるため、自律作業の精度を確保するためにはすべてのロボットおよび/またはカメラの位置に対応してハンドアイキャリブレーションにより変換パラメータを推定する必要があり、キャリブレーションにかかる工数が膨大になってしまうという問題がある。
本発明が解決しようとする課題は、付加軸を有する自律ロボットにおいて、キャリブレーションにかかる工数を低減できる自律ロボットとそのキャリブレーション方法を提供することである。
上記課題を解決するために、本発明の自律ロボットは、例えば、ロボットと、前記ロボットの周辺に設置され前記ロボットの可動域の少なくとも一部を視野に収めて撮影する撮像手段と、前記ロボットおよび/または前記撮像手段を移動させる1つ以上の付加軸と、を有する自律ロボットであって、前記付加軸の位置を移動させる付加軸移動制御部と、前記付加軸の位置の移動前後における移動量を取得する付加軸移動量取得部と、初期位置における前記ロボットと前記撮像手段との間の相対的な位置と姿勢の変換パラメータである初期位置姿勢変換パラメータを推定する初期校正実行部と、1つずつ選択された校正対象の前記付加軸を前記付加軸移動制御部により2地点以上に移動させて各地点で前記撮像手段により撮影した画像のデータ群に基づき、前記校正対象の前記付加軸の傾き角度のパラメータである付加軸傾き角パラメータを推定する付加軸傾き角度推定部と、前記初期位置姿勢変換パラメータと前記付加軸傾き角パラメータと前記付加軸の移動量とに基づいて任意の前記付加軸の位置の組合せにおける前記ロボットと前記撮像手段との間の相対的な位置と姿勢の変換パラメータを推定する相対位置姿勢推定部と、前記相対位置姿勢推定部で推定した変換パラメータを用いて任意の前記付加軸の位置の組合せにおいて前記ロボットと前記撮像手段との間の相対的な位置と姿勢を既知として自律作業を実行する自律作業実行部と、を有することを特徴とする。
また、本発明の自律ロボットのキャリブレーション方法は、例えば、ロボットと、前記ロボットの周辺に設置され前記ロボットの可動域の少なくとも一部を視野に収めて撮影する撮像手段と、前記ロボットおよび/または前記撮像手段を移動させる1つ以上の付加軸と、を有する自律ロボットのキャリブレーション方法であって、初期位置における前記ロボットと前記撮像手段との間の相対的な位置と姿勢の変換パラメータである初期位置姿勢変換パラメータを推定する初期校正実行工程と、校正対象の前記付加軸を1つずつ選択し、前記校正対象の前記付加軸を2地点以上に移動させ、各地点で前記撮像手段により撮影した画像のデータ群に基づき、前記校正対象の前記付加軸の傾き角度のパラメータである付加軸傾き角パラメータを推定する付加軸傾き角度推定工程と、を有することを特徴とする。
本発明によれば、付加軸を有する自律ロボットにおいて、キャリブレーションにかかる工数を低減できる。
実施例の自律ロボットの機能ブロック図。 実施例の自律ロボットのハードウェア構成の例を示す斜視図。 実施例の自律ロボットの座標系の例を示す斜視図。 実施例の自律ロボットの座標系間の初期関係を示す図。 実施例の初期校正実行部による初期校正実行工程のフローチャート。 実施例の付加軸傾き角度推定部によるロボットスライダの校正の例を示す図。 実施例の付加軸傾き角度推定部によるカメラスライダの校正の例を示す図。 実施例の付加軸傾き角度推定部によるカメラ回転体の校正の例を示す図。
以下、図面を用いて本発明の実施例を説明する。各図において、同一または類似の構成要素については同じ符号を付け、重複する説明は省略する。
(全体構成)
図1は、実施例の自律ロボットの機能ブロック図である。図2は、実施例の自律ロボットのハードウェア構成の例を示す斜視図である。
図2に示すように、実施例の自律ロボットは、ハードウェア構成として、例えば、ロボット31と、ロボット31の周辺に設置されロボット31の可動域の少なくとも一部を視野に収めて撮影する撮像手段41と、ロボット31および/または撮像手段41を移動させる1つ以上の付加軸とを有する。付加軸としては、例えば、スライダによる並進移動やモータによる回転運動などが考えられる。図2では、付加軸の例として、ロボットスライダ33と、カメラスライダ42と、カメラ回転体43とを有する例を示している。
図1に示すように、実施例の自律ロボットは、機能ブロックとして、例えば、初期校正実行部1と、付加軸傾き角度推定部3と、自律作業司令部5と、付加軸位置計画部6と、付加軸移動制御部7と、付加軸移動量取得部8と、相対位置姿勢推定部9と、自律作業実行部11とを有する。各機能ブロックは、一般的なコンピュータや制御装置などによって実現および実行できる。
付加軸移動制御部7は、付加軸の位置を移動させる。付加軸移動量取得部8は、付加軸の位置の移動前後における移動量を取得する。
初期校正実行部1は、初期位置におけるロボット31と撮像手段41との間の相対的な位置と姿勢の変換パラメータである初期位置姿勢変換パラメータ2を推定する。なお、図1では図を見やすくするために矢印を図示していないが、付加軸移動制御部7は、初期校正実行部1からの指令を受けて付加軸の位置を初期位置に移動させることができる。
付加軸傾き角度推定部3は、校正対象の付加軸の傾き角度のパラメータである付加軸傾き角パラメータ4を推定する。付加軸の傾き角度のパラメータは、付加軸の向き、あるいは、付加軸の姿勢のパラメータと言い換えることもできる。より具体的には、付加軸傾き角度推定部3は、1つずつ選択された校正対象の付加軸を付加軸移動制御部7により2地点以上に移動させて各地点で撮像手段41により撮影した画像のデータ群に基づき、校正対象の付加軸の付加軸傾き角パラメータ4を推定する。校正対象の付加軸が1つの場合は1つ選択して校正を行ったら終了し、校正対象の付加軸が複数ある場合は1つずつ選択して順番に校正を行い、すべて選択し終えたら終了する。なお、図1では図を見やすくするために矢印を図示していないが、付加軸移動制御部7は、付加軸傾き角度推定部3からの指令を受けて付加軸の位置を移動させることができるとともに、付加軸傾き角度推定部3は、付加軸移動量取得部8から付加軸の位置の移動前後における移動量を取得することができる。ここで、校正対象の付加軸が並進移動を行うスライダである場合は2地点、回転軸である場合は3地点で撮影を行えば付加軸傾き角パラメータ4を推定することが可能である。
ここまでが、キャリブレーション工程に関連する機能ブロックである。次に、キャリブレーション工程で推定した初期位置姿勢変換パラメータ2と付加軸傾き角パラメータ4とを用いて自律作業を実行するのに関連する機能ブロックについて説明する。
自律作業司令部5は、自律作業を指示する司令部である。本実施例では、ピッキング作業を指示する例を用いて説明する。付加軸位置計画部6は、自律作業司令部5からの指示を受け、ワークの位置に基づき作業が実行可能な付加軸の位置を計画する。付加軸移動制御部7は、付加軸位置計画部6で計画された計画情報に基づき、付加軸の位置を移動させる。付加軸移動量取得部8は、付加軸の移動量を取得する。
相対位置姿勢推定部9は、初期位置姿勢変換パラメータ2と付加軸傾き角パラメータ4と付加軸の移動量とに基づいて任意の付加軸の位置の組合せにおけるロボット31と撮像手段41との間の相対的な位置と姿勢の変換パラメータを推定する。自律作業の実行時においては、相対位置姿勢推定部9は、付加軸の移動があった場合(図1の「移動有」の場合)には、付加軸の移動後である現在作業位置におけるロボット31と撮像手段41との間の相対的な位置と姿勢の変換パラメータである現在位置姿勢変換パラメータ10を推定する。なお、付加軸の移動がなかった場合(図1の「移動無」の場合)には、現在位置姿勢変換パラメータ10の再計算による更新は省略できる。
自律作業実行部11は、相対位置姿勢推定部9で推定した変換パラメータである現在位置姿勢変換パラメータ10を用いて任意の付加軸の位置の組合せにおいてロボット31と撮像手段41との間の相対的な位置と姿勢を既知として自律作業を実行する。図1では図を見やすくするために矢印を図示省略しているが、自律作業実行部11は、自律作業司令部5からの指令を受けてロボット31の制御も行い、例えばピッキングなどの自律作業を行う。
本実施例によれば、付加軸が設計値に対して傾きを有している場合であっても、少ないキャリブレーション工数(各付加軸毎に2地点または3地点の撮影)で付加軸傾き角パラメータ4を推定でき、初期位置姿勢変換パラメータ2と付加軸傾き角パラメータ4と付加軸の移動量とに基づいて任意の付加軸の位置の組合せにおけるロボット31と撮像手段41との間の相対的な位置と姿勢の変換パラメータを推定して自律作業を行うことができる。したがって、すべての付加軸の位置の組合せ(すべてのロボット31と撮像手段41の位置の組合せ)に対してその都度ハンドアイキャリブレーションを行って変換パラメータを推定する必要がないので、キャリブレーションにかかる工数を低減できる。
以降は、説明の分かりやすさのため、はじめに自律作業実行部11におけるハードウェア装置の概要を述べ、次に初期校正実行部1と付加軸傾き角度推定部3にて使用するハードウェア装置および座標系について示した後、初期校正実行部1と、付加軸傾き角度推定部3の詳細について述べる。そして、自律作業司令部5、付加軸位置計画部6、付加軸移動制御部7、付加軸移動量取得部8、相対位置姿勢推定部9、自律作業実行部11による自律作業実行のフローについて詳細に説明する。
(自律作業実行部11におけるハードウェア装置)
図2は、実施例の自律ロボットのハードウェア構成の例を示す斜視図である。図2は、自律作業実行部11にてピッキング作業を行うときのハードウェア構成の例を示している。本実施例における作業内容は、作業台21の上に置かれた容器22に、容器23および容器24に格納されたワーク群を、自律作業司令部5による作業指示(ワーク種類、個数など)に基づき移動させるピッキングアンドプレイス(以降、「ピッキング作業」とも称する)とする。
本実施例の自律ロボットのハードウェア構成としては、ロボット31と、ロボット31の先端に設置されワークを把持するハンド32と、ロボット31を水平方向に移動させる単軸のロボットスライダ33と、ロボット31とロボットスライダ33とを接続するロボット支柱34と、ワークを撮影することでワークに関する2次元画像および/または3次元点群を取得する撮像手段41と、撮像手段41を上下方向に移動させるカメラスライダ42と、回転軸を中心に撮像手段41をモータで水平方向に回転移動させるカメラ回転体43と、カメラスライダ42およびカメラ回転体43が設けられたカメラ支柱44とを有する。
ロボット31としては、例えば多軸のロボットアームを用いることができる。撮像手段41としては、例えばRGB-Dカメラを用いることができる。RGB-Dカメラは、可視画像を取得するRGBカメラ以外に、対象物までの距離情報を画像として取得可能なDepthカメラを有しているカメラである。撮像手段41としては、これに限られず、可視画像または距離画像を取得可能な撮像装置であればよいが、距離画像を取得可能である方が望ましい。
なお、本実施例では、自律ロボットが行う作業はワークを所定の位置へと移動させるピッキング作業とし、ロボット31として多軸のロボットアームを用い、撮像手段41としてRGB-Dカメラを用い、ロボット31を移動させる付加軸として水平方向のロボットスライダ33を用い、撮像手段41を移動させる付加軸として上下方向のカメラスライダ42および水平方向に回転するカメラ回転体43を用いる場合について説明するが、この例に限定されず、本実施例で説明するキャリブレーション方法は付加軸を有する様々な自律ロボットに対して適用が可能である。
(初期校正実行部1と付加軸傾き角度推定部3にて使用するハードウェア装置および座標系)
図3は、実施例の自律ロボットの座標系の例を示す斜視図である。図3は、初期校正実行部1および付加軸傾き角度推定部3にて使用するハードウェア装置についても示している。
図3では、ロボット31の手先に、形状が既知であり、撮像手段41で撮影したデータにより撮像手段41に対する相対的な位置と姿勢が特定可能な模様を印刷した平面状のマーカ35を取り付けた例を示しているが、この例に限らない。例えば、マーカ35としては、撮像手段41で撮影したデータにより撮像手段41に対する相対的な位置と姿勢が特定可能であれば、球状のマーカでも良いし、ロボット31自体に形状が既知の模様を印刷してもよく、また、模様が印刷されたシールを貼り付けてもよい。
本実施例における座標系は、ロボット基部の座標系であるロボット座標系C1と、ロボット支柱座標系C2と、ロボットスライダ座標系C3と、ロボット先端座標系C4と、マーカ座標系C5と、撮像手段の光学中心の座標系であるカメラ座標系C6と、カメラ回転体座標系C7と、カメラスライダ座標系C8とがある。以降は、本実施例におけるこれらの座標系について説明する。なお、座標系の原点や向きおよび座標系間の関係は、本実施例における定義に限定するものではない。
ロボット座標系C1は、ロボット31の基部に定義された座標系であり、一般的にロボット31の上部をZ軸の正方向とする座標系である。
ロボット支柱座標系C2は、形式的に定義される。本実施例では、ロボット座標系C1から形式的に並進移動させた位置に原点を設定し、向きはロボット座標系C1と同様と定義する。つまり、ロボット座標系C1とロボット支柱座標系C2との間の相対的な位置と姿勢のパラメータは常に一定である。多くの場合、ロボットスライダ33は床などの水平面に設置されるため、その場合はロボット座標系C1からロボット支柱34の高さ分だけ下方向にオフセットした位置に、ロボット支柱座標系C2を定義することができる。
ロボットスライダ座標系C3は、ロボットスライダ33に定義された座標系であり、ロボット31の移動方向をY軸、それと直交する方向をX軸とする座標系である。原点は、ロボットスライダ33の移動を指示する際のゼロ位置として設定するが、例えばゼロ位置からオフセットさせた任意の位置に定義してもよい。
ロボットスライダ座標系C3と、ロボット座標系C1およびロボット支柱座標系C2との間の相対的な位置は、ロボットスライダ33上でロボット31の位置を移動させるたびに変化するが、ロボットスライダ座標系C3におけるロボット支柱座標系C2の原点の位置および移動量は、ロボットスライダ33のエンコーダ値より高精度に取得可能であり、ロボット支柱34との間の相対的な位置と姿勢が既知のロボット座標系C1についても、ロボットスライダ座標系C3からの相対的な位置を高精度に取得可能である。
ロボットスライダ座標系C3と、ロボット座標系C1およびロボット支柱座標系C2との間の相対的な姿勢は、ロボットスライダ33上でロボット31の位置を移動させた場合でも不変であり、単一の姿勢のパラメータで表現することができる。このパラメータは、例として自律ロボットの設計値として取得することも考えられるが、この値は設置時のズレなどにより誤差が生じる可能があるので、本実施例では未知として扱う。
ロボット先端座標系C4は、ロボット31の先端に定義された座標系であり、ロボット31のエンコーダ値により、ロボット座標系C1に対する相対的な位置と姿勢を高精度に取得可能である。本実施例では、ロボット先端座標系C4をハンド32の座標系と異なるものとして定義しているが、ロボット先端座標系C4とロボットハンド座標系との間の相対的な位置と姿勢のパラメータをツールキャリブレーション等の公知技術により既知とした上で、ロボットハンド座標系をロボット先端座標系C4として扱ってもよい。
マーカ座標系C5は、マーカ35の表面中央を原点、マーカ平面と直交する方向をZ軸とするよう定義する。マーカ35を固定する治具により、ロボット先端座標系C4に対して、相対的な位置と姿勢は常に一定であるとみなせる。一方で、ロボット先端座標系C4に対する相対的な位置と姿勢のパラメータは、治具の設計値として取得することも考えられるが、この値は治具の作成・設置時のズレにより誤差が生じる可能性があり、未知として扱うことが多く、本実施例でも未知として扱う。
カメラ座標系C6は、撮像手段41の光学中心を原点として、光軸方向をZ軸、光軸に直交する方向をXY軸とする座標系である。詳細は自律作業実行部11にて述べるが、自律作業実行部11が自律作業を実施するには、撮像手段41で撮影したワークの位置情報をロボット31が用いるために、ロボット座標系C1とカメラ座標系C6との間の相対的な位置と姿勢の変換パラメータが必要となる。しかしこれらは未知であり、また、ロボットスライダ33やカメラ回転体43やカメラスライダ42の位置が変化することで、変換パラメータも変化する。本実施例は、このような場合でも、ロボット座標系C1とカメラ座標系C6との間の相対的な位置と姿勢の変換パラメータである現在位置姿勢変換パラメータ10(図1参照)を推定し、自律作業を行うためのキャリブレーション方法およびこれを実施する自律ロボットについて説明する。
カメラ回転体座標系C7は、カメラ座標系C6と長さが未知のリンクを介して接続された座標系である。カメラ回転体座標系C7とカメラ座標系C6との間の相対的な位置と姿勢についても、正確なリンクの長さや撮像手段41の光軸の向きが不明のため未知となる。原点は後述するカメラスライダ座標系C8のZ軸上の位置、姿勢はカメラスライダ座標系C8と同様の方向となるよう形式的に定義する。本実施例では、カメラ回転体43の回転角が0度の時、カメラ回転体座標系C7のx軸上にカメラ接続部のリンクが位置し、撮像手段41が容器23の中央部を見るようハードウェア設計されていることを前提とする。
カメラスライダ座標系C8は、撮像手段41およびカメラ回転体43を上下に移動させる機構のゼロ位置を原点として持ち、カメラスライダ42の移動方向をZ軸として有する座標系である。カメラスライダ座標系C8に対するカメラ回転体座標系C7の位置および移動量は、カメラスライダ42のエンコーダ値により高精度に既知とできる。
例えばカメラスライダ座標系C8のZ軸方向が、ロボット座標系C1のZ軸と同様の軸線上を向いていれば、カメラスライダ42を動かした際の撮像手段41のロボット31に対する相対的な位置の変化は、カメラスライダ42の移動量の分だけZ軸方向にオフセットすることで求めることも考えられるが、据え付け時の誤差によって生じるカメラスライダ42の傾き角度や、カメラスライダ42の軸方向をどの方向にするかという設計によって、カメラスライダ座標系C8のZ軸方向がロボット座標系C1のZ軸と必ずしも同じ軸線上を向くとは限らない。
図4は、実施例の自律ロボットの座標系間の初期関係を示す図である。校正を行う前の座標系間の結合の関係(初期関係)を整理して図4に示した。座標系間を結ぶ線の種類と座標系間の関係との対応表についても図4に示している。
C1とC2との間は、相対的な位置と姿勢が不変かつ既知である。C2とC3との間は、相対的な位置と姿勢がロボットスライダ33により変動するが、位置および移動量はロボットスライダ33のエンコーダ値より既知で、ロボット31を設置するときのZ軸周りの回転とロボットスライダ33の傾き角度により姿勢は未知である。C1とC4との間は、相対的な位置と姿勢が変動するが、ロボット31のエンコーダ値により位置と姿勢は既知である。C4とC5との間は、相対的な位置と姿勢が不変であるが、位置と姿勢は未知である。C4とC6との間は、相対的な位置と姿勢が各種付加軸により変動し、また、相対的な位置と姿勢が未知である。C6とC7との間は、相対的な位置と姿勢が変動し、また、リンクの長さと回転軸の傾き角度も未知であるため位置と姿勢は未知である。C7とC8との間は、相対的な位置と姿勢はカメラスライダ42により変動するが、位置および移動量はエンコーダ値により既知であり、姿勢は形式的に同一としているため既知である。
本実施例では、自律作業を行う上で必要となるロボット座標系C1とカメラ座標系C6との間の相対的な位置と姿勢の変換パラメータ(現在位置姿勢変換パラメータ10)を推定するため、はじめに初期位置におけるロボット座標系C1とカメラ座標系C6との間の相対的な位置と姿勢の変換パラメータ(初期位置姿勢変換パラメータ2)をハンドアイキャリブレーションにより推定する。次に、付加軸であるロボットスライダ33、カメラスライダ42のZ軸の傾き角度を、それぞれのスライダを移動させた際に撮像手段41より撮影した画像のデータ群とスライダの移動量に基づいて推定する。また、カメラ回転体43により撮像手段41を移動させた際に撮影した画像のデータ群とカメラ回転体43の回転角度に基づいて、撮像手段41の回転の半径と回転軸の傾き角度を推定する。そして、これらの情報を付加軸傾き角パラメータ4として格納し、各付加軸によりロボット31および/または撮像手段41が移動した場合に、初期位置姿勢変換パラメータ2と付加軸の移動量と付加軸傾き角パラメータ4とを用いることで、現在位置姿勢変換パラメータ10を推定するキャリブレーション手段を提供する。
なお、ロボットスライダ33およびカメラスライダ42のZ軸の傾き角度の推定と、カメラ回転体43による撮像手段41の回転の半径と回転軸の傾き角度の推定の順序は、どちらが先でも良く、また、必ずしもすべての付加軸について推定を行わず、設計値を使うことで十分自律作業が可能な場合は、設計値を用いてもよい。また、回転の半径についても推定を行わず設計値を用いてもよい。
(初期校正実行部1)
図5は、実施例の初期校正実行部による初期校正実行工程のフローチャートである。
初期校正実行部1は、初期位置におけるロボット31と撮像手段41との間の相対的な位置と姿勢の変換パラメータである初期位置姿勢変換パラメータ2を推定する初期校正実行工程を行う。
本実施例における付加軸の初期位置として、ロボットスライダ33はロボット31が容器23にアプローチ可能な位置、カメラスライダ42は撮像手段41が容器23の上面高さを3次元計測可能な高さ、カメラ回転体43は回転角度が0度であり撮像手段41が容器23の中央を見る位置にそれぞれ設定するものとして説明する。
初期校正実行部1で行う初期校正実行工程の作業の手順を説明すると、事前準備として、(S1)ロボット31にマーカ35を設置し、(S2)付加軸を制御してロボット31と撮像手段41を初期位置に移動し、(S3)以降の作業で付加軸が動かないよう付加軸を固定(ロック)する。次に、校正用のデータ収集として、(S4)ロボット31の姿勢を変更することで撮像手段41に対するマーカ35の相対的な位置と姿勢を変更し、(S5)撮像手段41によりマーカ35を撮影し、(S6)撮影時のロボット31の姿勢と画像のデータの組を記憶し、(S7)記憶域に所定の数のデータの組が格納されているかを判定し、格納されていない場合には(S4)に戻りデータの収集を継続する。格納されている場合には、(S8)記憶した複数のロボット31の姿勢と画像のデータの組から、初期位置におけるロボット31と撮像手段41との間の相対的な位置と姿勢の変換パラメータ(初期位置姿勢変換パラメータ2)を推定する。
なお、ロボット31自体にマーカ35を常に設置している場合は(S1)を省略してもよい。(S2)における初期位置は、事前に登録しておいてもよいし、以降のデータ収集および付加軸の校正の作業が容易になるよう、環境情報を用いて決定してもよい。例えば、環境情報としてCADデータを用いて障害物がなさそうな場所を推定して初期位置を決定するなどである。(S4)にてロボット31が変更する姿勢の集合は、事前にデータベースに登録しておいてもよいし、データ収集が容易になる姿勢の集合を、環境情報をもとに決定してもよいし、作業者がロボット31を制御するティーチングペンダントなどのコントローラを用いて決定してもよい。また、初回のステップではロボット31の姿勢を変更せず、初期姿勢のまま撮影してもよい。また、(S5)の各ステップでは撮影した画像からマーカ35を検出可能か否かの判定を行い、検出可能な場合にのみ(S6)にてロボット31の姿勢と画像のデータの組を記憶域に保存することで、(S8)の推定に使用できるデータの組の数を担保してもよい。以降は、(S8)の処理について数式を用いて詳しく説明する。
(S8)における推定の原理について説明する。初期位置におけるロボット座標系C1からカメラ座標系C6への変換パラメータをZ、ロボット先端座標系C4からマーカ座標系C5への変換パラメータをXとする。また、(S6)にて記憶したN個のロボット先端座標系C4からロボット座標系C1への変換パラメータをBi(i=1,2,…,N)とし、そのときの撮影画像から推定したマーカ座標系C5からカメラ座標系C6への変換パラメータをAi(i=1,2,…,N)とする。この時、各AiおよびBiの組は、
ZBi=AiX …(1)
という拘束条件を満たす。ただし、実際には観測データ(ロボット31のエンコーダ値や撮影した画像から推定したマーカ35の位置と姿勢など)の誤差により厳密に式(1)は成立しないため、すべての観測データの組に対して尤もらしく式(1)を満たす変換パラメータZを求める手法を一般的にハンドアイキャリブレーションと呼び、最小二乗法などの手法を用いて、最終的な変換パラメータZを推定する。このとき、Biはロボット31のエンコーダ値に基づいて既知にでき、Aiは撮影された画像に基づいて既知にでき、XとZは未知としてZを推定する。この変換パラメータZが初期位置姿勢変換パラメータ2である。
なお、初期校正実行部1は、撮像手段41により撮影したマーカ35の可視画像または距離画像に基づいて撮像手段41に対するマーカ35の相対的な位置と姿勢を推定するマーカ位置姿勢推定部を有しており、初期校正実行部1は、この推定結果に基づいてAiを推定できる。
(付加軸傾き角度推定部3)
付加軸傾き角度推定部3では、各付加軸の傾き角度の校正を行う。付加軸傾き角度推定部3は、校正対象の付加軸を1つずつ選択し、校正対象の付加軸を2地点以上に移動させ、各地点で撮像手段41により撮影した画像のデータ群に基づき、校正対象の付加軸の傾き角度のパラメータである付加軸傾き角パラメータ4を推定する付加軸傾き角度推定工程を行う。本実施例では、図6を用いてロボットスライダ33、図7を用いてカメラスライダ42、図8を用いてカメラ回転体43における校正の方法を説明する。
なお、付加軸傾き角度推定部3は、初期校正実行部1と同様に、撮像手段41により撮影したマーカ35の可視画像または距離画像に基づいて撮像手段41に対するマーカ35の相対的な位置と姿勢を推定するマーカ位置姿勢推定部を有している。なお、このマーカ位置姿勢推定部の機能は初期校正実行部1と同様であるため、初期校正実行部1と付加軸傾き角度推定部3とでマーカ位置姿勢推定部を共有する構成としてもよい。
そして、付加軸傾き角度推定部3は、各地点で撮影された画像に基づいてマーカ位置姿勢推定部により推定されたマーカ35の位置の変化に基づいて、校正対象の付加軸における付加軸傾き角パラメータ4を推定する。
(付加軸傾き角度推定部3:ロボットスライダ33の校正)
図6は、実施例の付加軸傾き角度推定部によるロボットスライダの校正の例を示す図である。図6では、ロボットスライダ33を校正するフローチャートと、対応する上面図を示している。図の見やすさのため、作業台21の記載は省略している。以降の作業では、カメラスライダ42およびカメラ回転体43の位置と姿勢は初期校正実行部1による初期校正実行時と同じとし、動かないように固定しておく。
付加軸傾き角度推定部3は、校正対象の付加軸が並進移動を行うスライダである場合に、2地点で撮影されたマーカ35の画像に基づいてマーカ位置姿勢推定部により推定されたマーカの2地点の位置に基づいて、スライダの軸の傾き角度を付加軸傾き角パラメータ4として推定する。
校正の手順は、(S11)ロボットスライダ33を制御しロボット31を地点Aに移動し、(S12)ロボット31の姿勢を制御しマーカ35を撮像手段41に向けた後、以降の工程でロボット31の姿勢が動かないように姿勢を固定(ロック)し、(S13)撮像手段41でマーカ35を撮影し、撮影した画像により撮像手段41に対するマーカ35の相対的な位置P1を推定し、(S14)ロボットスライダ33を制御しロボット31を地点Bに移動し、(S15)撮像手段41でマーカ35を撮影し、撮影した画像により撮像手段41に対するマーカ35の相対的な位置P2を推定する。最後に、(S16)位置P1と位置P2に基づいてロボットスライダ33の付加軸傾き角パラメータ4を推定する。具体的には、位置P1と位置P2に基づいてカメラ座標系C6おけるマーカ35の移動の軌跡である直線の傾きを計算する。2回の撮影の間にロボット31の姿勢が変動していないので、この直線の傾きは、カメラ座標系C6に対するロボットスライダ座標系C3の傾きに等しい。したがって、この直線の傾きから、カメラ座標系C6に対するロボットスライダ33の姿勢のパラメータ、すなわち、付加軸傾き角パラメータ4が求まる。
ここで、(S16)ではカメラ座標系C6におけるロボットスライダ33の付加軸傾き角パラメータ4を求めて格納する例を示したが、これに限られず、初期校正実行部1で推定した初期位置姿勢変換パラメータ2を用いてカメラ座標系C6におけるロボットスライダ33の付加軸傾き角パラメータ4をロボット座標系C1におけるロボットスライダ33の付加軸傾き角パラメータ4に変換して格納してもよいし、両者を格納するようにしてもよい。
なお、地点Aと地点Bにおける撮影時のロボット31の姿勢は、撮像手段41からマーカ35を高精度に計測可能な姿勢である必要がある。これらのロボット31の姿勢は、事前に定めておいてもよいし、撮像手段41の画角や環境情報から自動で決定してもよい。特に、位置P1と位置P2の2点の位置関係から直線の傾きを推定する際は、2点間の距離が離れている方が推定時の誤差が小さくなる。そこで、画像の左右、もしくは上下など離れた位置にマーカ35が映るよう、2点の位置を定めることで、高精度に付加軸傾き角パラメータ4を推定することができる。また、撮像手段41の視野周辺部に画像歪みがある場合は、事前に画像歪みが大きい領域を避けて設定した視野中央領域の範囲を定義し、設定した視野中央領域の範囲内で、互いに離れた位置、例えば、互いに異なる辺に近い位置となるようにそれぞれマーカ35を撮影した画像を用いることで、画像歪みが大きい撮像手段でも高精度に付加軸傾き角パラメータ4を推定できる。これらの手法は、付加軸が、撮像手段41の光軸に直交する方向に移動するスライダまたは撮像手段41の光軸に沿った軸を有する回転軸である場合に特に有効であるが、このような付加軸に限られずに適用してもよい。また、撮像手段41からマーカ35を高精度に計測可能となるよう、例えば焦点距離付近にマーカ35が映るようロボット31の姿勢を決定することも有効である。
また、地点Aと地点Bのうちの一方、例えば、地点Aとして、初期校正実行部1で用いた初期位置を用い、地点Aにおいて撮像するデータを、初期校正実行部1にて収集したデータで代用することで、初期校正実行部1と付加軸傾き角度推定部3におけるトータルの撮影回数を減らしてもよい。
また、位置P1と位置P2の2点に加えて、追加で地点Aと地点Bとは異なる地点で追加の撮影を行い、3点以上の位置のデータを用いて直線の傾きを求めることで、より高精度にロボットスライダ33の付加軸傾き角パラメータ4を推定してもよい。ただし、その場合は撮影回数が増加するため、キャリブレーションにかかる工数が増えてしまうというデメリットもある。
以上により、ロボットスライダ33の付加軸傾き角パラメータ4を推定できる。
(付加軸傾き角度推定部3:カメラスライダ42の校正)
図7は、実施例の付加軸傾き角度推定部によるカメラスライダの校正の例を示す図である。図7では、カメラスライダ42を校正するフローチャートと、対応する斜視図を示している。図の見やすさのため、作業台21の記載は省略している。以降の作業では、ロボットスライダ33およびカメラ回転体43の位置と姿勢は初期校正実行部1による初期校正実行時と同じとし、動かないように固定しておく。
以降の説明では、ロボットスライダ33の校正からの違いを中心に説明し、重複する説明は省略する。
校正の手順の(S21)から(S26)は、(S11)から(S16)に対応する。なお、校正対象の付加軸であるロボットスライダ33はカメラスライダ42に変更されている。また、地点Aは地点Cに、地点Bは地点Dに、位置P1は位置P3に、位置P2は位置P4に変更されている。最終的に、(S26)においてカメラスライダ42の付加軸傾き角パラメータ4を推定する。
なお、直線の傾きを高精度に推定するためには、カメラスライダ42の移動量は大きい方が望ましいが、撮像手段41のピントが合わない距離でマーカ35を撮影し位置を求めた場合は誤差が大きくなる可能性がある。そこで、撮像手段41の合焦距離の範囲内の手前と奥のそれぞれにおいてマーカ35を撮影した画像に基づいて、付加軸傾き角パラメータ4を推定することが望ましい。また、画像の視野中央部にマーカ35を映すことで、画像の歪みの影響を低減することが望ましい。これらの手法は、付加軸が、撮像手段41の光軸に沿った方向に移動するスライダまたは撮像手段41の光軸に直交する軸を有する回転軸である場合に特に有効であるが、このような付加軸に限られずに適用してもよい。
また、撮像手段41を移動させる付加軸の場合は、ロボット31に設置したマーカ35用いる以外の方法もある。例えば、作業台21上に設置した形状が既知のマーカ35を用いる方法もある。具体的には、(S22)ではロボット31は撮像手段41の画角から外れるよう姿勢を変更し、(S23)および(S25)では作業台21上に設置したマーカ35を撮影し、(S26)でその位置P3と位置P4に基づいてカメラスライダ42の付加軸傾き角パラメータ4を推定することもできる。この方法は、作業台21とロボット31とが接触しやすいような環境において特に有効である。この時、マーカ35としては、ロボット31に設置したものを取り外して作業台21上に設置してもよいし、別のマーカ35を用意して設置してもよい。
以上により、カメラスライダ42の付加軸傾き角パラメータ4を推定できる。
(付加軸傾き角度推定部3:カメラ回転体43の校正)
図8は、実施例の付加軸傾き角度推定部によるカメラ回転体の校正の例を示す図である。図8では、カメラ回転体43を校正するフローチャートと、対応する斜視図を示している。図の見やすさのため、作業台21の記載は省略している。以降の作業では、ロボットスライダ33およびカメラスライダ42の位置と姿勢は初期校正実行部1による初期校正実行時と同じとし、動かないように固定しておく。
付加軸傾き角度推定部3は、校正対象の付加軸が撮像手段41を移動させる回転軸である場合に、3地点で撮影されたマーカ35の画像に基づいてマーカ位置姿勢推定部により推定されたマーカの3地点の位置と、回転軸の回転角度とに基づいて、回転軸から撮像手段41までの半径(リンクの長さ)を推定するとともに、回転軸の傾き角度を付加軸傾き角パラメータ4として推定する。
以降の説明では、ロボットスライダ33の校正からの違いを中心に説明し、重複する説明は省略する。
回転軸の校正の場合には、3地点で撮影を行うため、校正の手順の(S31)から(S35)は、(S11)から(S15)に対応するが、新たに(S36)(S37)が追加されており、また、(S16)に代えて(S38)を行っている。校正対象の付加軸であるロボットスライダ33はカメラ回転体43に変更されている。また、地点Aは地点Eに、地点Bは地点Fに、位置P1は位置P5に、位置P2は位置P6に変更されている。さらに、(S36)でカメラ回転体43を制御し、撮像手段41を地点Gに移動し、(S37)で撮像手段41でマーカ35を撮影し、マーカ35の相対的な位置P7を推定する。最後に、(S38)において、位置P5~位置P7と回転角度に基づいて半径とカメラ回転体43の付加軸傾き角パラメータ4を推定する。
(S38)における具体的な推定方法には様々な方法が考えられ、以下に例示するが、これに限られるものではない。一例としては、位置P5、位置P6、位置P7とカメラ回転体43のエンコーダ値から得た回転角度とに基づいて、カメラ座標系C6おけるマーカ35の移動の軌跡である円弧の中心と半径と傾きを計算する。3回の撮影の間にロボット31の姿勢とリンクの長さが変動していないので、この円弧の半径は回転軸から撮像手段41までの半径(リンクの長さ)に等しく、円弧の傾きは、カメラ座標系C6に対するカメラ回転体座標系C7の傾きに等しい。したがって、この円弧の半径と傾きから、回転軸から撮像手段41までの半径(リンクの長さ)と、カメラ座標系C6に対するカメラ回転体43の姿勢のパラメータ、すなわち、付加軸傾き角パラメータ4が求まる。
また、例えば、リンクの長さは回転体の移動前後でも不変であるため、3次元空間上で位置P5、位置P6、位置P7のうちの2点を結ぶ線の長さを底辺とし、その2点間の回転角度を頂角とする2等辺三角形が少なくとも1つ計算できるので、その2等辺三角形の底辺ではない辺の長さがリンクの長さに相当するので、半径が求まる。また、3次元空間上で位置P5、位置P6、位置P7を用いて2つのベクトルを求め、2つのベクトルが作る平面の法線方向が円弧の傾きに相当するので、付加軸傾き角パラメータ4が求まる。
高精度に付加軸傾き角パラメータ4を推定するために、撮像手段41の視野周辺部に存在する画像歪みの領域を避けることや、合焦距離の範囲内で撮影することや、なるべく離れた位置となるように撮影することについては、ロボットスライダ33やカメラスライダ42の場合と同様である。また、カメラスライダ42の場合と同様に、作業台21上に設置したマーカ35を撮影するようにしてもよい。また、4点以上の位置のデータを用いてより高精度に付加軸傾き角パラメータ4を推定してもよい。
以上により、カメラ回転体43の付加軸傾き角パラメータ4を推定できる。
(自律作業司令部5から自律作業実行部11まで)
次に、初期校正実行部1により推定した初期位置姿勢変換パラメータ2と、付加軸傾き角度推定部3により推定した付加軸傾き角パラメータ4を用いて、自律作業司令部5により指示した作業を自律作業実行部11で実際に実行する手順を説明する。本実施例では、単一種類のワークが複数格納された容器23および容器24から、ワークを5つずつピックし、容器22内にプレイスする作業を想定する。
はじめに、自律作業司令部5により、容器23、容器24の順でワークを5つずつピックし、容器22へプレイスするよう指示が生成される。この時、各付加軸は初期位置にあるため、事前に推定した初期位置姿勢変換パラメータ2を、現在位置姿勢変換パラメータ10として登録する。
次に、付加軸位置計画部6により、ワークの高精度な計測が可能なカメラスライダ42およびカメラ回転体43の位置、並びに、ワークをピックして持ち上げる動作の軌道計画が可能なロボットスライダ33の位置を計画する。
具体的には、まず容器の種類に基づき撮影の基準位置となるカメラスライダ42の位置およびカメラ回転体43の角度を決定する。本実施例では、初期校正実行部1で用いた初期位置として、容器23内にロボット31がアプローチ可能であり、かつ撮像手段41が容器23の上面中央を向くような初期位置を生成しているため、容器23のワークがピック対象である場合は初期位置を基準位置とする。容器24については別途、カメラ回転体43により容器24が画角中心付近に映る位置を事前に定義して基準位置として登録しておく。そして、基準位置から撮像手段41を用いて容器23内のワークを計測し、容器23内に高精度な3次元計測および認識が可能なワークの有無を判定する。
例えば、容器23内にワークが多く格納され容器23の上面までワークがある場合は、初期位置における撮像手段41の計測精度が許容誤差内かつロボット31もピックの軌道が生成可能であり、付加軸が初期位置でピック作業ができるため、付加軸の移動は不要と計画する。一方、容器23の底にピック対象のワークがある場合は、撮像手段41の距離が遠く計測精度が許容誤差範囲外のため移動要と判定し、この場合はカメラスライダ42をワークに対して、事前に定めた撮像手段41が高精度に計測可能な範囲内となる高さに撮像手段41を移動するよう計画する。また、ロボット31の軌道計画の可否についても考慮し、例としてワークが容器23の角にあり、初期姿勢ではピック動作が困難であると判定した場合には、ロボットスライダ33の位置を横にずらすことで、軌道計画が可能となる付加軸の位置を計画する。
次に、付加軸移動制御部7は、付加軸位置計画部6において付加軸の移動が要と判定された場合は、付加軸を計画された付加軸の位置へ移動させる。
次に、付加軸移動量取得部8は、付加軸位置計画部6において付加軸の移動が要と判定された場合には、移動した付加軸の移動量を取得し、相対位置姿勢推定部9に入力する。なお、この時に取得する移動量は、付加軸位置計画部6において計画した指令値でも、付加軸から取得したエンコーダ値でも、いずれでも良い。付加軸位置計画部6において付加軸の移動が不要と判定された場合には、そのまま自律作業実行部11へ遷移する。
相対位置姿勢推定部9では、事前に登録した初期位置姿勢変換パラメータ2および付加軸傾き角パラメータ4と、付加軸移動量取得部8から取得した付加軸の移動量とに基づいて、付加軸の移動後である現在の付加軸の位置の組合せにおけるロボット31と撮像手段41との間の相対的な位置と姿勢の変換パラメータである現在位置姿勢変換パラメータ10を推定する。
現在のロボット座標系C1とカメラ座標系C6との間の相対的な位置と姿勢の変換パラメータrcTcc(現在位置姿勢変換パラメータ10)は、現在位置のロボット31から初期位置のロボット31への相対的な位置と姿勢の変換パラメータrcTrsと、初期位置におけるロボット31から撮像手段41への相対的な位置と姿勢の変換パラメータrsTcs(初期位置姿勢変換パラメータ2)と、初期位置のカメラ位置から現在のカメラ位置への相対的な位置と姿勢の変換パラメータcsTccとを用いて、次の式(2)の通り表現でき、
rcTcc=rcTrs×rsTcs×csTcc …(2)
現在位置姿勢変換パラメータ10は式(2)により計算できる。
ここで、現在位置のロボット31から初期位置のロボット31への相対的な位置と姿勢の変換パラメータrcTrsは、ロボットスライダ33の移動量およびロボットスライダ33の付加軸傾き角パラメータ4により求まるので既知とできる。また、初期位置のカメラ位置から現在のカメラ位置への相対的な位置と姿勢の変換パラメータcsTccも同様に、カメラスライダ42およびカメラ回転体43の移動量、カメラスライダ42およびカメラ回転体43の付加軸傾き角パラメータ4、並びに、回転の半径により求まるので既知とできる。さらに、初期位置におけるロボット31から撮像手段41への相対的な位置と姿勢の変換パラメータrsTcsは、初期位置姿勢変換パラメータ2であるから、既知である。したがって、相対位置姿勢推定部9は、式(2)により現在位置姿勢変換パラメータ10を推定できる。なお、付加軸傾き角パラメータ4がカメラ座標系C6を基準に表現されている場合は、必要に応じて初期位置姿勢変換パラメータ2を使ってロボット座標系C1を基準にするよう変換する。
自律作業実行部11では、撮像手段41により撮像した画像に基づいて、カメラ座標系C6におけるワークの位置と姿勢のパラメータPcを推定する。続いて、格納された現在位置姿勢変換パラメータ10、すなわち、現在のロボット座標系C1とカメラ座標系C6との間の相対的な位置と姿勢の変換パラメータrcTccを用いて、ロボット座標系C1におけるワークの位置と姿勢のパラメータPrを、
Pr=rcTcc×Pc …(3)
式(3)に基づき計算する。最後に、パラメータPrを用いて軌道計画を行い、ロボット31でワークをピックし、容器22にプレイスする。この時、撮像手段41による撮像データは、撮像手段41を移動させる付加軸の位置が付加軸位置計画部6および付加軸移動制御部7により変更されていない場合は、付加軸位置計画部6で撮影したデータを用いることで、撮影に必要なタクトタイムを短縮することが可能である。
なお、パラメータPrを一度求めた後であれば、ピックアンドプレイスの実行時に、ロボット31と撮像手段41との間の相対的な位置と姿勢が既知である必要はない。そのため、例えばピック動作の際に撮像手段41のカメラ回転体43を用いて撮像手段41をロボット31の動作範囲外に移動させておくことで、軌道計画を容易にしてもよい。また、プレイス動作においても、ロボットスライダ33を移動させ容器22にプレイスしやすい位置にロボット31を移動させるよう軌道計画してもよい。
以上により1つのワークをピッキングした後、再び付加軸位置計画部6に戻る。付加軸位置計画部6では再び容器内のワークの撮像を行うが、前回のピッキング時と同一の容器からワークをピッキングする場合には、前回ピッキング作業を行った際にワークを認識した時の撮像手段41の位置を初期位置とするよう各付加軸の位置を決定しておくことで、付加軸の移動が不要なケースでは、付加軸位置計画部6において撮影したデータにより自律作業実行部11による自律作業が可能となり、付加軸の位置の計画と自律作業の実行向けに2度の撮影を行う頻度が低減するため、タクトタイム短縮に有効である。
以上のループを繰り返す中で、ロボット31と撮像手段41との間の相対的な配置は動的に変動するが、事前に初期位置姿勢変換パラメータ2と、各付加軸の付加軸傾き角パラメータ4とを推定しておくことで、自律作業の実行中に付加軸の位置が変動した場合であっても、初期位置姿勢変換パラメータ2と付加軸傾き角パラメータ4と付加軸の移動量を用いて現在の付加軸の位置におけるロボット31と撮像手段41との間の相対的な位置と姿勢を既知とすることができ、自律作業を実行することができる。
以上、本発明の実施例を説明したが、本発明は実施例に記載された構成に限定されず、本発明の技術的思想の範囲内で種々の変更が可能である。また、実施例内で説明した変形例の構成の一部または全部を組み合わせて適用してもよい。
1 初期校正実行部
2 初期位置姿勢変換パラメータ
3 付加軸傾き角度推定部
4 付加軸傾き角パラメータ
5 自律作業司令部
6 付加軸位置計画部
7 付加軸移動制御部
8 付加軸移動量取得部
9 相対位置姿勢推定部
10 現在位置姿勢変換パラメータ
11 自律作業実行部
21 作業台
22 容器
23 容器
24 容器
31 ロボット
32 ハンド
33 ロボットスライダ
34 ロボット支柱
35 マーカ
41 撮像手段
42 カメラスライダ
43 カメラ回転体
44 カメラ支柱
C1 ロボット座標系
C2 ロボット支柱座標系
C3 ロボットスライダ座標系
C4 ロボット先端座標系
C5 マーカ座標系
C6 カメラ座標系
C7 カメラ回転体座標系
C8 カメラスライダ座標系

Claims (8)

  1. ロボットと、
    前記ロボットの周辺に設置され前記ロボットの可動域の少なくとも一部を視野に収めて撮影する撮像手段と、
    前記ロボットおよび/または前記撮像手段を移動させる1つ以上の付加軸と、を有する自律ロボットであって、
    前記付加軸の位置を移動させる付加軸移動制御部と、
    前記付加軸の位置の移動前後における移動量を取得する付加軸移動量取得部と、
    初期位置における前記ロボットと前記撮像手段との間の相対的な位置と姿勢の変換パラメータである初期位置姿勢変換パラメータを推定する初期校正実行部と、
    1つずつ選択された校正対象の前記付加軸を前記付加軸移動制御部により2地点以上に移動させて各地点で前記撮像手段により撮影した画像のデータ群に基づき、前記校正対象の前記付加軸の傾き角度のパラメータである付加軸傾き角パラメータを推定する付加軸傾き角度推定部と、
    前記初期位置姿勢変換パラメータと前記付加軸傾き角パラメータと前記付加軸の移動量とに基づいて任意の前記付加軸の位置の組合せにおける前記ロボットと前記撮像手段との間の相対的な位置と姿勢の変換パラメータを推定する相対位置姿勢推定部と、
    前記相対位置姿勢推定部で推定した変換パラメータを用いて任意の前記付加軸の位置の組合せにおいて前記ロボットと前記撮像手段との間の相対的な位置と姿勢を既知として自律作業を実行する自律作業実行部と、を有することを特徴とする自律ロボット。
  2. 請求項1において、
    前記付加軸傾き角度推定部は、
    前記撮像手段により撮影したマーカの可視画像または距離画像に基づいて前記撮像手段に対する前記マーカの相対的な位置と姿勢を推定するマーカ位置姿勢推定部を有し、
    各地点で撮影された画像に基づいて前記マーカ位置姿勢推定部により推定された前記マーカの位置の変化に基づいて、前記校正対象の前記付加軸における前記付加軸傾き角パラメータを推定することを特徴とする自律ロボット。
  3. 請求項2において、
    前記付加軸傾き角度推定部は、前記校正対象の前記付加軸が並進移動を行うスライダである場合に、2地点で撮影された前記マーカの画像に基づいて前記マーカ位置姿勢推定部により推定された前記マーカの2地点の位置に基づいて、前記スライダの軸の傾き角度を前記付加軸傾き角パラメータとして推定することを特徴とする自律ロボット。
  4. 請求項2おいて、
    前記付加軸傾き角度推定部は、前記校正対象の前記付加軸が前記撮像手段を移動させる回転軸である場合に、3地点で撮影された前記マーカの画像に基づいて前記マーカ位置姿勢推定部により推定された前記マーカの3地点の位置と、前記回転軸の回転角度とに基づいて、前記回転軸から前記撮像手段までの半径を推定するとともに、前記回転軸の傾き角度を前記付加軸傾き角パラメータとして推定することを特徴とする自律ロボット。
  5. 請求項2において、
    前記付加軸傾き角度推定部は、前記画像の視野周辺部に存在する画像歪みが大きい領域を避けて設定した視野中央領域の範囲内で、互いに異なる辺に近い位置となるようにそれぞれ前記マーカを撮影した前記画像に基づいて、前記付加軸傾き角パラメータを推定することを特徴とする自律ロボット。
  6. 請求項2において、
    前記付加軸傾き角度推定部は、前記撮像手段の合焦距離の範囲内の手前と奥のそれぞれにおいて前記マーカを撮影した前記画像に基づいて、前記付加軸傾き角パラメータを推定することを特徴とする自律ロボット。
  7. 請求項1において、
    前記付加軸傾き角度推定部は、前記2地点以上のうちの1地点として、前記初期校正実行部で用いた前記初期位置を用いることを特徴とする自律ロボット。
  8. ロボットと、前記ロボットの周辺に設置され前記ロボットの可動域の少なくとも一部を視野に収めて撮影する撮像手段と、前記ロボットおよび/または前記撮像手段を移動させる1つ以上の付加軸と、を有する自律ロボットのキャリブレーション方法であって、
    初期位置における前記ロボットと前記撮像手段との間の相対的な位置と姿勢の変換パラメータである初期位置姿勢変換パラメータを推定する初期校正実行工程と、
    校正対象の前記付加軸を1つずつ選択し、前記校正対象の前記付加軸を2地点以上に移動させ、各地点で前記撮像手段により撮影した画像のデータ群に基づき、前記校正対象の前記付加軸の傾き角度のパラメータである付加軸傾き角パラメータを推定する付加軸傾き角度推定工程と、を有することを特徴とする自律ロボットのキャリブレーション方法。
JP2022120079A 2022-07-28 2022-07-28 自律ロボットとそのキャリブレーション方法 Pending JP2024017442A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022120079A JP2024017442A (ja) 2022-07-28 2022-07-28 自律ロボットとそのキャリブレーション方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022120079A JP2024017442A (ja) 2022-07-28 2022-07-28 自律ロボットとそのキャリブレーション方法

Publications (1)

Publication Number Publication Date
JP2024017442A true JP2024017442A (ja) 2024-02-08

Family

ID=89806893

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022120079A Pending JP2024017442A (ja) 2022-07-28 2022-07-28 自律ロボットとそのキャリブレーション方法

Country Status (1)

Country Link
JP (1) JP2024017442A (ja)

Similar Documents

Publication Publication Date Title
JP6966582B2 (ja) ロボットモーション用のビジョンシステムの自動ハンドアイ校正のためのシステム及び方法
US10585167B2 (en) Relative object localization process for local positioning system
JP4021413B2 (ja) 計測装置
JP6657469B2 (ja) ロボットシステムの自動較正方法
US20150363935A1 (en) Robot, robotic system, and control device
US20200298411A1 (en) Method for the orientation of an industrial robot, and industrial robot
JP6855492B2 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
JP6429473B2 (ja) ロボットシステム、ロボットシステムの校正方法、プログラム、およびコンピュータ読み取り可能な記録媒体
JP3946711B2 (ja) ロボットシステム
JP5670416B2 (ja) ロボットシステム表示装置
CN102448679B (zh) 至少一个物体以高精度定位到空间最终位置的方法和系统
JP5815761B2 (ja) 視覚センサのデータ作成システム及び検出シミュレーションシステム
CN110613511B (zh) 手术机器人避障方法
JP2005300230A (ja) 計測装置
JP6489776B2 (ja) 座標系校正方法、ロボットシステム、プログラム及び記録媒体
JP5523392B2 (ja) キャリブレーション装置及びキャリブレーション方法
JP2019113336A (ja) 較正方法及び較正装置
KR20140008262A (ko) 로봇 시스템, 로봇, 로봇 제어 장치, 로봇 제어 방법 및 로봇 제어 프로그램
CN113001535A (zh) 机器人工件坐标系自动校正系统与方法
JP6855491B2 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
JP6565175B2 (ja) ロボットおよびロボットシステム
JP6885856B2 (ja) ロボットシステムおよびキャリブレーション方法
JP2019069493A (ja) ロボットシステム
CN111590593A (zh) 机械臂的标定方法、装置、系统及存储介质
JP2682763B2 (ja) ロボット機体の作動誤差の自動測定方法