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

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

▶ 株式会社ダイヘンの特許一覧

特開2023-180509マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカ
<>
  • 特開-マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカ 図1
  • 特開-マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカ 図2
  • 特開-マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカ 図3
  • 特開-マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカ 図4
  • 特開-マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカ 図5
  • 特開-マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカ 図6
  • 特開-マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカ 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023180509
(43)【公開日】2023-12-21
(54)【発明の名称】マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカ
(51)【国際特許分類】
   B25J 13/08 20060101AFI20231214BHJP
【FI】
B25J13/08 A
【審査請求】有
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022093872
(22)【出願日】2022-06-09
(11)【特許番号】
(45)【特許公報発行日】2023-09-06
(71)【出願人】
【識別番号】000000262
【氏名又は名称】株式会社ダイヘン
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【弁理士】
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】池口 誠人
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS11
3C707BS09
3C707JU02
3C707KS03
3C707KT01
3C707KT04
3C707KT09
3C707LS20
3C707LV19
(57)【要約】
【課題】マーカの位置を登録する際に、座標系の軸方向を誤って登録することを防止することができるマーカ位置登録プログラムを提供する。
【解決手段】マーカ位置登録プログラムは、コンピュータを、産業用ロボットの特定箇所がマーカの特定の位置を指し示しめしているときの当該特定箇所に対応するロボット座標系の座標を、マーカに付与されている特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させる表示制御部111、入力フォームに入力された内容に基づいて、ロボット座標系における特定の位置を登録する登録部112、として機能させる。
【選択図】図3
【特許請求の範囲】
【請求項1】
コンピュータを、
産業用ロボットの特定箇所がマーカの特定の位置を指し示しめしているときの当該特定箇所に対応するロボット座標系の座標を、前記マーカに付与されている前記特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させる表示制御部、
前記入力フォームに入力された内容に基づいて、前記ロボット座標系における前記特定の位置を登録する登録部、
として機能させる、
マーカ位置登録プログラム。
【請求項2】
前記マーカには、当該マーカを特定するためのマーカ識別子がさらに付与され、
前記入力フォームには、前記位置識別子に対応付けて前記マーカ識別子を入力する項目がさらに設けられている、
請求項1記載のマーカ位置登録プログラム。
【請求項3】
前記産業用ロボットの作業領域及び前記マーカを含む画像を撮影する撮影部、
前記撮影部により撮影される画像に基づいて、前記登録部により前記特定の位置が登録された前記マーカを検出する検出部、
前記撮影部を基準にするカメラ座標系及び検出された前記マーカを基準にするマーカ座標系それぞれにおける、検出された前記マーカの特定の位置に基づいて、カメラ座標系とマーカ座標系との座標を変換するための変換式を算定する算定部、
として前記コンピュータをさらに機能させる、
請求項1記載のマーカ位置登録プログラム。
【請求項4】
前記特定の位置は、単一のマーカにある三つ以上の箇所それぞれに対応する位置である、
請求項1記載のマーカ位置登録プログラム。
【請求項5】
前記特定の位置は、複数のマーカにおける複数の箇所それぞれに対応する位置である、
請求項1記載のマーカ位置登録プログラム。
【請求項6】
産業用ロボットの特定箇所がマーカの特定の位置を指し示しめしているときの当該特定箇所に対応するロボット座標系の座標を、前記マーカに付与されている前記特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させる表示制御部と、
前記入力フォームに入力された内容に基づいて、前記ロボット座標系における前記特定の位置を登録する登録部と、
を備えるマーカ位置登録装置。
【請求項7】
プロセッサにより実行される方法であって、
産業用ロボットの特定箇所がマーカの特定の位置を指し示しめしているときの当該特定箇所に対応するロボット座標系の座標を、前記マーカに付与されている前記特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させるステップと、
前記入力フォームに入力された内容に基づいて、前記ロボット座標系における前記特定の位置を登録するステップと、
を含むマーカ位置登録方法。
【請求項8】
請求項7に記載のマーカ位置登録方法に用いるマーカ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカに関する。
【背景技術】
【0002】
カメラで撮影した画像に基づいてロボットの動作計画を行う場合、カメラの座標系とロボットの座標系との相関を導出し、カメラ座標系とロボット座標系との位置関係をキャリブレーションする必要がある。
【0003】
下記特許文献1には、ARデバイスで検出したロボット座標系特定用マーカ上にマーカ座標系を設定し、その設定したマーカ座標系に基づいてロボットの座標系を特定し、ARデバイスに表示されているロボットと現実のロボットとの位置関係をキャリブレーションする方法が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2021-62463号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1の方法では、ロボット座標系特定用マーカ上にマーカ座標系を設定する際に、ロボットを動かし、ロボットのツールでロボット座標系特定用マーカの原点、X方向点、Y方向点をタッチアップ(原点座標系設定)する作業が必要になる。
【0006】
しかし、この作業を行うためには、ARデバイスに表示されているロボット座標系特定用マーカ上のどの方向が、ロボット座標系の各軸に対応しているのかを把握している必要がある。したがって、例えば、作業者の理解があいまいな場合には、ロボット座標系でのXY方向を指定する際に、間違った方向を指定してマーカ座標系を設定してしまう可能性がある。この場合、ロボットを正しく動作させることができない。
【0007】
そこで、本発明は、マーカの位置を登録する際に、座標系の軸方向を誤って登録することを防止することができるマーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の一態様に係るマーカ位置登録プログラムは、コンピュータを、産業用ロボットの特定箇所がマーカの特定の位置を指し示しめしているときの当該特定箇所に対応するロボット座標系の座標を、マーカに付与されている特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させる表示制御部、入力フォームに入力された内容に基づいて、ロボット座標系における上記特定の位置を登録する登録部、として機能させる。
【0009】
この態様によれば、マーカの特定の位置を指し示しめしている産業用ロボットの特定箇所に対応するロボット座標系の座標を、その指し示しめしている特定の位置に付与された位置識別子に対応付けて入力させることができ、入力されたマーカの位置識別子とそのコーナー識別子に対応する特定の位置のロボット座標系の座標とを対応付けて登録することができる。これにより、作業者がロボット座標系の軸方向を意識することなく、マーカに付与された位置識別子に従ってマーカの特定の位置を入力し、その特定の位置のロボット座標系の座標を入力することで、ロボット座標系におけるマーカの位置を登録できるようになる。つまり、マーカの位置を登録する際に、座標系の軸方向を誤って登録することを防止することが可能となる。
【0010】
上記態様において、マーカには、当該マーカを特定するためのマーカ識別子がさらに付与され、入力フォームには、位置識別子に対応付けてマーカ識別子を入力する項目がさらに設けられてもよい。
【0011】
この態様によれば、マーカに付与されたマーカ識別子を、そのマーカに付与された位置識別子に対応付けて入力させ、登録することができるため、マーカ識別子を誤って入力し、登録してしまうことを抑止することが可能となる。
【0012】
上記態様において、産業用ロボットの作業領域及びマーカを含む画像を撮影する撮影部、撮影部により撮影される画像に基づいて、登録部により上記特定の位置が登録されたマーカを検出する検出部、撮影部を基準にするカメラ座標系及び検出されたマーカを基準にするマーカ座標系それぞれにおける、検出されたマーカの特定の位置に基づいて、カメラ座標系とマーカ座標系との座標を変換するための変換式を算定する算定部、として上記コンピュータをさらに機能させてもよい。
【0013】
この態様によれば、特定の位置に対応するロボット座標系の座標を登録したマーカが撮影画像内で検出された場合に、その検出されたマーカにおけるカメラ座標系及びマーカ座標系それぞれの特定の位置の座標を用い、カメラ座標系とマーカ座標系との座標を変換するための変換式を算定することができる。この変換式を用いることで、マーカとロボットとの位置関係を調整するキャリブレーションを容易に実施することが可能となる。
【0014】
上記態様において、特定の位置は、単一のマーカにある三つ以上の箇所それぞれに対応する位置であってもよい。
【0015】
この態様によれば、作業に用いるマーカを一つにすることができるため、マーカの管理負担を軽減することが可能となる。
【0016】
上記態様において、特定の位置は、複数のマーカにおける複数の箇所それぞれに対応する位置であってもよい。
【0017】
この態様によれば、特定の位置を複数のマーカに分散して設定することができるため、マーカを置く位置を調整する等し、特定の位置間の距離を容易に変更することが可能になる。座標変換時の誤差は、変換する際の基準点の間隔を広げると低減する傾向にあるため、例えば、マーカを配置する間隔を広げ、特定の位置間の距離を大きくすることで、特定の位置を基準にする座標変換の誤差を小さくすることが可能となる。
【0018】
本発明の他の態様に係るマーカ位置登録装置は、産業用ロボットの特定箇所がマーカの特定の位置を指し示しめしているときの当該特定箇所に対応するロボット座標系の座標を、マーカに付与されている特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させる表示制御部と、入力フォームに入力された内容に基づいて、ロボット座標系における特定の位置を登録する登録部と、を備える。
【0019】
この態様によれば、マーカの特定の位置を指し示しめしている産業用ロボットの特定箇所に対応するロボット座標系の座標を、その指し示しめしている特定の位置に付与された位置識別子に対応付けて入力させることができ、入力されたマーカの位置識別子とその位置識別子に対応する特定の位置のロボット座標系の座標とを対応付けて登録することができる。これにより、作業者がロボット座標系の軸方向を意識することなく、マーカに付与された位置識別子に従ってマーカの特定の位置を入力し、その特定の位置のロボット座標系の座標を入力することで、ロボット座標系におけるマーカの位置を登録できるようになる。つまり、マーカの位置を登録する際に、座標系の軸方向を誤って登録することを防止することが可能となる。
【0020】
本発明の他の態様に係るマーカ位置登録方法は、プロセッサにより実行される方法であって、産業用ロボットの特定箇所がマーカの特定の位置を指し示しめしているときの当該特定箇所に対応するロボット座標系の座標を、マーカに付与されている特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させるステップと、入力フォームに入力された内容に基づいて、ロボット座標系における特定の位置を登録するステップと、を含む。
【0021】
この態様によれば、マーカの特定の位置を指し示しめしている産業用ロボットの特定箇所に対応するロボット座標系の座標を、その指し示しめしている特定の位置に付与された位置識別子に対応付けて入力させることができ、入力されたマーカの位置識別子とその位置識別子に対応する特定の位置のロボット座標系の座標とを対応付けて登録することができる。これにより、作業者がロボット座標系の軸方向を意識することなく、マーカに付与された位置識別子に従ってマーカの特定の位置を入力し、その特定の位置のロボット座標系の座標を入力することで、ロボット座標系におけるマーカの位置を登録できるようになる。つまり、マーカの位置を登録する際に、座標系の軸方向を誤って登録することを防止することが可能となる。
【0022】
本発明の他の態様に係るマーカは、上記マーカ位置登録方法に用いるマーカである。
【0023】
この態様によれば、マーカのコーナー位置を登録する際に、マーカに付与されたコーナー識別子に従ってマーカのコーナー位置を入力させることができるため、座標系の軸方向を誤って登録することを防止することが可能となる。
【発明の効果】
【0024】
本発明によれば、マーカの位置を登録する際に、座標系の軸方向を誤って登録することを防止することができるマーカ位置登録プログラム、マーカ位置登録装置、マーカ位置登録方法及びその方法に用いるマーカを提供することができる。
【図面の簡単な説明】
【0025】
図1】実施形態に係るマーカ位置登録プログラムをインストールした撮影装置を含む溶接ロボットシステムの構成を例示する図である。
図2】実施形態に係るマーカの一例を示す図である。
図3】撮影装置の機能的な構成を例示する図である。
図4】入力フォームの一例を示す図である。
図5】入力フォームにデータを入力する際の具体例を説明するための模式図である。
図6】実施形態に係るマーカ位置登録プログラムをインストールした撮影装置の動作を説明するためのフローチャートである。
図7】変形例に係るマーカの一例を示す図である。
【発明を実施するための形態】
【0026】
添付図面を参照して、本発明の好適な実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。また、図面は模式的なものであるため、各構成要素の寸法や比率は実際のものとは相違する。
【0027】
図1は、実施形態に係るマーカ位置登録プログラムをインストールした撮影装置(マーカ位置登録装置)1を含む溶接ロボットシステム100の構成を例示する図である。溶接ロボットシステム100は、例えば、撮影装置1と、ロボット制御装置2と、マニピュレータ3とを備える。撮影装置1とロボット制御装置2とは、例えばネットワークNaを介して接続され、ロボット制御装置2とマニピュレータ3とは、例えば通信ケーブルNbを介して接続される。ネットワークNaは、無線であっても、有線(通信ケーブルを含む)であってもよい。なお、溶接ロボットシステム100に、ティーチペンダントを含めてもよい。ティーチペンダントは、作業者がマニピュレータ3の動作を教示する際に用いる操作装置であり、ロボット制御装置2に接続して使用することができる。
【0028】
マニピュレータ3は、ロボット制御装置2において設定される施工条件に従ってアーク溶接を行う溶接ロボットである。マニピュレータ3は、例えば、工場の床面等に固定されるベース部材上に設けられる多関節アーム31と、多関節アーム31の先端に連結される溶接トーチ32とを有する。多関節アーム31の先端には、溶接トーチ32に替えてツール等を連結することもできる。
【0029】
ロボット制御装置2は、マニピュレータ3の動作を制御する制御ユニットであり、例えば、制御部21、記憶部22、通信部23及び溶接電源部24を含む。
【0030】
制御部21は、例えば、プロセッサであり、プロセッサが記憶部22に記憶されている作業プログラムを実行することで、マニピュレータ3及び溶接電源部24を制御する。
【0031】
通信部23は、ネットワークNaを介して接続される撮影装置1との通信を制御することや、通信ケーブルNbを介して接続されるマニピュレータ3との通信を制御する。
【0032】
溶接電源部24は、例えば、溶接ワイヤの先端とワークとの間にアークを発生させるために、予め定められた溶接の施工条件に従って、溶接電流及び溶接電圧等をマニピュレータ3に供給する。溶接の施工条件には、例えば、溶接条件、溶接開始位置、溶接終了位置、溶接距離及び溶接トーチの姿勢等のデータ項目が含まれる。溶接条件には、例えば、溶接電流、溶接電圧、溶接速度、ワイヤ送給速度及びワークの厚さ等のデータ項目が含まれる。溶接電源部24は、ロボット制御装置2と別個に備えることとしてもよい。
【0033】
撮影装置1は、例えば、デジタルカメラ付きのタブレット端末を用いることができるが、これに限定されず、デジタルカメラ付きの可搬型端末であってよい。可搬型端末には、例えば、ARデバイス、スマートフォン、携帯情報端末(PDA)、ノートPC(パーソナルコンピュータ)等の持ち運び可能な端末を含むことができる。
【0034】
撮影装置1は、例えば、制御部11、記憶部12、通信部13、撮影部14、座標取得部15、表示部16を含む。
【0035】
制御部11は、例えば、プロセッサであり、プロセッサが記憶部12に記憶されているマーカ位置登録プログラム等のプログラムを実行することにより、撮影装置1の各部を制御する。
【0036】
記憶部12は、各種のプログラム及びデータを記憶する。各種のプログラムには、例えば、実施形態に係るマーカ位置登録プログラム等が含まれる。各種のデータには、例えば、マーカに関するマーカ情報や、マーカの配置に関するマーカ配置情報等が含まれる。マーカ情報及びマーカ配置情報について、以下に説明する。
【0037】
マーカ情報には、例えば、マーカを特定するためのマーカID及び識別画像、マーカのサイズに関するサイズ情報(例えば四角形の各辺の長さや各頂点の角度)、並びにマーカの形状に関する形状情報(例えば正方形や長方形)等を含むことができる。マーカの詳細については後述する。
【0038】
マーカ配置情報には、例えば、マーカIDごとに、そのIDのマーカに設けられる特定の位置(例えばマーカの四つのコーナー位置)ごとのロボット座標系上の位置情報等を含むことができる。なお、マーカ配置情報を、マーカ情報に含めて管理してもよい。
【0039】
通信部13は、ネットワークNaを介して接続されるロボット制御装置2との通信を制御する。
【0040】
撮影部14は、例えば、レンズ及び撮像素子(イメージセンサ)を含むデジタルカメラであり、レンズで受光した被写体の光を電気信号(デジタル画像データ)に変換する。デジタルカメラは、二次元カメラ又は三次元カメラのいずれであってもよい。本実施形態に係る撮影部14は、例示的に、マニピュレータ3の作業領域及びマーカを含む画像を撮影する。
【0041】
図2に、本実施形態に係るマーカの一例を示す。同図に示すマーカMの上部中央付近には、マーカを特定するためのマーカID(マーカ識別子)として“1”が付与され、マーカMの四つのコーナー付近には、コーナー位置を特定するためのコーナーNO(コーナー識別子)として“0”~“3”までの番号が付与されている。また、マーカMの周縁部の内側には、マーカごとに模様や形状が異なる識別画像が付与されている。
【0042】
なお、マーカは、図2に示すマーカに限定されず、撮影部14に認識させることができるものであればよい。マーカとして、例えばARマーカを用いることが好ましい。ARマーカを用いることで、ARマーカを認識したときに、そのARマーカを基準にするカメラ座標系を、実際の映像に重ね合わせて表示させること等が簡易に実現できるようになる。また、マーカ識別子は、マーカIDに限定されず、例えば、番号や画像、形状又はそれらの組み合わせであってもよい。さらに、コーナー識別子は、コーナーNOに限定されず、例えば、記号や色、形状又はそれらの組み合わせであってもよい。
【0043】
図1に示す座標取得部15は、被写体に対応する座標データを取得する。被写体に対応する座標データは、例えば、距離計測センサにより取得することができる。距離計測センサとして、例えば、LiDAR(Light Detection and Ranging)センサ、ミリ波センサ、超音波センサ等を用いることができる。なお、被写体に対応する座標データを、被写体を異なる複数の位置から撮影した複数の画像に基づいて算定し、取得することにしてもよい。
【0044】
表示部16は、例えば、タッチパネルを有するディスプレイであり、撮影部14による被写体の映像を表示するとともに、作業者による操作指示等の入力を受け付ける。表示部16は、例えばタッチパネルを有するディスプレイ装置として、撮影装置1とは別個に備えることとしてもよい。
【0045】
図3は、本発明に係る撮影装置1の機能的な構成を例示する図である。撮影装置1は、機能的な構成として、例えば、表示制御部111と、登録部112と、カメラ座標系設定部113と、検出部114と、マーカ座標系設定部115と、算定部116とを有する。各部について、以下に順次説明する。
【0046】
表示制御部111は、表示部16に表示させる内容を制御する。表示部16に表示させる内容として、例えば、入力フォームがある。
【0047】
図4に、入力フォームの一例を示す。同図の入力フォームFには、作業者が入力する入力項目として、例示的に、マーカID、コーナーNO、X座標、Y座標及びZ座標が設けられている。入力フォームFのマーカIDには、マーカMに付与されているIDを入力する。入力フォームFのコーナーNOには、マニュピレータ3の多関節アーム31の先端に連結されるツールの先端(特定箇所)が指し示すマーカMのコーナー位置に付与されている番号を入力する。入力フォームFのX座標、Y座標及びZ座標には、ツールの先端に対応するロボット座標系の各座標を入力する。なお、入力フォームFのX座標、Y座標及びZ座標に入力する座標は、ロボット座標系の座標であることには限定されず、座標取得部15により取得される座標データの座標系と異なる座標系であればよい。
【0048】
図4に加え、図5も参照しながら、具体的に説明する。図5に示すマーカMは、図2のマーカMと同じものである。この場合、マーカMに付与されているID“1”を、例えば、図4の入力フォームFの一行目のマーカIDに入力する。続いて、図5のツール32tの先端は、マーカMのコーナー番号“0”に対応するコーナー位置を指し示している。したがって、マーカに付与されているコーナー番号“0”を、図4の入力フォームFの一行目のコーナーNOに入力する。続いて、図5のティーチペンダントTPには、ツール32tの先端に対応するロボット座標系の座標として、“50,50,50”が表示されている。したがって、図4の入力フォームFの一行目のX座標、Y座標及びZ座標のそれぞれに、“50”を入力する。
【0049】
図3に示す登録部112は、入力フォームFに入力された内容に基づいて、ロボット座標系におけるマーカMの位置に関する情報を生成し、上述したマーカ配置情報に登録する。これにより、カメラ座標系のマーカMの位置とロボット座標系のマーカMの位置とを対応付けることが可能になる。
【0050】
ここで、マーカMにある四つのコーナー位置のうち、三つ以上のコーナー位置に関する情報を入力フォームFに入力して、マーカ配置情報に登録することが好ましいが、これに限定されない。例えば、マーカMにある一つのコーナー位置に関する情報を登録し、その登録した一つのコーナー位置に関する情報と、そのマーカMに対応するマーカ情報に含まれるサイズ情報及び形状情報とに基づいて、他の三つのコーナー位置を算出し、マーカ配置情報に登録してもよい。
【0051】
カメラ座標系設定部113は、三次元のカメラ座標系を設定する。カメラ座標系は、撮影部14を基準にして設定する座標系であり、例えば、撮影部14のレンズの中心等を原点にして三次元のカメラ座標系を設定することができる。
【0052】
検出部114は、撮影部14により撮影される画像の中から、マーカ配置情報に登録されているマーカを検出する。例えば、撮影画像からマーカに付与されている識別画像の模様若しくは形状、又はマーカの形状等を認識し、認識した内容に基づいて特定されたマーカがマーカ配置情報に登録されている場合に、そのマーカを登録済みのマーカとして検出してもよい。
【0053】
マーカ座標系設定部115は、検出部114により検出されたマーカを基準にして三次元のマーカ座標系を設定する。例えば、マーカの特定の一点(基準点)を原点にして三次元のマーカ座標系を設定してもよい。検出されたマーカが複数存在する場合には、例えば、基準にするマーカを作業者が任意に選択してマーカ座標系を設定してもよいし、撮影画像の中心に最も近い位置にあるマーカを基準にしてマーカ座標系を設定してもよい。マーカの特定の一点は、例えば、マーカの中心位置であってもよいし、作業者がタッチパネル上で選択した位置であってもよい。
【0054】
算定部116は、検出部114により検出されたマーカのカメラ座標系及びマーカ座標系それぞれにおけるコーナー位置に基づいて、カメラ座標系とマーカ座標系との座標を変換するための変換式を算定する。以下に、具体的に説明する。
【0055】
まず、マーカMのコーナーNO“0”、“1”、“2”の各座標に基づいてカメラ座標系A及びマーカ座標系Bをそれぞれ以下(1)のように定義する。ここで、コーナーNO“0”のカメラ座標系の座標を(x0、y0、z0)とし、同マーカ座標系の座標を(x'0、y'0、z'0)とする。コーナーNO“1”のカメラ座標系の座標を(x1、y1、z1)とし、同マーカ座標系の座標を(x'1、y'1、z'1)とする。コーナーNO“2”のカメラ座標系の座標を(x2、y2、z2)とし、同マーカ座標系の座標を(x'2、y'2、z'2)とする。
【数1】
【0056】
上記(1)のカメラ座標系A及びマーカ座標系Bを用いてカメラ座標系とマーカ座標系との変換行列(A0、B0、Mt)を算出する。この変換行列を構成する座標A0、座標B0及び回転行列Mtを、それぞれ以下(2)のように定義する。
【数2】
【0057】
上記(2)のVAは、以下(3)のように算出する。
【数3】
【0058】
上記(3)のvecA0、vecA1及びvecA2は、それぞれ以下(4)のように算出する。
【数4】
【0059】
上記(2)のVBは、以下(5)のように算出する。
【数5】
【0060】
上記(5)のvecB0、vecB1及びvecB2は、それぞれ以下(6)のように算出する。
【数6】
【0061】
上記(1)から(6)に基づいて、座標取得部15により取得されたカメラ座標系の点pAを、マーカ座標系の点pBに変換するための変換式は、以下(7)のように表すことができる。
【数7】
【0062】
同様に、カメラ座標系の位置ベクトルの点vAを、マーカ座標系の位置ベクトルの点vBに変換するための変換式は、以下(8)のように表すことができる。
【数8】
【0063】
同様に、マーカ座標系の点pBを、カメラ座標系の点pAに変換するための変換式は、以下(9)のように表すことができる。
【数9】
【0064】
同様に、マーカ座標系の位置ベクトルの点vBを、カメラ座標系の位置ベクトルの点vAに変換するための変換式は、以下(10)のように表すことができる。
【数10】
【0065】
上記(7)から(10)の変換式により、カメラ座標系とマーカ座標系とを対応付けることができ、マーカ配置情報により、マーカ座標系とロボット座標系とを対応付けることができる。これにより、カメラ座標系とロボット座標系とを対応付けることも可能となる。
【0066】
上記(7)から(10)の変換式を利用して、例えば、表示部16にマニピュレータ3のモデルをAR表示させることや、マニピュレータ3の動作を表示部16上でシミュレーションすることを行うことができる。
【0067】
図6を参照して、実施形態に係るマーカ位置登録プログラムをインストールした撮影装置1の動作の一例について説明する。
【0068】
最初に、撮影装置1の制御部11は、例えば、図4に示す入力フォームを表示部16に表示させる(ステップS101)。入力フォームを表示させるトリガーは、例えば、作業者の操作指示であってもよいし、ティーチペンダントTPを接続するロボット制御装置2からの表示指示であってもよい。
【0069】
続いて、撮影装置1の制御部11は、入力フォームに入力された内容に基づいて、ロボット座標系におけるマーカMのコーナー位置に関する情報を登録する(ステップS102)。
【0070】
続いて、撮影装置1の撮影部14は、マニピュレータ3の作業領域及びマーカMを含む画像を撮影する(ステップS103)。
【0071】
続いて、撮影装置1の制御部11は、上記ステップS102で登録されたマーカMを、上記ステップS103で撮影されている画像から検出する(ステップS104)。
【0072】
続いて、撮影装置1の制御部11は、上記ステップS104で検出されたマーカMのカメラ座標系及びマーカ座標系それぞれにおけるコーナー位置に基づいて、カメラ座標系とマーカ座標系との座標を変換するための変換式を算定する(ステップS105)。
【0073】
続いて、撮影装置1の制御部11は、上記ステップS105で算定された変換式を用いて表示部16にマニピュレータ3のモデルをAR表示させることや、そのモデルを用いてマニピュレータ3の動作をシミュレーションする(ステップS106)。そして、本動作を終了する。
【0074】
上述したように、実施形態に係るマーカ位置登録プログラムをインストールした撮影装置1によれば、マーカMのコーナー位置を指し示しめしているマニュピレータ3のツール32tの先端に対応するロボット座標系の座標を、その指し示しめしているコーナー位置に付与されたコーナーNOに対応付けて入力させることができ、入力されたマーカMのコーナーNOとそのコーナーNOに対応するコーナー位置のロボット座標系の座標とを対応付けて登録することができる。
【0075】
これにより、作業者がロボット座標系の軸方向を意識することなく、マーカMに付与されたコーナーNOに従ってマーカMのコーナー位置を入力フォームFに入力し、そのコーナー位置のロボット座標系の座標を入力フォームFに入力することで、ロボット座標系におけるマーカMの位置を登録することができる。つまり、マーカMの位置を登録する際に、ロボット座標系の軸方向を誤って登録することを防止することが可能となる。
【0076】
また、マーカMにはマーカIDがさらに付与され、入力フォームFにはコーナーNOに対応付けてマーカIDを入力する項目がさらに設けられているため、マーカMに付与されたマーカIDを、そのマーカMに付与されたコーナーNOに対応付けて入力フォームFに入力させ、登録することができる。これにより、マーカIDを誤って入力し、登録してしまうことを抑止することが可能となる。
【0077】
さらに、マーカ配置情報に登録したマーカMを撮影画像内で検出した場合に、そのマーカMのカメラ座標系及びマーカ座標系それぞれのコーナー位置の座標を用い、カメラ座標系とマーカ座標系との座標を変換する変換式を算定することができる。そして、その変換式を用いることで、マーカMとマニピュレータ3との位置関係を調整するキャリブレーションを容易に実施することが可能となる。
【0078】
[変形例]
なお、本発明は、上述した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、他の様々な形で実施することができる。このため、上記実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。
【0079】
例えば、上述した実施形態では、単一のマーカMにあるコーナーそれぞれに対応するロボット座標系の位置を登録し、その登録した位置を基準にして変換式を算定しているが、これに限定されない。例えば、複数のマーカにおける複数のコーナーそれぞれに対応するロボット座標系の位置を登録し、その登録した位置を基準にして変換式を算定してもよい。
【0080】
これにより、コーナー位置を複数のマーカMに分散して設定することができるため、マーカMを置く位置を調整する等し、コーナー位置間の距離を変更することが可能になる。座標変換時の誤差は、変換する際の基準点の間隔を広げると低減する傾向にあるため、マーカMを配置する間隔を広げ、コーナー位置間の距離を大きくすることで、コーナー位置を基準にする座標変換の誤差を小さくすることが可能となる。
【0081】
また、上述した実施形態では、図1に示す撮影部14、座標取得部15及び表示部16を一つの装置に備える場合について説明したが、これに限定されず、例えば、撮影部14、座標取得部15及び表示部16をそれぞれ撮影装置1とは別個の装置に分散して備えることとしてもよい。
【0082】
また、上述した実施形態では、マーカの「コーナー位置」に「コーナー識別子」を付与し、「コーナー位置」を指し示すツール32tの先端に対応するロボット座標系の座標を入力フォームFに入力しているが、これに限定されない。マーカの「特定の位置」にその位置を特定する「位置識別子」を付与し、「特定の位置」を指し示すツール32tの先端に対応するロボット座標系の座標を入力フォームFに入力できればよい。
【0083】
図7を参照して、具体的に説明する。同図に示すマーカMaの周縁部の内側に付与されている識別画像Iには、マーカを特定するためのマーカ識別子として“10”が付与され、マーカMaの三つの特定の位置(×印の位置)付近には、特定の位置を特定するための位置識別子として“1”~“3”までの番号が付与されている。
【0084】
また、上述した実施形態では、溶接ロボットを用いて説明したが、これに限定されない。例えば、ピッキング等を行うハンドリングロボットを含む産業用ロボットに本発明を適用することができる。
【符号の説明】
【0085】
1…撮影装置、2…ロボット制御装置、3…マニピュレータ、11…制御部、12…記憶部、13…通信部、14…撮影部、15…座標取得部、16…表示部、21…制御部、22…記憶部、23…通信部、24…溶接電源部、31…多関節アーム、32…溶接トーチ、32t…ツール、100…溶接ロボットシステム、111…表示制御部、112…登録部、113…カメラ座標系設定部、114…検出部、115…マーカ座標系設定部、116…算定部
図1
図2
図3
図4
図5
図6
図7
【手続補正書】
【提出日】2023-07-20
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
コンピュータを、
産業用ロボットの特定箇所がマーカの特定の位置を指し示しているときの当該特定箇所に対応するロボット座標系の座標を、前記マーカに付与されている前記特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させる表示制御部、
前記入力フォームに入力された内容に基づいて、前記ロボット座標系における前記特定の位置を登録する登録部、
として機能させ、
前記マーカには、当該マーカを特定するためのマーカ識別子がさらに付与され、
前記入力フォームには、前記位置識別子に対応付けて前記マーカ識別子を入力する項目がさらに設けられている、
マーカ位置登録プログラム。
【請求項2】
前記産業用ロボットの作業領域及び前記マーカを含む画像を撮影する撮影部、
前記撮影部により撮影される画像に基づいて、前記登録部により前記特定の位置が登録された前記マーカを検出する検出部、
前記撮影部を基準にするカメラ座標系及び検出された前記マーカを基準にするマーカ座標系それぞれにおける、検出された前記マーカの特定の位置に基づいて、カメラ座標系とマーカ座標系との座標を変換するための変換式を算定する算定部、
として前記コンピュータをさらに機能させる、
請求項1記載のマーカ位置登録プログラム。
【請求項3】
前記特定の位置は、単一のマーカにある三つ以上の箇所それぞれに対応する位置である、
請求項1記載のマーカ位置登録プログラム。
【請求項4】
前記特定の位置は、複数のマーカにおける複数の箇所それぞれに対応する位置である、
請求項1記載のマーカ位置登録プログラム。
【請求項5】
産業用ロボットの特定箇所がマーカの特定の位置を指し示しているときの当該特定箇所に対応するロボット座標系の座標を、前記マーカに付与されている前記特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させる表示制御部と、
前記入力フォームに入力された内容に基づいて、前記ロボット座標系における前記特定の位置を登録する登録部と、
を備え
前記マーカには、当該マーカを特定するためのマーカ識別子がさらに付与され、
前記入力フォームには、前記位置識別子に対応付けて前記マーカ識別子を入力する項目がさらに設けられている、
マーカ位置登録装置。
【請求項6】
プロセッサにより実行される方法であって、
産業用ロボットの特定箇所がマーカの特定の位置を指し示しているときの当該特定箇所に対応するロボット座標系の座標を、前記マーカに付与されている前記特定の位置を特定するための位置識別子に対応付けて入力させる入力フォームを表示させるステップと、
前記入力フォームに入力された内容に基づいて、前記ロボット座標系における前記特定の位置を登録するステップと、
を含み、
前記マーカには、当該マーカを特定するためのマーカ識別子がさらに付与され、
前記入力フォームには、前記位置識別子に対応付けて前記マーカ識別子を入力する項目がさらに設けられている、
マーカ位置登録方法。