(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-18
(45)【発行日】2024-03-27
(54)【発明の名称】作業位置解析装置
(51)【国際特許分類】
G05D 1/648 20240101AFI20240319BHJP
G05D 1/242 20240101ALI20240319BHJP
B25J 9/22 20060101ALI20240319BHJP
G05D 1/43 20240101ALI20240319BHJP
【FI】
G05D1/648
G05D1/242
B25J9/22 Z
G05D1/43
(21)【出願番号】P 2020084737
(22)【出願日】2020-05-13
【審査請求日】2023-03-30
(73)【特許権者】
【識別番号】000003621
【氏名又は名称】株式会社竹中工務店
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】鶴田 壮広
(72)【発明者】
【氏名】宮口 幹太
【審査官】田中 友章
(56)【参考文献】
【文献】特開2005-088164(JP,A)
【文献】特開2001-289638(JP,A)
【文献】国際公開第2020/044138(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/00
B25J 9/22
(57)【特許請求の範囲】
【請求項1】
移動可能な作業機構であって、移動のための駆動機構と作業のための駆動機構とを備えた作業機構についての、複数の作業対象位置を表すデータを取得する取得部と、
前記作業のための駆動機構の駆動により作業可能な作業対象位置の範囲である有効作業範囲を用いて、前記複数の作業対象位置のクラスタリングを行って、前記作業機構が同一の作業位置において作業可能な作業対象位置からなるクラスタを抽出するクラスタリング部と、
前記クラスタリング部によって抽出されたクラスタ毎に、前記クラスタに含まれるすべての作業対象位置を囲む領域の中心に対応する位置を、前記作業機構の作業位置として計算する作業位置計算部と、
を含む作業位置解析装置。
【請求項2】
前記作業位置計算部は、前記クラスタに含まれるすべての作業対象位置を囲む最小包囲円の中心に対応する位置を、前記作業機構の作業位置として計算する請求項
1記載の作業位置解析装置。
【請求項3】
前記作業対象位置は、線分、点、又は領域で表される請求項1
又は2記載の作業位置解析装置。
【請求項4】
前記作業対象位置は、線分で表され、
前記クラスタリング部は、前記作業対象位置を表す線分の端点と他の線分の端点との間の距離が、前記有効作業範囲内であるか否かを用いて、前記クラスタリングを行う請求項
3記載の作業位置解析装置。
【請求項5】
前記作業機構は、床面に対する作業を行うための床面作業部を含んで構成され、前記作業のための駆動機構は、前記床面作業部を移動させる請求項1~請求項4の何れか1項記載の作業位置解析装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、作業位置解析装置に関する。
【背景技術】
【0002】
従来、ロボットの作業アームの作業空間内の領域を考慮してロボットの最小停止箇所を決定する方法が知られている(例えば、特許文献1を参照)。特許文献1に記載の方法では、複数の作業に対応する作業可能領域を設定し、最少数の作業可能領域で全作業を遂行することができるように複数の作業可能領域の重なりを組み合わせ、組み合わせた作業可能領域の重なった領域において、作業遂行時間が最小となる作業箇所を求めている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明は、作業機構が同一の作業位置において作業可能な作業対象位置を抽出することができることを目的とする。
【課題を解決するための手段】
【0005】
上記目的を達成するために、本発明の作業位置解析装置は、移動可能な作業機構であって、移動のための駆動機構と作業のための駆動機構とを備えた作業機構についての、複数の作業対象位置を表すデータを取得する取得部と、前記作業のための駆動機構の駆動により作業可能な作業対象位置の範囲である有効作業範囲を用いて、前記複数の作業対象位置のクラスタリングを行って、前記作業機構が同一の作業位置において作業可能な作業対象位置からなるクラスタを抽出するクラスタリング部と、を含んで構成されている。これにより、作業機構が同一の作業位置において作業可能な作業対象位置を抽出することができる。
【0006】
上記の発明の作業位置解析装置において、前記クラスタリング部によって抽出されたクラスタ毎に、前記作業機構の作業位置を計算する作業位置計算部を更に含むことができる。これにより、クラスタに属する各作業対象位置を作業可能な作業位置を計算することができる。
【0007】
上記の発明の作業位置解析装置において、前記作業位置計算部は、前記クラスタに含まれるすべての作業対象位置を囲む最小包囲円の中心に対応する位置を、前記作業機構の作業位置として計算することができる。これにより、適切な作業位置を計算することができる。
【0008】
上記の発明の作業位置解析装置において、前記作業対象位置は、線分、点、又は領域で表されることができる。
【0009】
上記の発明の作業位置解析装置において、前記作業対象位置は、線分で表され、前記クラスタリング部は、前記作業対象位置を表す線分の端点と他の線分の端点との間の距離が、前記有効作業範囲内であるか否かを用いて、前記クラスタリングを行うことができる。これにより、作業機構が同一の作業位置において作業可能な、線分で表される作業対象位置を抽出することができる。
【0010】
上記の発明の作業位置解析装置において、前記作業機構は、床面に対する作業を行うための床面作業部を含んで構成され、前記作業のための駆動機構は、前記床面作業部を移動させることができる。
【発明の効果】
【0011】
本発明によれば、作業機構が同一の作業位置において作業可能な作業対象位置を抽出することができる、という効果が得られる。
【図面の簡単な説明】
【0012】
【
図1】本発明の実施形態に係る作業システムの構成の一例を示す図である。
【
図2】本発明の実施形態の作業システムの制御系の機能的な構成例を示す図である。
【
図4】床面作業ロボットの構成の一例を示す図である。
【
図5】本発明の実施形態の作業システムの作業位置解析装置のハードウェア構成例を示す図である。
【
図6】アンカーボルトの取り付け位置の表記を示す図である。
【
図8】長い直線を分割する方法を説明するための図である。
【
図9】(a)線分データの例を示す図、及び(b)分割後の線分データの例を示す図である。
【
図10】本発明の実施形態の作業システムの作業位置解析装置の機能的な構成例を示す図である。
【
図11】有効作業範囲内の複数の作業対象線分を描画する従来手法を説明するための図である。
【
図12】(a)幾何中心の例を示す図、及び(b)最小包囲円の中心の例を示す図である。
【
図13】作業位置解析装置による作業位置解析処理を示すフローチャートである。
【
図14】作業対象線分をクラスタリングする処理を示すフローチャートである。
【
図15】(a)作業対象線分の部分集合を探索する方法を説明するための図、及び(b)基準線分と比較線分との距離を説明するための図である。
【
図16】作業対象線分のクラスタリング結果の一例を示す図である。
【
図17】(a)作業対象位置が曲線で表される例を示す図、(b)作業対象位置が円で表される例を示す図、及び(c)作業対象位置が文字列で表される例を示す図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態について詳細に説明する。
【0014】
<本実施形態の概要>
建設現場において、床面に対する墨出し、穴あけ、ピン打ち作業に対する効率化および自動化のニーズは大きい。本実施形態の目的は、ロボットを用いた床面への墨出し・穴あけ・ピン打ちといった床面に対する建設作業の自動化において、作業位置を適切に設定することで作業に要する時間を短縮することにある。
【0015】
作業時間は歩掛と密接に関係し、短いほど建設作業を効率化することができる。またこれらのロボットの多くは、バッテリを搭載し動作するため、作業時間が短ければ、バッテリの小型化も可能となり、装置の可搬性、経済性を高めることが期待できる。
【0016】
<作業システムの構成>
図1は、本実施形態に係る作業システム10の構成の一例を示す図である。
図1に示されるように、作業システム10は、測距用レーザ光を目標位置へ向けて照射するレーザ装置12と、位置決めされた位置において床面に対する作業を行う床面作業ロボット14と、作業対象線分の集合から作業位置を決定する作業位置解析装置100とを含む。本実施形態では、床面作業ロボット14が、建設現場の床面に対して墨出しを行う場合を例に説明する。
【0017】
また、
図2に、作業システム10の制御系の構成の一例を示す。
図2に示されるように、作業システム10のレーザ装置12の制御系は、機能的には、レーザ制御部12Aと、通信部12Bとを備えている。また、
図2に示されるように、作業システム10の床面作業ロボット14の制御系は、ロボット制御機器14Aと、カメラ14Bと、移動駆動用モータ14Cと、作業駆動用モータ14Dと、通信部15とを備えている。
【0018】
(レーザ装置)
レーザ装置12のレーザ制御部12Aは、測距用レーザ光を目標位置へ向けて照射する。通信部12Bは、床面作業ロボット14との間で情報のやり取りをする。
【0019】
レーザ装置12は、例えば、
図3に示されるように、3次元レーザ測量機によって実現される。3次元レーザ測量機であるレーザ装置12は、レーザ制御部12Aから出力された制御信号に応じて、出力口12Xから測距用レーザを出力する。測距用レーザは、制御信号によって指定された方位に対して照射され、床面と略平行に照射される。また、レーザ装置12は、測距用レーザが照射された対象物までの水平距離を測定する。
【0020】
レーザ装置12は、
図3に示されるように、Z軸まわり(方位方向)に回転する。レーザ装置12は、床面に対して水平な軸と垂直な軸を中心軸として回転する2組のモータ(図示省略)を備えており、指定した任意の方向へ向けて測距用レーザを照射することができる。
【0021】
(床面作業ロボット)
図4は、床面作業ロボット14の構成の一例を示す図である。床面作業ロボット14は、
図4に示されるように、ロボット制御機器14A、カメラ14B、移動機構16、移動機構16を駆動させるための移動駆動用モータ14C、ペン描画装置18、ペン描画装置18を移動させるための作業駆動用モータ14D、支持フレーム20、及び光拡散板22を備える。なお、
図4の下段の図は、
図4の上段の図におけるX-X’面の断面図である。移動機構16、移動駆動用モータ14C、ペン描画装置18、及び作業駆動用モータ14Dは、作業機構の一例である。また、移動駆動用モータ14Cは、移動のための駆動機構の一例であり、作業駆動用モータ14Dは、作業のための駆動機構の一例である。
【0022】
本実施形態の移動機構16は、
図4に示されるように、独立2輪駆動機構である。
【0023】
移動駆動用モータ14Cは、ロボット制御機器14Aの制御に応じて動力を出力する。移動駆動用モータ14Cから出力された動力に応じて移動機構16が駆動する。
【0024】
ペン描画装置18は、支持フレーム20に設置されている。また、ペン描画装置18は、x‐yリニアステージ18Aと、ペンホルダー18Bと、ペン18Cとを備えている。ペンホルダー18B及びペン18Cは、本発明の床面に対する作業を行うための床面作業部の一例である。
【0025】
x‐yリニアステージ18Aは、床面作業ロボット14の座標系を表すロボット座標系のXR軸及びYR軸方向に移動可能なように構成されている。
【0026】
ペンホルダー18Bには、ペン18Cを鉛直方向に上下させるペン上げ下げ機構(図示省略)が備えられている。ペンホルダー18Bは、任意の位置でペン先を床面に押し付けることができ、建設現場の床面に墨出しをすることができる。したがって、x‐yリニアステージ18Aとペンホルダー18Bのペン上げ下げ機構(図示省略)とを制御することにより、床面に任意の文字や図形を描くことができる。
【0027】
作業駆動用モータ14Dは、ロボット制御機器14Aの制御に応じて動力を出力する。作業駆動用モータ14Dから出力された動力に応じて、x‐yリニアステージ18Aが移動し、ペンホルダー18B及びペン18Cが所定の位置となる。
【0028】
光拡散板22は、
図4に示されるように、ペンホルダー18Bの上部に配置される。また、光拡散板22は、床面に対して略垂直であって、かつ光拡散板22の平面がロボット座標系のX
R軸に一致又は平行であるように配置される。また、
図4に示されるように、光拡散板22の中心軸はペン18Cの中心軸と略一致するように配置されている。
【0029】
なお、ペン描画装置18と光拡散板22とカメラ14Bとは一体となっており、一体として移動可能な構成となっている。具体的には、作業駆動用モータ14Dから出力された動力に応じて、ペン描画装置18と光拡散板22とカメラ14Bとが移動する。
【0030】
カメラ14Bは、ペンホルダー18Bの上部に配置される。また、カメラ14Bは、光拡散板22に対向するように配置される。そして、カメラ14Bは、
図4に示されるD方向から、光拡散板22の画像を撮像する。ペン描画装置18及び光拡散板22は、本発明の作業機構の一例である。
【0031】
通信部15は、無線通信により、作業位置解析装置100との間で情報の送受信を行う。
【0032】
ロボット制御機器14Aは、CPU(Central Processing Unit)、各処理ルーチンを実現するためのプログラム等を記憶したROM(Read Only Memory)、データを一時的に記憶するRAM(Random Access Memory)、記憶手段としてのメモリ、及びネットワークインタフェース等を含んで構成されている。ロボット制御機器14Aは、例えば半導体集積回路、より詳しくはApplication Specific Integrated Circuit(ASIC)等によって構成されてもよい。ロボット制御機器14Aは、
図2に示されるように、機能的には、ロボット制御部140と、目標位置記憶部141と、ロボット通信部142と、移動経路決定部144とを備えている。
【0033】
本実施形態では、複数の目標位置が存在する場合に、複数の目標位置の各々へ床面作業ロボット14を移動させる際に、移動に要する時間と旋回するのに要する時間とを考慮して、複数の目標位置の各々の間の移動経路を決定する。
【0034】
ロボット制御部140は、カメラ14B、移動駆動用モータ14C、及び作業駆動用モータ14Dを制御する。また、目標位置記憶部141には、建設現場の床面に対する墨出しの目標位置に関する位置情報が格納されている。また、ロボット通信部142は、レーザ装置12との間で情報のやり取りをする。
【0035】
ロボット制御部140は、目標位置に関する位置情報を、目標位置記憶部141から読み出し、移動経路決定部144によって決定された移動経路に沿って、床面作業ロボット14を複数の目標位置へ移動させるように移動駆動用モータ14Cを制御する。なお、目標位置は複数存在するため、ロボット制御部140は、1つの目標位置に対する墨出しが完了すると、決定された移動経路に沿って、次の目標位置を目標位置記憶部141から読み出し、床面作業ロボット14を次の目標位置へ移動させるように、移動駆動用モータ14Cを制御する。
【0036】
また、ロボット制御部140は、カメラ14Bを制御し、光拡散板22に写ったレーザ光を撮像するとともに、レーザ光の位置を検出する。また、ロボット制御部140は、移動駆動モータ用14Cを制御し、床面作業ロボット14の移動機構16を駆動させる。
【0037】
また、ロボット制御部140は、カメラ14Bによって撮像された光拡散板22の画像に応じて、作業駆動用モータ14Dを制御し、ロボット座標系のXR軸及びYR軸において、x‐yリニアステージ18Aを所定の方向へ移動させることにより、ペン18Cを目標位置へ移動させる。なお、ペン18Cを目標位置へ移動させる際には、ロボット制御部140は、光拡散板22とカメラ14Bとの間の位置関係を保ちながら、x‐yリニアステージ18A及びペンホルダー18Bの位置を制御する。
【0038】
(作業位置解析装置)
図5は、本実施形態の作業位置解析装置100のハードウェア構成を示すブロック図である。
【0039】
図5に示すように、作業位置解析装置100は、CPU(Central Processing Unit)111、ROM(Read Only Memory)112、RAM(Random Access Memory)113、ストレージ114、入力部115、表示部116及び通信インタフェース(I/F)117を有する。各構成は、バス119を介して相互に通信可能に接続されている。
【0040】
CPU111は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、CPU111は、ROM112又はストレージ114からプログラムを読み出し、RAM113を作業領域としてプログラムを実行する。CPU111は、ROM112又はストレージ114に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。本実施形態では、ROM112又はストレージ114には、作業位置を解析する作業位置解析プログラムが格納されている。作業解析プログラムは、1つのプログラムであっても良いし、複数のプログラム又はモジュールで構成されるプログラム群であっても良い。
【0041】
ROM112は、各種プログラム及び各種データを格納する。RAM113は、作業領域として一時的にプログラム又はデータを記憶する。ストレージ114は、HDD(Hard Disk Drive)又はSSD(Solid State Drive)により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【0042】
入力部115は、マウス等のポインティングデバイス、及びキーボードを含み、各種の入力を行うために使用される。
【0043】
入力部115は、以下に説明する、複数の作業対象線分を表す作業データの入力を受け付ける。
【0044】
多くの墨出し作業は、現在では人手により行われているが、建物設計者がCADを用いて作成した建築用図面を紙にプリントアウトし、建設技能工がそれを見ながら建築現場の床面に墨出しを行っている。そのため建築用CADデータに基づいて、床面作業ロボット14用作業データを作成する必要がある。建築用CADデータ上の線分データは始点と終点で定義される。アンカーボルトの取付位置の表記は、
図6に示すような線分データの組み合わせにより表現され、間仕切り壁の位置の表記は、
図7に示すように線分データの組み合わせにより表現される。
図6では、始点(xs1、ys1)と終点(xe1、ye1)とを結んだ線分と、始点(xs2、ys2)と終点(xe2、ye2)とを結んだ線分とにより、アンカーボルトの取付位置を表す例を示している。
図7では、始点(xs3、ys3)と終点(xe3、ye3)とを結んだ線分と、始点(xs4、ys4)と終点(xe4、ye4)とを結んだ線分と、始点(xs5、ys5)と終点(xe5、ye5)とを結んだ線分と、始点(xs6、ys6)と終点(xe6、ye6)とを結んだ線分とにより、間仕切り壁の位置を表す例を示している。
【0045】
描画図形の大きさはペン描画装置18の有効作業範囲内に限られる。そのため間仕切り壁等を表す長い線分データは、両端部と両端部を除いた部分を等間隔で分割した短い作業対象線分の集合に変換することがある。
図8では、1800mmの線分データを、両端部100mmの作業対象線分と、残りの部分を400mm間隔で分割した100mmの作業対象線分に分割した例を示している。
【0046】
本実施の形態では、入力部115は、上記の各作業対象線分の始点と終点をそれぞれペン描画の開始点、終了点とし、複数の作業対象線分からなる作業データの入力を受け付ける。
図9(a)は実際の建築図面における間仕切り壁部分を示している。
図9(b)は、このデータに対して上記データ変換を行って得られた作業対象線分の集合の例を示したものであり、壁を表す長い線分が分割されていることを確認できる。
【0047】
表示部116は、例えば、液晶ディスプレイであり、各種の情報を表示する。表示部116は、タッチパネル方式を採用して、入力部115として機能しても良い。
【0048】
通信インタフェース117は、他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
【0049】
次に、作業位置解析装置100の機能構成について説明する。
図10は、作業位置解析装置100の機能構成の例を示すブロック図である。
【0050】
図10に示すように、作業位置解析装置100は、機能構成として、取得部102、クラスタリング部104、及び作業位置計算部106を有する。各機能構成は、CPU111がROM112又はストレージ114に記憶された作業位置解析プログラムを読み出し、RAM113に展開して実行することにより実現される。
【0051】
取得部102は、入力部115により受け付けた、複数の作業対象線分を表す作業データを取得する。
【0052】
取得した作業データに基づき、床面作業ロボット14を用いて作業を行うと作業効率が悪い。例えば、
図11では、2つの線分A、Bがペン描画装置18の有効作業範囲内に含まれている。従来手法では、
図11(a)に示すように、床面作業ロボット14は線分Aの中点まで移動して線分Aを描画後、
図11(b)に示すように、わざわざ線分Bの中点まで移動した後に線分Bを描画することになる。そこで、本実施の形態では、ペン描画装置18の有効作業範囲にある作業対象線分を、同一の作業位置において描画できるようにクラスタリングすることで、作業効率を上げることができる。
【0053】
クラスタリング部104は、作業のための駆動機構の駆動により作業可能な作業対象線分の範囲である有効作業範囲を用いて、複数の作業対象線分のクラスタリングを行って、作業機構が同一の作業位置において作業可能な作業対象線分からなるクラスタを抽出する。具体的には、クラスタリング部104は、作業対象線分の端点と他の作業対象線分の端点との間の距離が、ペン描画装置18の有効作業範囲内であるか否かを用いて、作業データが表す複数の作業対象線分のクラスタリングを行う。
【0054】
床面作業ロボット14の移動先を表す作業位置を各クラスタに含まれる作業対象線分の始点、終点の幾何中心とするのが最も単純な方法であるが、これは適切でない。
図12(a)に示すように、作業対象線分が一方に偏っている場合、幾何中心も偏っている方向に引っ張られ、一部の作業対象線分の始点や終点が幾何中心から離れた位置関係となる。床面作業ロボット14はペン描画装置18の中心が作業位置に一致するように移動した後、ペン描画装置18による描画を行う。幾何中心から離れた位置の始点及び終点については、ペン移動量が大きくなる。床面作業ロボット14が作業位置へ移動する際の移動誤差が大きくなった場合、描画図形がペン描画装置18の有効作業範囲内を越えてしまう状況が考えられる。このような場合、再度作業位置まで床面作業ロボット14を移動させれば良いが作業効率は悪化する。各クラスタに含まれる作業対象線分の始点、終点から作業位置までの距離は小さい方が望ましい。
【0055】
そこで、本実施の形態においては、作業位置を各クラスタの始点、終点の最小包囲円の中心とする。最小包囲円とは2次元平面の中に座標既知の複数の点があり、これらの点をすべて含む半径が最小の円のことである。このようにすることで、
図12(b)に示すように、幾何中心とした場合に比べてペン移動量を小さくすることができる。最小包囲円の中心位置は、例えば参考文献(石畑:“点の集合を包含する球”,情報処理,vol.43,no.9,pp.1009-1015,2002.)に示されている空間分割法により近似的に算出することができる。
【0056】
表1には、後述する
図16(a)に示したクラスタリング結果を表すデータ(クラスタ数176)に対して、作業位置を幾何中心とした場合と、最小包囲円中心とした場合の、各クラスタにおけるペン描画装置18のペン移動量の最大値についてまとめている。最小包囲円中心とした方が、平均値、最大値ともに小さい値となっている。これは床面作業ロボット14の移動による誤差が発生してもクラスタ内の線分がペン描画装置18の有効作業範囲内に含まれやすくなることを意味し、作業位置として適切であるとことが分かる。
【0057】
【0058】
作業位置計算部106は、クラスタリング部104によって抽出されたクラスタ毎に、床面作業ロボット14の作業位置を計算する。具体的には、作業位置計算部106は、クラスタに含まれるすべての作業対象線分を囲む最小包囲円の中心に対応する位置を、床面作業ロボット14の作業位置として計算する。
【0059】
作業位置計算部106は、通信インタフェース117を介して、求めた複数の作業位置を表す作業位置データ、及び複数の作業対象線分からなる作業データを、通信部(図示省略)へ出力し、床面作業ロボット14へ送信させる。床面作業ロボット14は、作業位置データ及び作業データを受信すると、作業位置データの当該複数の作業位置が、目標位置とされる。
【0060】
(作業システム10の作用)
次に、本実施形態における作業システム10の作業位置解析装置100による作業位置の計算方法の概要について説明する。
【0061】
次に、
図13を参照して、作業位置解析装置100の作用の詳細を説明する。
【0062】
建築用CADデータから得られた複数の作業対象線分を表す作業データが、作業位置解析装置100に入力されると、作業位置解析装置100は、
図13に示す作業位置解析処理を実行する。
【0063】
まず、ステップS100において、取得部102は、入力部115により受け付けた、複数の作業対象線分を表す作業データを取得する。
【0064】
ステップS102において、クラスタリング部104は、ペン描画装置18の有効作業範囲を用いて、複数の作業対象線分のクラスタリングを行って、作業機構が同一の作業位置において作業可能な作業対象線分からなるクラスタを抽出する。
【0065】
ステップS104において、作業位置計算部106は、クラスタリング部104によって抽出されたクラスタ毎に、床面作業ロボット14の作業位置を計算する。
【0066】
ステップS106において、作業位置計算部106は、通信インタフェース117を介して、求めた複数の作業位置を、通信部(図示省略)へ出力し、床面作業ロボット14へ送信させる。
【0067】
上記ステップS102は、以下の処理ルーチンによって実現される。
【0068】
まず、ステップS110において、作業対象線分からなる線分集合Pに含まれる任意の作業対象線分を選択し基準線分とする。
【0069】
ステップS112において、
図15(a)に示すように、基準線分の始点を中心とした半径r
thの円に包含される始点を持つ作業対象線分の部分集合を探索する。
図15(a)では、基準線分に対して、2つの作業対象線分からなる部分集合が探索された例を示している。なお本探索にはKd木を用いた探索法が有効である。
【0070】
ステップS114において、
図15(b)に示すように、上記ステップS112で得られた部分集合から基準線分とは別の比較線分を選択し、基準線分の始点と比較線分の始点との間の距離、基準線分の始点と比較線分の終点との間の距離、基準線分の終点と比較線分の始点との間の距離、及び基準線分の終点と比較線分の終点との間の距離をすべて算出し、いずれか一つでも距離が閾値d
thを越えた場合は、比較線分を部分集合から除外する。
図15(b)では、始点S1と終点E1とを結んだ基準線分の始点S1と、始点S3と終点E3とを結んだ比較線分の始点S3との間の距離d
S1,S3、基準線分S1の始点と比較線分の終点E3との間の距離d
S1,E3、基準線分の終点E1と比較線分の始点S3との間の距離d
E1,S3、及び基準線分の終点E1と比較線分の終点E3との間の距離d
E1,E3を算出する例を示している。
【0071】
そして、部分集合において比較線分を変えて、基準線分を除く全ての比較線分に対して、ステップS114の処理を繰り返す。
【0072】
ステップS116において、部分集合から除外されずに残った作業対象線分からなるクラスタを生成し、当該クラスタに属する作業対象線分を線分集合Pから除外する。
【0073】
ステップS118では、線分集合Pが空集合であるか否かを判定する。線分集合Pが空集合である場合には、当該処理ルーチンを終了する。一方、線分集合Pが空集合でない場合には、上記ステップS110へ戻り、上記ステップS110~ステップS116の処理を繰り返す。
【0074】
上記の処理ルーチンでは、ステップS110、S112において基準線分に着目し、基準線分の始点から距離r
th以内に始点を持つ線分を同一クラスタとしてまとめた後、ステップS114、S116において基準線分の始点、終点との距離が閾値d
thよりも大きくなる始点もしくは終点を有する他の線分を除外している。これは床面作業ロボット14のペン描画装置18の有効作業範囲を越える線分を除外する処理に相当する。なお距離r
thおよび閾値d
thは、ペン描画装置18の有効作業範囲から決定する。
図16(a)は、上記
図9で示した作業データに対し、r
th=d
th=150mmとして上記処理ルーチンによりクラスタリングした結果であり、同一のクラスタに属する線分を丸で囲んでいる。
図16(b)は
図16(a)のPart A部分を拡大したものであり、複数の作業対象線分が1つのクラスタに纏められていることを確認できる。元データの墨出し箇所数(線分数に等しい)は295個であったが、クラスタリングにより176個(クラスタ数に等しい)まで削減されている。
【0075】
クラスタリングを行うことで、作業対象線分間の移動回数が少なくなり作業効率が改善する。
【0076】
次に、床面作業ロボット14の通信部15が、複数の作業対象線分からなる作業データ、及び複数の作業位置を表す作業位置データを受信すると、ロボット制御機器14Aは、複数の作業位置を、目標位置として、複数の目標位置の各々へ床面作業ロボット14を移動させる際に、移動に要する時間と旋回するのに要する時間とを考慮して、複数の目標位置の各々の間の移動経路を決定する。
【0077】
また、本実施形態における作業システム10による床面作業ロボット14の動作の概要は、特願2018-237686に記載の床面作業ロボットの動作と同様であるため、説明を省略する。
【0078】
また、レーザ装置12と床面作業ロボット14との動作の流れ及び信号のやりとりに関しては、特願2018-237686に記載の動作の流れ及び信号のやりとりと同様であるため、説明を省略する。
【0079】
以上説明したように、本発明の実施形態では、作業のための駆動機構を備えた床面作業ロボットについての、複数の作業対象線分を表す作業データに対して、ペン描画装置の有効作業範囲を用いてクラスタリングを行って、床面作業ロボットが同一の作業位置において作業可能な作業対象線分からなるクラスタを抽出することにより、床面作業ロボットが同一の作業位置において作業可能な作業対象線分を抽出することができ、作業効率を向上させることができる。更に、クラスタに含まれるすべての作業対象線分を囲む最小包囲円の中心に対応する位置を、床面作業ロボットの作業位置として計算することにより、作業効率を更に向上させることができる。
【0080】
また、実際の建築図面を基にしたテストデータに、上記の実施形態で示したクラスタリング手法を適用したところ、元の墨出し箇所数295箇所(線分データ数と等しい)を176箇所(クラスタ数と等しい)にまで削減することができた。墨出し箇所数の削減はそのまま床面作業ロボット14の移動回数の削減に直結する。また、上記の実施形態で示した作業位置の計算方法を適用したところ、各クラスタにおける作業位置からのペン移動量の最大値を短くすることができた。床面作業ロボットは、作業位置まで移動してペン描画装置により床面に描画する.床面作業ロボットの移動誤差によりクラスタ内の線分がペン描画装置の有効作業範囲外になった場合、再度、床面作業ロボットを作業位置まで移動させる必要があるため作業効率が下がる。作業位置からのペン移動量を短くすることで、移動誤差が発生してもクラスタ内の線分がペン描画装置18の有効作業範囲内に含まれやすくなり、余計な再移動が発生しにくくなる。
【0081】
本発明の実施形態で示した作業位置の計算方法を適用して生成した作業位置データに従って作業することにより作業効率は改善する。生成した作業位置データに、特願2019-236406の移動経路決定装置を適用することで、更なる作業効率の改善が可能となる。
【0082】
<変形例>
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【0083】
例えば、上記実施形態では、作業対象位置が全て線分で定義されている場合を例に説明したが、これに限定されるものではない。例えば、複数の線分を組み合わせてブロック化して定義された図形、曲線、円、又は文字列で定義されていてもよい。作業対象位置が、複数の線分を組み合わせてブロック化して定義された図形で表される場合にはブロック化を解除して、複数の線分に分解してから、上記の実施形態と同様の処理をすればよい。曲線、円、又は文字列で表されている場合には、
図18(a)~(c)に示すように,それぞれの図形を包含する長方形を求め、長方形の4辺を線分として4つの始点と4つの終点を設定してから、上記の実施形態と同様の本手法を適用すれば良い。
【0084】
また、作業対象位置が、点又は領域で表されていてもよい。
【0085】
また、作業システムの構成が、
図1及び
図2に示されるような場合を例に説明したが、これに限定されるものではない。例えば、ロボット制御機器14Aは、床面作業ロボット14に搭載せずに、外部装置として構成するようにしてもよい。また、目標位置記憶部141及びレーザ制御部12Aに関しても、それぞれ、床面作業ロボット14及びレーザ装置12に搭載せずに、外部装置として構成するようにしてもよい。この場合には、レーザ装置12及び床面作業ロボット14は、外部装置との間の通信処理によって制御が行われる。
【0086】
また、上記各実施形態においては、床面作業部がペン描画装置18である場合を例に説明したが、これに限定されるものではない。別の作業に対しても作業機構の有効作業範囲を考慮することで同様に適用可能である。例えば、ペン描画装置18を、床面への削孔装置又は床面へのピン打ち装置に変更するようにしてもよい。これにより、床面の穴あけ又はピン打ちを行うことができる。
【0087】
また、上記各実施形態においては、作業位置解析装置10を外部装置として構成する形態としたが、床面作業ロボット14に搭載してもよい。この場合には、有線信号によりロボット制御部140へ計算結果を出力する。
【0088】
また、上記ではプログラムが記憶部(図示省略)に予め記憶(インストール)されている態様を説明したが、プログラムは、CD-ROM、DVD-ROM及びマイクロSDカード等の記録媒体の何れかに記録されている形態で提供することも可能である。
【符号の説明】
【0089】
10 作業システム
14 床面作業ロボット
14A ロボット制御機器
14B カメラ
14C 移動駆動モータ
14D 駆動モータ
15 通信部
16 移動機構
18 ペン描画装置
100 作業位置解析装置
102 取得部
104 クラスタリング部
106 作業位置計算部