(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-26
(45)【発行日】2024-08-05
(54)【発明の名称】ライン印刷経路最適化を伴う自走式印刷ロボット及び印刷方法
(51)【国際特許分類】
G05D 1/43 20240101AFI20240729BHJP
【FI】
G05D1/43
(21)【出願番号】P 2021563401
(86)(22)【出願日】2020-04-23
(86)【国際出願番号】 US2020029592
(87)【国際公開番号】W WO2020219728
(87)【国際公開日】2020-10-29
【審査請求日】2023-02-08
(32)【優先日】2019-04-23
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521465256
【氏名又は名称】ダスティ ロボティックス インコーポレイテッド
【氏名又は名称原語表記】DUSTY ROBOTICS, INC.
(74)【代理人】
【識別番号】100147485
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100173794
【氏名又は名称】色部 暁義
(72)【発明者】
【氏名】フィリップ ジョセフ ハーゲット
(72)【発明者】
【氏名】テッサ アン ロウ
(72)【発明者】
【氏名】シー-チー シウン
【審査官】大古 健一
(56)【参考文献】
【文献】米国特許出願公開第2007/0100496(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/00 - 1/87
(57)【特許請求の範囲】
【請求項1】
自走式印刷ロボットを使用して表面上にラインを印刷する方法であって、
建築表面上に印刷すべきレイアウトにおける1組のラインのセットを描く情報にアクセスするステップと、
前記建築表面及び印刷ラインを移行する前記自走式印刷ロボットの動きを制限する少なくとも1つのオブジェクトを識別する情報を受け取るステップと、
前記自走式印刷ロボットをナビゲートし、また前記ラインのセットを印刷するライン経路を選択するステップと、
前記自走式印刷ロボットによっては完全に印刷できない少なくとも1つのラインを人的ユーザーが完成するのを支援するため、前記自走式印刷ロボットによって印刷すべき少なくとも1つのマーキングを生成するステップと、を含む、方法。
【請求項2】
請求項1記載の方法において、前記情報を受け取るステップは、前記自走式
印刷ロボットの移動を制約する任意な建築構体を描いている建築構体情報を受け取るステップを有する、方法。
【請求項3】
請求項2記載の方法において、前記情報を受け取るステップは、前記建築構体情報には描かれておらず、前記自走式
印刷ロボットの移動に対する少なくとも1つの障害物を描く障害物情報を受け取るステップを有する、方法。
【請求項4】
請求項1記載の方法において、さらに、前記ラインに沿う移動の第1方向でラインを印刷する自走式
印刷ロボットの能力に対する向きの制約を決定するステップを備える、方法。
【請求項5】
請求項
4記載の方法において、前記自走式
印刷ロボットは、壁の近傍でラインを印刷する前記自走式
印刷ロボットの能力が、前記ラインに沿う前記壁に対する移動方向に依存する少なくとも1つの印刷ヘッドの配列を有する、方法。
【請求項6】
請求項1記載の方法において、ライン経路の選択は、前記自走式印刷ロボットのための位置決め情報の利用可能性に少なくとも部分的に基づく、方法。
【請求項7】
請求項1記載の方法において、前記ライン経路の選択は、建築レイアウトの少なくとも1つのラインをトリミングするステップを有する、方法。
【請求項8】
請求項1記載の方法において、前記ライン経路の選択は、建築レイアウトの少なくとも1つのラインを少なくとも2つのラインセグメントに分割するステップを有する、方法。
【請求項9】
請求項1記載の方法において、前記ライン経路の選択は、前記自走式
印刷ロボットの互いに反対の移動方向に沿って印刷可能なラインセグメントにラインを分割するステップを有する、方法。
【請求項10】
請求項1記載の方法において、最適化は、ラインの一部分にある障害物を識別するステップ、
並びに前記障害物によって妨害されずにラインの一部分を印刷するようトリミング及び分割のうち少なくとも一方を実施するステップと、を有する、方法。
【請求項11】
請求項1記載の方法において、前記ライン経路の選択は、1) 印刷される前記レイアウトの割合を増大させる、及び2) 前記レイアウトを印刷するための時間を短縮する、のうち少なくとも一方を実施するように選択する、方法。
【請求項12】
自走式印刷ロボットを使用して表面上にラインを印刷する方法であって、
建築表面上に印刷すべきレイアウトにおける1組のラインのセットを描く情報を受け取るステップと、
前記建築表面及び印刷ラインを移行する前記自走式印刷ロボットの動きを制限する少なくとも1つのオブジェクトを識別するステップと、
建築レイアウトの個別のラインがラインを印刷する自走式
印刷ロボットの移動の一方向又は双方向で印刷可能か否かを分類するステップと、
少なくとも一方向で印刷不能な少なくとも1つのラインに関して、
前記少なくとも一方向で前記ラインの少なくとも一部分の印刷を可能にするようライントリミング及びライン分割のうち少なくとも一方を実施するステップと、
一方向又は双方向で印刷可能な個別ライン、任意なトリミングされたライン、及び任意な分割されたラインのラインセグメントを印刷するための印刷方向を選択するステップと、
前記自走式印刷ロボットによっては完全に印刷できない少なくとも1つのラインを人的ユーザーが完成するのを支援するため、前記自走式印刷ロボットによって印刷すべき少なくとも1つのマーキングを生成するステップと、
を含む、方法。
【請求項13】
請求項
12記載の方法において、前記自走式
印刷ロボットの動きを制限する少なくとも1つのオブジェクトを識別するステップは、前記自走式
印刷ロボットの移動を制約する任意な既存建築構体を描いている建築構体情報を受け取るステップを有する、方法。
【請求項14】
請求項
13記載の方法において、前記自走式
印刷ロボットの動きを制限する少なくとも1つのオブジェクトを識別するステップは、前記建築構体情報には描かれておらず、前記自走式
印刷ロボットの移動に対する少なくとも1つの障害物を描く障害物情報を受け取るステップを有する、方法。
【請求項15】
請求項
12記載の方法において、ライン分割は、第1印刷方向でラインの第1部分を印刷し、また第2印刷方向で前記ラインの第2部分を印刷するために実施する、方法。
【請求項16】
請求項
12記載の方法において、前記トリミング、前記分割、及び前記印刷方向は、1)
予め選択された印刷品質標準内で印刷される前記建築レイアウトのラインの最大割合を増大させる、及び2)印刷時間を短縮する、のうち少なくとも一方を実施するように選択する、方法。
【請求項17】
請求項
12記載の方法において、さらに、前記自走式印刷ロボットのための絶対位置決め情報のソースが欠けている建築表面の領域を識別するステップと、絶対位置決め情報のソースが欠けている建築表面の領域の少なくとも一部分でトリミング及び分割の少なくとも一方を実施するステップと、を備える、方法。
【請求項18】
少なくとも1つの自走式ロボットコントローラ及び建築表面上に印刷するよう構成された自走式ロボット印刷システムを備える自走式ロボットシステムであって、
前記自走式ロボットシステムは、ラインを印刷するのに使用されるライン経路の最適化であり、建築レイアウトの少なくとも1つのラインでトリミング及び分割のうち少なくとも一方を含む、前記最適化でレイアウトのラインを印刷するよう構成されている、自走式ロボットシステム。
【請求項19】
請求項
18記載の自走式ロボットシステムにおいて、前記ライン経路の最適化は、少なくとも1つのラインを印刷する指向性がある向きを選択するステップを含む、自走式ロボットシステム。
【請求項20】
請求項
18記載の自走式ロボットシステムにおいて、前記自走式ロボットシステムは、該自走式ロボットシステムによっては印刷されない前記建築レイアウトの一部分を人的ユーザーが完成するための少なくとも1つのマーキングを印刷するよう構成されている、自走式ロボットシステム。
【請求項21】
請求項
18記載の自走式ロボットシステムにおいて、前記自走式ロボットシステムは、ラインを印刷する上での障害物を検出するのに応答して前記最適化を実施する、自走式ロボットシステム。
【請求項22】
請求項
18記載の自走式ロボットシステムにおいて、前記自走式ロボットシステムは、前記レイアウトの壁に近接する
ように前記自走式ロボットシステムの印刷ヘッドを優先的に指向させるよう選択した前記自走式ロボットシステムの移動方向で前記建築レイアウトのラインを印刷する、自走式ロボットシステム。
【請求項23】
請求項
18記載の自走式ロボットシステムにおいて、少なくとも2つのセグメントに分割されたラインに関して、前記自走式ロボットシステムは、第1印刷方向で前記ラインの第1セグメントを印刷し、また第2印刷方向で前記ラインの第2セグメントを印刷する、自走式ロボットシステム。
【請求項24】
請求項
18記載の自走式ロボットシステムにおいて、トリミングされたラインに関して、前記自走式ロボットシステムは前記ラインを印刷し、また前記自走式ロボット
システムが障害物に衝突する前にライン印刷を停止する、
自走式ロボットシステム。
【請求項25】
請求項
18記載の
自走式ロボットシステムにおいて、前記自走式ロボットシステムは、印刷品質標準内でラインを印刷するため、位置決め情報の喪失に応答してトリミング及び分割の少なくとも一方を実施する、自走式ロボットシステム。
【発明の詳細な説明】
【関連出願の相互参照】
【0001】
本出願は、参照により全体が本明細書に組み入れられるものとする、2019年4月23日出願の米国仮出願第62/837,273号の優先権を主張する。
【技術分野】
【0002】
本開示は自走式ロボット技術に関する。より具体的には、本開示は水平平面上にマーキングを印刷できる自走式ロボットに関する。
【背景技術】
【0003】
自走式ロボットは様々な用途に使用することができる。自走式ロボットを使用できる1つの環境は建設作業現場であり、この場合、自走式ロボットはその環境で様々な機能を実施することができる。1つのこのような用途は、建設中の建築物のコンクリートフロアのような表面上に製図、テキスト、又は他のマーキングの印刷である。
【0004】
このような自走式印刷ロボットを構築する1つの難題は、ロボットがマーキングを遂行しなければならない精度である。建設用途において、一般的に1.6mm(1/16インチ)未満の精度が要求される。自走式ロボットの位置決めは、概して、この精度ではない。空間内でロボット位置を決定する(「位置付け(localization)」)のための一般に容認されるアルゴリズムは、壁のような既知の陸標(ランドマーク)からのロボットの距離のセンサ読取り(代表的にはライダー(LiDAR))を使用する。しかし、最上位機種のライダーユニットがセンチメートル(cm)単位の確度内の距離を報告するだけで、ロボット自体の位置を精密に決定するロボット能力を制限する。
【0005】
建設レイアウト(割り付け)の現行慣習は、フローリング表面に物理的にマーキングすることによって壁、配管、及び配線のような建築コンポーネントをレイアウトする人的要員を雇うことである。場所は、建築家によって作成され、また代表的には、見取り図の大判ロール又はタブレットコンピュータにおけるデジタル形式で作業現場に送付される設計図を参照する。代表的レイアウトプロセスは、コンクリート支柱のような既知の陸標からの距離を測定する巻き尺を用いるステップと、また真直ぐなライン(線)をマーク付けするため2つのピン間にチョークで被覆したストリングを張り渡すステップとを備える。他のマーキングは、付着力のある粘着ドット、スプレー塗料缶、又は顔料マーカーの使用により表面に注記付けすることによって行う。人的労力は費用がかかり、また間違いを生じ易いため、マーキングは、概して、その後の労働要員が、枠組み及び乾式壁の設置、加熱、換気、及び空調(HVAC)、電気配線、配管又はマーク付けした場所での固定をするのに必要な基礎的情報に制限される。
【発明の概要】
【課題を解決するための手段】
【0006】
自走式印刷ロボットは、建設現場における水平平面のような建設表面上に地物(features)を印刷する。レイアウトを印刷するのに自走式ロボットを使用することができるが、より一般的には、ライン(線)、符号、文字、数字、及び基準も印刷することができる。自走式ロボットは、建築物レイアウトにおける少なくとも一部のためのラインリストを印刷するよう設計することができる。
【0007】
幾つかの実施形態において、自走式ロボットが印刷すべきラインリストを受け取る。ライン印刷経路最適化は、ラインを仕分けする、分割する、方向付けする、トリミング(cropping)するというような、1つ又はそれ以上の最適化を実施するように行われる。ライン印刷経路最適化は、施工に基づいて異なる場所で実施することができる。ライン印刷経路最適化のうち幾つか又は全ては、作業現場における自走式ロボット上又は局所携帯コンピュータデバイス上で実施することができる。しかし、ライン印刷経路最適化は、ネットワークサーバー上又はクラウドを介してのように、現場から離れて実施することができる。
【0008】
ライン印刷経路最適化は、例えば、自走式ロボットの印刷ヘッド構成、自走式ロボットの移動又はターンする能力、既存建築構造体、敷地面の障害物、正確な場所情報の一時的喪失に関する制約、又は他の制約に対処することができる。ライン印刷経路最適化は、異なる印刷方向に沿うライン、トリミングライン、分割ラインの印刷適性を識別することができる。幾つかの実施形態において、ライン印刷経路最適化は、レイアウトの印刷される部分を増大するよう実施することができる。幾つかの実施形態において、マーキングは、自走式ロボットが印刷できないレイアウト部分を完成するための人的ユーザーを支援するよう自走式印刷によって印刷することができる。
【図面の簡単な説明】
【0009】
【
図1】自走式印刷ロボットシステムの実施形態を示す。
【
図2】実施形態による自走式ロボットのブロック図である。
【
図3】実施形態による計算システムのブロック図である。
【
図4】ロボットで印刷する方法の実施形態によるフローチャートである。
【
図5】基準を印刷する方法の実施形態によるフローチャートである。
【
図6】基準を検出する方法の実施形態によるフローチャートである。
【
図7A】ライン印刷経路を最適化する方法の実施形態によるフローチャートである。
【
図8】ラインの仕分け、トリミング、及び分割を含むライン印刷経路最適化を実施する方法の実施形態による第1フローチャートである。
【
図9】ラインの仕分け、トリミング、及び分割を含むライン印刷経路最適化を実施する方法の実施形態による第2フローチャートである。
【
図10A】自走式ロボットが印刷できるレイアウトの割合を向上させ、また人が完成しなければならないラインの数を減らすために、どのようにしてライン印刷経路最適化を使用し得るかの実施形態による実施例を示す。
【
図10B】自走式ロボットが印刷できるレイアウトの割合を向上させ、また人が完成しなければならないラインの数を減らすために、どのようにしてライン印刷経路最適化を使用し得るかの実施形態による実施例を示す。
【
図10C】自走式ロボットが印刷できるレイアウトの割合を向上させ、また人が完成しなければならないラインの数を減らすために、どのようにしてライン印刷経路最適化を使用し得るかの実施形態による実施例を示す。
【
図10D】自走式ロボットが印刷できるレイアウトの割合を向上させ、また人が完成しなければならないラインの数を減らすために、どのようにしてライン印刷経路最適化を使用し得るかの実施形態による実施例を示す。
【
図11A】異なる構成の印刷ヘッドを有するロボットを使用して、最適化アルゴリズムにより可能性のある改善をもたらす実施例を示す。
【
図11B】異なる構成の印刷ヘッドを有するロボットを使用して、最適化アルゴリズムにより可能性のある改善をもたらす実施例を示す。
【
図11C】異なる構成の印刷ヘッドを有するロボットを使用して、最適化アルゴリズムにより可能性のある改善をもたらす実施例を示す。
【
図11D】異なる構成の印刷ヘッドを有するロボットを使用して、最適化アルゴリズムにより可能性のある改善をもたらす実施例を示す。
【
図12A】障害物が建設作業現場にある状態で最適化アルゴリズムの使用により改善をもたらす実施例を示す。
【
図12B】障害物が建設作業現場にある状態で最適化アルゴリズムの使用により改善をもたらす実施例を示す。
【
図12C】障害物が建設作業現場にある状態で最適化アルゴリズムの使用により改善をもたらす実施例を示す。
【
図12D】障害物が建設作業現場にある状態で最適化アルゴリズムの使用により改善をもたらす実施例を示す。
【
図13A】レイアウトの完成を支援するためのマーキングを生成する実施例を示す。
【
図13B】レイアウトの完成を支援するためのマーキングを生成する実施例を示す。
【
図13C】レイアウトの完成を支援するためのマーキングを生成する実施例を示す。
【
図13D】レイアウトの完成を支援するためのマーキングを生成する実施例を示す。
【
図13E】レイアウトの完成を支援するためのマーキングを生成する実施例を示す。
【発明を実施するための形態】
【0010】
<例示的自走式印刷ロボットシステム>
図1は、自走式ロボット104を備える自走式ロボット印刷システム100を示す。自走式ロボット104は、建設現場をナビゲートし、また建設表面(例えば、建設現場の水平平面、例えば、建設現場のコンクリートフロアとすることができる)上に印刷するハードウェア及びソフトウェアを有する。
【0011】
自走式ロボット104の1つの使用は、建設環境で動き回り、また特定場所にマーキングを印刷又はそれ以外の方法で形成することがある。例えば、一実施形態における自走式ロボット104は、建築物レイアウトを自律的にナビゲートし、また印刷する自走式印刷ロボットである。例えば、この自走式ロボットは、建築物をどのように建設すべきかの建築家の設計図に対応する建築物レイアウトをフロア(例えば、コンクリート表面)上に印刷することができる。より全般的には、自走式印刷ロボット104は、建築物レイアウト以外にもフロア上に他の情報を印刷することができる。
【0012】
一実施形態において、位置/場所を正確に決定する運動能力を有する1つ又はそれ以上の絶対位置決めデバイス(APD:absolute positioning devices)を設ける。APDによる手法の幾つかの実施例としては、ヒューマティクス社(Humatics Corporation)製造によるような無線測位ソリューションがある。APDによる手法の他の実施例としては、HTC Vive(登録商標)のような光測位ソリューションがある。一実施形態において、APDは、APD106から自走式ロボット104におけるポイントまでの角度及び距離を測定する総合ステーション又はレーザートラッカーを備える。この情報は、自走式ロボット104の場所を正確に決定することを可能にする。一実施例として、APD106は角度及び距離を測定する総合ステーションとすることができる。総合ステーション(TS:Total Station)は、2軸作動ジンバル上におけるレーザー距離測定器を備え、プリズムのような反射デバイスから反射するレーザービームを発生するタイプのAPDである。TSは、代表的には、電子距離計(EDM)と併せて電子トランシット・セオドライトを使用する。代表的には、マイクロプロセッサ、電子データ収集器、及び記憶システムと統合する。水平角及び鉛直角を含めて、オブジェクトの機器までの傾斜距離を測定する。一実施形態において、APDは、自走式ロボットに備え付けたリフレクタを追跡するレーザートラッカーを備える。
【0013】
TS又はレーザートラッカーは、リフレクタまでの距離と、ベースステーションに対するリフレクタの2つの角度との双方を測定する。これら3つの測定値を用いて、TSの場所に対するリフレクタの場所を計算することができる。このようにして、TSが建築物における所与の場所に位置決めされると仮定して、建築物におけるリフレクタ位置はTSの場所に対して決定することができる。
【0014】
例えば、総合ステーションは、建設表面上方の選択した高さにある三脚台上に備え付けることができる。この場合、このことは、総合ステーションが、とともに、自走式ロボット104におけるポイントまでの水平角及び鉛直角を計算することを可能にする。その情報からは、自走式ロボットの絶対位置の正確な決定が計算される。
【0015】
総合ステーションはAPDの一実施例であるが、自走式ロボット104におけるポイントまでの角度又は距離を決定する他の光学的又はRFによるデバイスも使用することができる。
【0016】
一実施形態において、APD106は、ロボット104に固定することができるリフレクタ、プリズム、又は同様な逆反射デバイス105の場所を検出するのにレーザーを用いて、ロボット場所を測定する。
【0017】
一実施形態において、APD106のレーザービームは、逆反射デバイス105に向かう見通し経路に指向するレーザービームを伝達する。
【0018】
幾つかの実施形態において、APD106は、自動的に自走式ロボット104の移動を追跡し、これにより自走式ロボット104の一連の位置/場所読取り値を生成する。
【0019】
逆反射デバイス105は、場合によって視野と称されるが、光学的技術分野で使用される他の用語もある少なくとも所定角度範囲にわたり光を光源に反射して戻す任意な光学的素子又は素子群とすることができる。古典的光学において、3つの面を有する三面鏡が逆反射リフレクタの例である。しかし、幾つかのプリズムは角度範囲にわたり逆反射性を有する。さらに、角度範囲にわたり逆反射性を有する小平面のセットを持つ光学デバイスもある。さらに、何らかの逆反射コーティングのような若干の逆反射材料分野もある。幾つかの総合ステーションは、安全ベストのような他の反射表面に総合ステーションがロックするのを防止するため、能動的電子機器とともに、多数のコーナー付きリフレクタを有する能動的リフレクタに一体化する。幾つかの実施形態において、能動的リフレクタは正確な測位用ロボットと併用される。
【0020】
逆反射デバイス105は360°逆反射デバイスとして実現することができる。代案として、狭い視野を有するが、ロックを維持するよう使用中にAPDに向けて回転させることができる。
【0021】
幾つかの実施形態において、測定した場所は無線通信ネットワーク120を介してロボットに通信される。測定した場所情報を通信することができる方法としては多くの異なる方法がある。しかし、待ち時間が少なくかつ待ち時間変動性が少ない通信リンクが望ましい。これはすなわち、自走式ロボット104の印刷精度を改善するのに有用である、自走式ロボットの速度、望ましい印刷精度、及び場所情報受信における遅延効果の間に様々なトレードオフがあるからである。例えば、自走式ロボット104が1m/sの速度で移動すると想定する。それは、ひいては1msの通信遅延は自走式ロボットが移動する1mmの距離に対応することを意味する。目標が1mmのオーダーの印刷ライン精度を得るものであった場合、この実施例において場所情報を受信する時間遅延は、自走式ロボット104の移動を制御するのに理想的である時間よりも遅くなる。幾つかの実施形態において、自走式ロボットのコントローラが現在場所を予測する。例えば、自走式ロボットは、位置データ及び関連のタイムスタンプの受信インスタンスに基づいて現在場所を予測することによって場所情報を受信するのにかかる長い時間に対処することができる。
【0022】
通信リンク120はWi-Fi(登録商標)のような既存ネットワークを使用することができる。しかし、Wi-Fiは、幾つかの場所、例えば、建設現場付近において多数のWi-Fiが存在するような都市においては、長い遅延を受けるおそれがある。Sigfox及びLoRaのようなLPWAN(Low Power Wide Area Network)通信プロトコル、又は他の低周波数無線通信プロトコルは可能性がある。LoRaは干渉を最小化するスペクトル拡散技術を使用する。ダイレクトリンク上で場所情報を通信するため、個別レーザービーム(又は発光ダイオード)を使用するような局所ダイレクト光リンクは他の可能性がある。局所ダイレクト無線周波数リンクも別に可能性がある。いずれにせよ、APD106とロボット104との間の通信リンクとして、無線又は光学的な接続を使用する様々な異なるネットワーク通信技術又はダイレクト通信チャネルを使用することができる。
【0023】
幾つかの実施形態において、非時間的機密情報は異なる通信リンクを用いて通信することができる。非時間的な機密情報を通信するため、例えば、Wi-Fiネットワークリンクのような普通の無線リンクを使用することができる。
【0024】
一実施形態において、ユーザー・インタフェース114を有する随意的な携帯コンピュータデバイス114、例えばユーザー・インタフェース114を有するタブレットコンピュータデバイスは、自走式ロボット104と通信することができる。幾つかの実施形態において、随意的な携帯コンピュータデバイスもAPD106と通信することができる。
【0025】
一実施形態において、自走式ロボット104のユーザー又はオペレータは、自走式ロボット104の状態に関する情報にアクセスする、建築物情報モデル(BIM:building information model)又はCADモデルの建築物情報にアクセスする、又はコマンドを自走式ロボットに入力するため、携帯デバイスのユーザー・インタフェース114を使用する。
【0026】
BIM又はCADモデルは、一般的に建築すべき壁及び現場に元々存在する壁のアウトラインを与えるラインセグメントを含む建築物に関するすべての情報を含む。このBIM又はCADは、ロボットをナビゲートするマップを生成するのに使用することができ、またフロア上に壁アウトラインを描出するときロボットが遭遇することが予想される一連の障害物を含ませることができる。
【0027】
さらに、建設が進行するにつれて、建設現場にBIMからは作成できない様々な障害物が存在し得る。このことは、自走式ロボットの安全移動に対する障害物、例えば、建設現場の放置されるパレットを含むことがあり得る。しかし、建設の他の態様、例えば、配管、配線等々も含み得る。
【0028】
障害物の存在は、さらに、直接見通し線を必要とするAPDの使用を阻害することがあり得る。例えば、自走式ロボット104が支柱、建設現場に放置されたパレット又は壁の背後を移動する場合、見通し線に基づくAPDは一時的に無効化され得る。
【0029】
以下により詳細に説明するように、ライン印刷経路最適化(LPPO:line printing pathway optimization)130エンジンはレイアウトのライン印刷を最適化する。最適化は、例えば、自走式ロボット作業現場における自走式ロボット自体の運動能力及び任意な障害物に起因する、自走式ロボットの印刷性能及び作業現場を移行する能力に対する様々な制約を考慮することができる。幾つかの実施例としては、ラインを仕分けする、ラインを分割する及びラインをトリミングすることがある。LPPO130エンジンは、オフラインを実装することができ、また最終結果を自走式ロボットに供給することができる。しかし、幾つかの実施形態において、LPPO130エンジンは、局所コンピュータデバイス114上又は自走式ロボット104上に実装することができる。
【0030】
図2に示すように、自走式ロボット104の一実施形態は、コントローラ295と、1つ又はそれ以上のセンサ202であって、そのうちの1つはIMU、加速度計、ジャイロスコープ、又はコンパスとすることができる、該センサ202と、自走式ロボットを移動させるモータ及びホイールのような形体を含む自走式ベース204と、通信デバイス206と、リフレクタ208と、GPSセンサ210と、バッテリー224と、クリフ検出器226と、BIM又はCADにアクセスするBIMモジュール222と、障害物検出器220(深度(depth)カメラ又はライダーとすることができる)と、視覚的走行距離計測法モジュール218と、印刷システム216と、1つ又はそれ以上のカメラを有するカメラシステム214と、状態推定器280と、及び基準創出及び検出モジュール270と、を備える。一実施形態において、通信デバイス206は、APD106及び/又は随意的な携帯デバイス114との無線通信リンクを実現する。
【0031】
一実施形態において、コントローラ295は、2地点間(point-to-point)ナビゲーションコントローラ292、ラインナビゲーションコントローラ294及び印刷コントローラ296を含む。2地点間ナビゲーションコントローラは、2地点間、例えば、ポイント「A」と「B」との間でナビゲートするが、「A」から「B」に至る固定経路を画定するものではない制御技術を利用する。2地点間ナビゲーションにおいて、自走式ロボットに対して「A」から「B」までの真直ぐなラインを正確に移動させることを要求する厳格な制約はない。ナビゲーションのこのモードは、自走式ロボットを障害物の周りで効率的にナビゲートするのを可能にすることを含めて、様々な利点を有する。一実施形態において、ラインナビゲーションコントローラ294は経路追従コントローラである。例えば、ラインナビゲーションコントローラ294が追従するためのポイント「C」と「D」との間の固定経路が選択される。例えば、ポイント「C」と「D」との間の経路としては、真直ぐなライン、湾曲したライン、又は真直ぐなライン及び湾曲したラインの組合せがあり得る。一実施形態において、経路追従コントローラは、印刷パスを実施するのに使用される。
【0032】
一実施形態において、印刷システム216は印刷ヘッドを含む。しかし、より全般的には、印刷システム216としては、可動印刷ヘッド、又は2つまたはそれ以上の異なる印刷ヘッドの選択肢があり得る。
【0033】
システム100の一実施形態において、ロボット104は、建築物における相対位置を追跡するため、カメラ、ライダー又は深度(depth)カメラからのカメラデータを使用し、またカメラデータからドリフトを除去し、かつ位置推定に対する補正を行うため総合ステーションによりアップデートを周期的に受信する。
【0034】
幾つかの実施形態において、状態推定器280は、すべての利用可能なソースからの情報を組み合わせることに基づいて所与時点における自走式ロボットの最もありそうな位置の推定値を生成するよう、利用可能な場所情報を組み合わせる。このことは、各データソースの待ち時間を考慮して自走式ロボットの最もありそうな位置及び向きの推定値を生成する点で、「センサフュージョン(sensor fusion)」とも記述することができる。例えば、APD106は、正確な場所情報を提供することができるが、ネットワーク102の通信時間遅延を受ける又はデータを頻繁には生成しない。さらに、APD106は、例えば、自走式ロボットが支柱、壁又は障害物の背後を移動するときのように見通し線が一時的に喪失される場合に一時的に利用不能になり得る。局所的なセンサ202及び218は、APDよりも待ち時間が少ないが、とくに、長期間にわたり信頼性が要求される場合、正確さに劣る場合があり得る。GPSセンサ210は、幾つかの建設現場では区別的に場所データを提供することができる。
【0035】
状態推定器280は、異なるタイプのデータの利用可能性及び制限、並びに直近の場所測定値シーケンスに関する情報を考慮して、自走式ロボットの場所及び向きの最良の推定値を生成する。例えば、状態推定器280は、統計学的重み付け技術に基づくセンサフュージョン・アルゴリズムを使用することができる。
【0036】
ロボット搭載のセンサ202、210及び214は、ロボット自体の場所を追跡する。センサ202としては、ライダー、レーダー、飛行時間カメラ、深度カメラ又は他の3Dカメラ、ソナー、等々を含む任意な共通的なロボットセンサがあり得る。例えば、カメラ214は、ロボット104上に任意な向きで備え付け、環境を観察し、またロボットが移動するにつれてその位置を決定することができる。視覚的走行距離計測法モジュール218は視覚的走行距離計測法を支援する。特に興味深い1つの技術は、用語「視覚的走行距離計測法(visual odometry)」(VO)の下従来技術で既知のアルゴリズムを使用している。これらアルゴリズムは、カメラシステム214が撮影した画像の動きを使用して、物体の相対移動を追跡する。これらシステムは相対移動を追跡するため、中間距離までの短距離にわたり正確であるが、より長い距離にわたり追跡するとき、緩慢なドリフトを被る。
【0037】
自走式ベース204は様々な異なる駆動技術を用いて実現することができ、これら駆動技術としては、オムニホイールを有するホロノミックな実施形態、ホイールがオムニホイールではない非ホロノミックな実施形態がある。差動2ホイールドライブのような非ホロノミック駆動システムは、ときに差動ホイール付きロボット(DWR)として知られており、一般的にオムニドライブ(例えば、「オムニ」ホイール又は「メカナム」ホイール)を有するロボットよりも実装するのが安価である。しかし、DWR実装は、精密ナビゲーションを得るのがより困難である。幾つかの実施形態において、ナビゲーションは、印刷パスを行うときに、2点間ナビゲーションからラインナビゲーションに切り替える
【0038】
一実施形態において、ロボット104は、絶対位置情報が利用可能であるときAPD106からのデータを主に信頼し、絶対位置情報が利用可能でないとき、ロボット搭載センサ202からのデータを主に信頼する。例えば、建設現場上でナビゲートする自走式ロボット104は、コンクリート柱を通過ドライブしているとき、このコンクリート柱によってTSに対する見通し線が一時的に遮られる場合があり得る。この実施形態の使用により、ロボット104は、TSが見えている間にはこのTSを使用して、その場所を計算することができ、視覚的接続が喪失されている間に視覚的走行距離計測法モジュール218、又は他のセンサの使用により視覚的走行距離計測法にフォールバックし、また視野に再出現した後にTSベースの場所の使用を再開する。
【0039】
幾つかの実施形態において、ロボット104は、複数カメラ214からの画像を使用して、空間にわたる極めて精密な移動推定値を生成する。例えば、ロボット104は、ボディ204の前部及び後部に、及び/又はロボット104の2つの側方端縁に位置付けた下向きカメラを有することができる。この形態において、各カメラは走行表面における微細部分を解像するに十分な倍率を必要とする。例えば、セメント内の粒子の微細部分を使用して、場所を一意的に特定することができる。このことは、表面が十分詳細な地物(features)を有している限り、レイアウトマーキングを必要とする任意な表面で行うことができる。例としては、セメント、タイル、木材、又はラム・ボード(Ram Board)のような一時的フロア被覆がある。
【0040】
幾つかの実施形態において、基準創出及び検出モジュール270を使用して、基準(例えば、基準マーク)を生成し、また後で印刷済み基準を使用するための自走式ロボットの行動を調和させる。例えば、基準を使用して、自走式ロボットの精密な場所を計算するよう自走式ロボットを支援することができる。
【0041】
一実施形態において、ロボット104は、前方向に移動し、後部カメラから収集した画像を同一場所において前部カメラが収集した画像と比較する。2つの画像間の精密な整合を見つけ、また2つのカメラ間の精密な距離を知ることによって、ロボット104は、2つの画像の取得間で移動した距離を測定することができる。同様に、左右のカメラが測定した動きを観察することによって、ロボットは角度向きを精密に追跡することができる。
【0042】
一実施形態において、印刷ロボット104は、さらに、障害物を検出する検出器220を備える。障害物検出のためにロボット工学に一般的に使用される任意な数のセンサを採用することができる。幾つかの例としては、インテル(登録商標)・リアルセンス(Intel RealSense)のような3D深度カメラ、飛行時間センサ、2Dライダー、レーダー、信号ポイント光センサ、又はバンパー用に機械的な衝突検出に使用される機械的センサがある。センサは、さらに、空いているエレベーターシャフト、階段、又は壁が未だ建設されていない建築物の端縁におけるようなクリフを検出するのに使用することもできる。ロボットが障害物を検出するとき、ロボットは、障害物の下側の面域が印刷されないような障害物周りを走行するよう選択することができる。障害物が大きい場合、建築物のその部分では続行できない。さらに、障害物をクリアして、良好な印刷品質が確保できるような障害物の存在をオペレータに気付かせることもできる。貫通孔のような小さい孔に関しては、ロボットは障害物上を走行することができ、これによりそのホイールが貫通孔にまたがり、貫通孔上に整列マークを印刷することができ、したがって、後で貫通孔の場所をチェックすることができる。
【0043】
描出すべきライン及び他の地物に関する一般的な情報は、建築物情報モデル(BIM)、CAD、又は他の建築製図から取得することができる。これらは、リベットモデル、又はDXF若しくはDWGファイルのような多くの形式で表現することができる。しかし、それらは、ライン又は他のオブジェクトのリストを含む任意な独占所有権のあるファイルとして表現することができる。
【0044】
描出すべき地物としては、ライン、文字、数字、及び記号の組合せがあり得る。例えば、幾つかの実施形態において、ライン及び地物は、印刷システムの印刷ヘッドによって印刷すべき画像に対応する。印刷ヘッドは、ラインだけでなく、文字、数字、及び記号の印刷も可能にする。このことは、例えば、建設現場で有用な任意な文字、数字、又は記号とともに、ラインを描くことを可能にする。描出すべき地物の決定は、他のコンピュータ実機によって処理し、また次に自走式印刷ロボットコントローラが受信することができる。しかし、より一般的には、これに関連するBIM/製図情報のバージョンを、障害物マップに対応する情報とともに、コントローラ295に記憶することができる。幾つかの実施形態において、このバージョンは、描出すべきラインを記述する第1ファイルと、及び回避すべき障害物を記述する第2ファイルとの2つのファイルを含むことができる。例えば、障害物マップは、BIM/製図情報並びに建設現場で収集した追加的障害物情報から導き出される地物を含むことができる。描出すべきラインは、印刷すべき1つのレイヤ又は1つのエリアを提示するBIMにおけるラインのサブセットとすることができる。
【0045】
自走式印刷ロボット技術の1つの用途において、ロボット104を使用して、建設中の建築物における水平平面上にマーキングを生成し、この場合、このようなマーキングは、建設中の建築物のデジタルモデルから、例えば、建築製図、建築物情報モデル(BIM)、又は個人業者が作成したショップ製図から抽出した情報に対応する。このような製図は、一般的には、建築家又は建築すべき建築物を設計する他の人達が描出する。現行の習慣では、これら製図は一般的に大判の紙シート上に印刷され、製図からの関連情報を建設中の各フロアに表面上にマーキングする責任がある現場の作業者に渡される。これらマークは、ライン(例えば、内装壁の骨組み行路の場所を示すための)、ポイント(例えば、配管が天井から吊り下げられる、又は埋め込み型照明を設置すべき場所を示すための)、又はテキスト(例えば、防火等級vs標準の乾式壁をどこに懸垂すべきかを区別するための)の形式をとることができる。
【0046】
表面上に適正なマーキングを生成する自走式印刷ロボット104は、例えば、モデルにアクセスするためにアプリケーション・プログラミング・インタフェース(API)を使用して、又はモデルをメモリに読み込み、またモデルから関心対象地物及びポイントを抽出することによって、先ず、デジタルモデルから関連情報を抽出しなければならない。この抽出は、ロボット上で行うことができる、又はタブレットコンピュータ114、若しくは現場から離れた場所又はクラウドに配置し、何らかのネットワーク形式の使用によりロボットに通信するような個別コンピュータシステム内で行うことができる。例えば、このことは、ロボット104上で動作するBIMモジュール222によって行うことができる、又はロボット104と同一のネットワーク102上に配置したBIMサーバー(図示せず)によって行うことができる。
【0047】
建設プロセス中に、BIMモデルは、建築物の望ましい設計における変更を反映するよう、又は建設プロセス中に見受けられる矛盾点に適応するよう変更することができる。これら変更が生ずるとき、建設作業員が最新の情報で作業を済ませられるよう、フロア上のマーキングをアップデートするのが望ましい。一実施形態において、自走式印刷ロボット104は、先ず表面を同一色材料(コンクリート色の塗料)で被覆し、次にその色付き材料の頂面に新しいセットのマーキングを生成し、効果的に元のマーキングを「消去」しかつ新しいものに置換することによって、先行マーキングをアップデートすることができる。別の実施形態において、自走式印刷ロボット104は、先行して生成されているマーキング跡を維持し、古いマーキングを現行セットのマーキングと比較し、古いマーキングと新しいマーキングとの相違がある面域でマーキングを消去及び再生成のみを行う。一実施形態において、望ましいマーキングと比較するため、フロア上の古いマーキングを感知するカメラ又は他の感知デバイスを使用する。別の実施形態において、ロボットは、何が先行して印刷されていたかを記憶しており、消去しまた再印刷すべき面域を計算するため、先行印刷ランの記憶を印刷すべき新しいマーキングと比較する。
【0048】
図3は、実施形態に依存する
図1及び2に示すモジュールを実現するよう構成されたコンピュータデバイスを示すことができる、実施例としてのコンピュータデバイス300のブロック図である。
【0049】
図示のように、コンピュータシステム300は、プロセッサ308、メモリ310、通信ユニット304、出力デバイス314、入力デバイス312、及びデータ格納部320を有することができ、これらは通信バス302によって通信可能に接続することができる。
図3に示すコンピュータシステム300は、実施例として提示するものであり、別の形態をとることができ、また本開示から逸脱することなく、追加した又はより少ないコンポーネントを含むことができると理解されたい。例えば、コンピュータデバイスの様々なコンポーネントは、様々な通信プロトコル及び/又は例えば、通信バス、ソフトウェア通信メカニズム、コンピュータネットワーク、等々を含む様々な技術を使用する通信のために接続することができる。図示しないが、コンピュータシステム300は、様々なオペレーティング・システム、センサ、付加的プロセッサ、及び他の物理的構成を有することができる。プロセッサ308、メモリ310、通信ユニット304、等々は、1つ又はそれ以上のこれらコンポーネントを代表する。
【0050】
プロセッサ308は、様々な入力、論理的及び/又は数学的演算を実施することによってソフトウェア命令を実行することができる。プロセッサ308は、メソッドデータ信号に対する様々なコンピュータ・アーキテクチャ(CISC、RISC、等々)を有することができる。プロセッサ308は、物理的及び/又は仮想的なものとすることができ、また単一コア又は複数の処理ユニット及び/若しくはコアを有することができる。幾つかの実施形態において、プロセッサ308は、バス302を介してメモリ310に接続することができ、メモリからデータ及び命令にアクセスし、またデータをそこに記憶することができる。バス302は、プロセッサ308をコンピュータシステム300の他のコンポーネントに、例えば、メモリ310、通信ユニット304、入力デバイス312、出力デバイス314、及びデータ格納部320に接続することができる。
【0051】
メモリ310は、コンピュータシステム300の他のコンポーネントにアクセスするためのデータを記憶及び提供することができる。メモリ310は、単一コンピュータデバイス又は複数のコンピュータデバイス内に設けることができる。幾つかの実施形態において、メモリ310は、プロセッサ308が実行することができる命令及び/又はデータを記憶することができる。例えば、メモリ310は、本明細書記載の技術を実現することができる、オペレーティング・システム、ハードウェアドライバ、他のソフトウェアアプリケーション、データベース、等々を含む命令及びデータを記憶することができる。メモリ310は、コンピュータシステム300のプロセッサ308及び他のコンポーネントと通信するため、バス302に接続することができる。
【0052】
メモリ310は、持続的にコンピュータが利用可能(読取り可能、書込み可能、等々)な媒体を有することができ、この媒体は、プロセッサ308が処理する又はプロセッサ308と接続するための、命令、データ、コンピュータプログラム、ソフトウェア、コード、ルーチン等々を、含む、記憶する、通信する、伝播する、又は転送する任意な持続的装置又はデバイスとすることができる。幾つかの実施形態において、メモリ310は、1つ又はそれ以上の揮発性メモリ不揮発性メモリ(例えば、RAM、ROM、ハードディスク、光ディスク、等々)のうち1つ又はそれ以上を含むことができる。メモリ310は単一デバイスとすることができる、又は複数タイプのデバイス及び構成を含むことができると、理解されたい。
【0053】
バス302は、コンピュータデバイスのコンポーネント間、コンピュータデバイス、ネットワーク102若しくはその一部分を含むネットワークバスシステム、プロセッサメッシュ、又はそれらの組合せ間でデータを転送するための通信バスを有することができる。幾つかの実施形態において、コンピュータデバイス300上で動作する様々なコンポーネント(オペレーティング・システム、デバイスドライバ、等々)は、バス302内に含まれる又はバスに関連して実装される通信メカニズムを介して協調動作しまた通信することができる。ソフトウェア通信メカニズムは、例えば、メソッド間通信、局所的機能若しくは手続き呼出し、リモート手続き呼出し、オブジェクトブローカー(例えば、CORBA)、ソフトウェアモジュール間のダイレクトソケット通信(例えば、TCP/IPソケット)、UDPブロードキャスト及び受信、HTTP接続を、含む及び/又は容易にすることができる。さらに、通信のうち任意なもの又はすべては安全なものとすることができる(例えば、SSH、HTTPS、等々)。
【0054】
通信ユニット304は、システム100のコンポーネント間における有線及び無線の接続性のための1つ又はそれ以上のインタフェースデバイス(I/F)を有することができる。例えば、通信ユニット304としては、限定しないが、様々なタイプの既知の接続性及びインタフェースの選択肢があり得る。通信ユニット304は、バス302を介してコンピュータシステム300の他のコンポーネントに接続することができる。通信ユニット304は、ネットワーク102に対する、及びシステム100の他の実機に対し、様々な標準通信プロトコルの使用により、他の接続を提供することができる。
【0055】
入力デバイス312は情報をコンピュータシステム300に入力するための任意なデバイスを有することができる。幾つかの実施形態において、入力デバイス312は、1つ又はそれ以上の周辺デバイスを有することができる。例えば、入力デバイス312としては、キーボード、ポインティングデバイス、マイクロフォン、画像/ビデオ撮影デバイス(例えば、カメラ)、出力デバイス314に一体化されるタッチスクリーンディスプレイがあり得る。出力デバイス314は、コンピュータシステム300から情報を出力できる任意なデバイスとすることができる。出力デバイス314は、ディスプレイ(LCD、OLED、等々)、プリンタ、触覚デバイス、オーディオ再生デバイス、タッチスクリーンディスプレイ、リモート・コンピューティング・デバイス、等々のうち1つ又はそれ以上を含むことができる。幾つかの実施形態において、出力デバイスは、ユーザーに提示するためのコンピュータシステム300のプロセッサ、例えば、プロセッサ308又は別の専用プロセッサにより出力される電子画像及びデータ出力を表示するディスプレイである。
【0056】
データ格納部320は、データを記憶し、又はデータにアクセスするための情報源を有することができる。幾つかの実施形態において、データ格納部320は、コンピュータシステム300上で動作可能なデータベース管理システム(DBMS)に関するデータを記憶することができる。例えば、DBMSとしては、構造化クエリー言語(SQL)DBMS、NoSQL DBMS、それらの任意な組合せ、等々があり得る。幾つかの場合において、DBMSは、行列から成る多次元テーブルにデータを記憶することができ、例えば、インサート、クエリー、アップデート及び/又は削除を操作し、データの行はプログラム的動作を使用する。
【0057】
データ格納部320によって記憶されるデータは、それらによって記憶される任意なタイプのデータを含む様々な基準を用いて組織化され、クエリーを行うことができる。データ格納部320としては、データテーブル、データベース、又はデータの他の組織的データ収集があり得る。
【0058】
データ格納部320は、コンピュータシステム300内又はコンピュータシステム300とは明確に異なるが、コンピュータシステム300に接続される若しくはアクセス可能な別のコンピュータシステム及び/又は記憶システム内に設けることができる。データ格納部320としては、データを記憶するための1つ又はそれ以上の持続性コンピュータ可読媒体があり得る。幾つかの実施形態において、データ格納部320は、メモリ310内に組み込むことができる又は明確に異なるものとすることができる。
【0059】
コンポーネント304、308、310、312、及び/又は314は、バス302及び/又はプロセッサ308によって、互いに及び/又はコンピュータシステム300の他のコンポーネントに通信で接続できる。幾つかの実施形態において、コンポーネント304、308、310、312、及び/又は314としては、それらの行為及び/又は機能性を提供するようプロセッサ308が実行可能なコンピュータ論理(例えば、ソフトウェア論理、ハードウェア論理、等々)があり得る。任意な上述した実施形態において、これらコンポーネント304、308、310、312、及び/又は314は、コンピュータシステム300のプロセッサ308及び他のコンポーネントと協調動作及び通信し得るものとすることができる。
【0060】
<印刷及び基準の実施例>
一実施形態において、自走式ロボット104は、固定場所における1つ又はそれ以上のマーキングデバイス、例えば、スプレーノズルを含む。別の実施形態において、マーキングデバイスは単一軸ステージ上に設ける。しかし、固定又は可動位置に幾つかのマーキングデバイスを設けることは不都合な点を有する。マーキングデバイス(印刷システム216の一部)をロボット104の固定位置に備え付ける場合、そのロボット104は、精密な場所にマークを生成できるようにするために、精密な場所に位置決めしなければならない。ロボット104を精密に位置決めすることは極めて難題であり、また構築が困難かつ高価となるおそれがある極めて精密なフィードバック制御システムを必要とする。移動するスプレーノズルを有するシステムも、機械的制限のある第2の制御システムが必要であるという欠点を有する。
【0061】
一実施形態において、ロボット104は、インク場所の迅速な制御を可能にする印刷コンポーネント(印刷システム216の一部)を有する設計にする。このシステムでは、ロボット104がマーキングを印刷すべき精密な場所にロボット本体を制御できない場合でも、マーキングは精密位置に沈着される。例えば、インクジェットプリンタヘッドを印刷コンポーネントとして使用することができる。このような印刷コンポーネントは、概して、アセンブリの長さに沿って直線的に備え付けたアレイ217としてインクを発射する一連のノズルを有することができ、またアセンブリの個別の印刷ノズルの電気的作動を可能にする。1つ又はそれ以上の印刷ノズルをオン又はオフにする能力により、マークを作成すべき場所の近傍に中心が位置付けられるロボット104は、適切なノズルを電気的に制御して正確な精密場所にマークを生成させることができる。
【0062】
ロボット印刷用途において、所望経路に向かう速度及びロボット位置は変化する。
【0063】
一実施形態において、ロボットは、発射パターンコントローラ219を有するインクジェット印刷システム216を備え、該発射パターンコントローラ219は、ロボット(x位置)の速度及び印刷される地物の所望場所(y位置)に対するロボットのトラバース位置双方のための補償入力を受信する。y位置が変化するとき、印刷ヘッドに送信される発射シーケンスは比例的にシフトし、これにより画像はフロアの正確な面域に着地する。
【0064】
別の実施形態において、コントローラ295は、印刷決定を行う印刷コントローラ296を含む。一実施形態において、そのコントローラは、ロボット104が移動する表面に対してロボット104の位置情報を計算又は受信する。例えば、制御システムは状態推定器280から位置情報(例えば、場所及び向き)を受信することができる。コントローラ295はこの情報を使用し、特定場所におけるグラウンド上に画像を作成するよう発射パターンコントローラ219に命令して、各印刷ヘッドノズルを発射させる。
【0065】
別の実施形態において、ロボット104は、高速リニアアクチュエータに備え付けた1つ又はそれ以上のノズルを有し、ロボットがその適正位置に向かって徐行する場合でも、ノズルを移動させる位置決めシステムの周波数応答性は高い。
【0066】
一実施形態において、自走式ロボット104は、測位システム(APD及び/又はVOの何らかの組合せを使用する)並びに印刷コンポーネントを有し、これによりロボットの測定した位置を使用して、ロボットが走行通過するとき、マーキングの指定パターンが精密場所上に着地するよう印刷コンポーネントの出力を微調整する。
【0067】
建設レイアウトにおいて、最も共通する地物の1つは壁セグメントのアウトラインであり、この壁セグメントは、各壁を建設するのに使用される底面トラックの場所を記す2つの平行ラインより成る。さらに別の実施形態において、ロボット104は、各印刷ヘッドが壁セグメントにおける2つの平行ラインのうち各一方を描出するよう位置決めされた2つの印刷ヘッドを装備される。正確に印刷するため、ロボット104は印刷ヘッドの幅内にその位置を制御するだけで済む。例えば底面トラックが8.255cm(3+1/4インチ)である場合、ロボット104は、中心間距離が8.255cm(3+1/4インチ)離間する、6.35cm(2+1/2インチ)幅の印刷ヘッドを有する設計にすることができる。ロボットが2つのラインを印刷するよう走行するとき、印刷ヘッドをラインの意図する場所の上方に維持する必要がある。したがって、ロボット104は、その位置を±0.635cm(±1/4インチ)にまで制御する必要がある。
【0068】
別の実施形態において、ロボット104は、ヘッドの間隔を変化させることができるようアクチュエータに位置付けた1つ又はそれ以上の印刷ヘッドを有する2つの印刷ヘッドを備える。このことは、ロボット104が異なる壁厚間での選択を可能にする。さらに別の実施形態において、ロボット104は、壁の中心間距離に離間させた2つの印刷ヘッドと、これら2つのヘッド間に配置した第3印刷ヘッドとを備え、壁アウトラインの内側にテキストを印刷できるようにする。この第3印刷ヘッドは、壁セグメントの中心にテキストを印刷できるように中心出しすることができる。
【0069】
別の実施形態において、ロボットは、ロボットの中心近傍に位置付けた1つ又はそれ以上の印刷ヘッドにプラスして、ロボットの端縁であり、好適には、ホイールスパンの外側に位置付けた付加的な幅狭の印刷ヘッドを有する。この構成によれば、ロボットが建設現場に位置付けられる壁、孔又は他の地物の近傍に印刷することを可能にする。
【0070】
インクジェット印刷ヘッドは様々な幅となる。この幅は、一般的に0.635cm(1/4インチ)からスパンが数インチにもわたる極めて大きな印刷ヘッドにまで変化する。印刷ヘッドの幅よりも大きい画像を作成するため、プリンタは、一般的に数回にわたるパス使用により画像を作成する。この技術を使用することは、連続した画像にするため各パス間の精密な整列を必要とする。この整列は、一般的に印刷ヘッドのドットピッチよりも小さい。例えば、600dpiのヘッドに関して、必要とされる整列は0.0042cm(1/600インチ)、すなわち42μm未満である。この整列がないと、2つのパスはギャップで分離するか又はオーバーラップして視覚的に歪んだ画像になるかのいずれかとなる。
【0071】
建設レイアウトに関して、一般的に必要とされる公差は、2.54cm(1インチ)の1/16、すなわち1.6mmより大きい。ロボット印刷した画像の視覚的外観を最大化する1つの選択肢は、単一パスで連続地物を印刷することである。しかし、これら地物は複数パスで印刷することもできる。
【0072】
ロボットで印刷する方法の例示的実施形態の1つを
図4に示し、この方法は、例えば、コントローラ295の印刷コントローラで実施することができる。印刷すべき画像は、ロボットが前進するとき一度に1行印刷される1セットのピクセル行として表現される形体を有する。例えば、印刷すべき画像は、始点、終点、及びライン幅を有する真直ぐなラインのセグメントである形体であり得る。しかし、より一般的には形体は単純ラインよりずっと複雑であり得る。印刷すべき画像に対する画像バッファには異なる技術的実施形態があり得る。コントローラ295は、例えばそれ自体の画像バッファを有することができる。しかし、より一般的には、印刷システム216は、印刷コマンド及びデータを受信し、またそれ自体の局所的画像バッファを有し、局所的に印刷すべき画像をこのバッファに一時的に蓄える。
【0073】
ブロック402において、形体のすべての行が印刷のために待ち行列に入れられる。例えば、印刷すべき画像は、画像バッファにおける行として配列されたピクセルに対応することができる。ブロック406において、自走式ロボットが1行距離前進するために待機させる待機フェーズを含むことができる。ブロック408において、現在場所を確認するため、自走式ロボット場所及び向きを取得する(例えば、センサ、APD、又は状態推定器から)ことができる。ブロック410において、現在のロボット場所に基づいて画像バッファにおける画像行をシフトする。ブロック404において、画像における1列を印刷する。ブロック412において、印刷が完了したか否かの決定をする。完了していない場合、プロセスはブロック406に戻る。そうでなければ、印刷を完了する。
【0074】
図4の実施例において、場所情報は各ピクセル行を印刷する前にチェックされる。このことは、画像印刷を自走式ロボットの動きに同期させる基本形を示す。
【0075】
印刷全体は、さらに、正確な印刷を容易にするシーケンスとして組織化することができ、例えば、単一パス印刷のセットとして印刷を組織化する。一実施形態において、ソフトウェア抽出プロセスは、単一パス印刷すべき連続地物を識別する。この地物の例としては、壁セグメント、1行テキスト、電気配線、配管、又はHVAC地物を示すマーキングがある。連続パスで個別に印刷すべきこれら連続地物は、ロボット104に配給される。例えば、2つの互いに直交する壁は、第1パスで一方の壁セクションのレイアウトを印刷し、次に次の壁セクションを印刷するようロボを直交方向に指向させて駆動走行させることによって印刷される。
【0076】
図5は、実施形態による基準印刷方法のフローチャートである。
図6は、実施形態による基準検出方法のフローチャートである。
図5及び6に関連する基準印刷及び検出の付加的詳細は、特許文献1(2019年11月21日出願の米国特許出願第16/691,413号、「Mobile Printing Robot and Printing Method」)に記載されており、この特許文献は参照により本明細書に組み入れられるものとする。
【0077】
レイアウトを建設現場に印刷することのさらに別の問題は、フローリングの一部にアクセスするのを阻害する障害物の存在である。これら障害物としては、作業現場に配給又は放置されている道具及び材料があり得る。しかし、別の重要タイプの障害物は、建設プロセスに使用される支持構体である。流し込まれるコンクリートを使用する建築物において、建築物の次のフロアに対する建設は、現在フロアが仕上がった直後に開始される。コンクリートが硬化すると直ぐに、次のフロアの型枠のための資材をスラブ上に持ち込み、また型枠を設立する。その後それら資材は、フロアにおける骨組み及び壁を構築するために持ち込まれる。一般的に、骨組み支持構体が除去された後ではあるが、内部構造に必要な多くの資材及び道具が既にフロアに納品されているときに、レイアウトが実施される。レイアウトを完了させるため、レイアウト要員は、フロアにマーク付けしつつ、その周りにこれら資材を移動することができる。
【0078】
一実施形態において、ロボットは、すべての貫通部及び埋設部の場所をマーク付けするようプログラムされる。このことを行う1つのやり方は、地物の頂部に整列マーク(「+」又は「X」又はラインのような)を印刷することによって遂行することができ、これにより地物の中心は視覚的に識別することができる。このことは、地物のタイプが何であるかを記すテキストも含む。建築物の端縁に埋設される地物に関しては、ロボットは、埋設地物のアウトライン又は主要ポイントがどこに位置付けるべきかを示す内部にマークを印刷することができる。これら印刷されたマークを用いて、地物が正確な場所に位置付けられるか否かを、人は後で迅速に決定することができる。別の実施形態において、ロボットは、整列マークが印刷された後に地物の画像を付加的に撮影し、遠隔のオペレータは、すべての地物が適正に位置付けられているか否かを迅速に決定することができる。さらに別の実施形態において、貫通部、又は他の埋設地物を含む期待される地物の場所で撮影された画像セットに画像認識を使用して、地物が適切に位置付けられているか否かを決定することができる。このことは、同一地物上にマーキングを印刷することとは独立して、又は組み合わせて実施することができる。
【0079】
一実施形態において、ロボットは、物理的にアクセス不能なエリア周りで作業するが、レイアウトのどの部分が完了している又は完了していないかを示すデータを節約する。その後に、支持体が除去されたとき、又は資材が移動されたとき、ロボットは、現場に再訪し、先にアクセス可能であったエリアで印刷をすることができる。このことを遂行するため、ロボットは、TS又はAPDの必要なしに、精密位置付けのためにフロア上に印刷されたQRコードを使用することができる。
【0080】
一実施形態において、自走式ロボットシステムは、レイアウトのどの部分を自走式ロボットが印刷できなかったかの行跡を維持し、またレポートを作成する。レイアウトのどの部分が印刷できなかったかのレポートは、例えば、印刷を阻害した障害物を除去する選択肢を可能にし、自走式ロボットが後でその作業を完遂することを可能にする。別の実施例として、レポートは、支持体が撤去された後のような後の時点でレイアウトの一部分を仕上げる人的ユーザーによって使用することができる。レポートは、自走式ロボット自体によって、又はシステムの他のコンポーネントと組み合わせて、作成することができる。例えば、自走式ロボットは、人的ユーザーのためのレポートを作成するため、携帯タブレットコンピュータデバイスが利用する生情報を作成することができる。
【0081】
<付加的印刷用途>
自走式印刷ロボットは、デジタル建築物モデルからレイアウトをマーキングすること以外の他の建設目的に使用することができる。これら付加的用途は、建設プロジェクトの効率を改善することができる、又は空間内で他のロボットが有効に機能することを可能にする。
【0082】
建設現場における品質管理は、一般的に作業者が作業を適正に行ったことを保証するステップのチェックリストに作業者を従わせることによって行われる。これらチェックリストは、書類に保存する、携帯電話アプリケーションに表示する、又はより上級の作業者が暗記することができる。一実施形態において、自走式印刷ロボット104は、作業が行われている場所近傍のフロア上にこのような品質管理チェックリストを印刷するのに使用することができ、これにより作業者に適正プロセスを思い出させ、またプロジェクト状態を伝えることができる。
【0083】
骨組み及び木工製品請負業者は、建設中の建築物において壁の骨組みを構築し、またキャビネット類の据付けを行う責任がある。例えば、上側キャビネットをキッチンに懸吊する場合、付加的交差状骨組み部材を据え付けて内部壁におけるこれらにキャビネットの付加的荷重を支持しなければならない。建築家及びプロジェクト管理者は、一般的に異なる角度(例えば、前面に対面する及び上からの見下ろす)からの「正面図(elevations)」:仕上げキャビネット設置の2Dレンダリングによる望ましい設計図について連絡し合う。これらレンダリングは、図面に合致する適正形態で骨組み及びキャビネットを据え付けなければならない作業者に与えられる。
【0084】
さらにまた、建設プロセス全体にわたり、建設に必要な資材は労働者が施工している各エリアに送付される。これら資材は、一般的に建築物のエリアで作業を仕上げるのに各業者が使用する多数のキットとして組み合わされる。キットの組合せ及び送付の協調は書類で追跡される相互プロセスである。
【0085】
一実施形態において、自走式印刷ロボット104を使用して、作業を行うべき場所近傍のフロア上にこのような正面図を印刷し、これにより作業要員に対して、彼らが正確に構築する上で必要な情報を与え、現場でその情報を検索する必要がない。
【0086】
別の実施形態において、自走式印刷ロボット104を使用して、据え付けるべき部品に続いて、部品番号(例えば、印刷したテキスト、又はQRコードのような)を印刷し、これにより作業者はどの部品をどこに据え付けることになっているかが分かり、コストがかかる再作業につながる建築上のエラーを減少することができる。
【0087】
別の実施形態において、自走式印刷ロボット104を使用して、場所及びキット番号を印刷することができ、建設資材の配給及び追跡のプロセスを支援する。
【0088】
<ラインセグメント及び指向性がある向き(directional orientation)の選択最適化>
説明を容易にするため、本明細書における単語「ライン」又は「ラインセグメント」の使用は、先のセクションで説明した地物及びマーキングに言及する。これら地物は、BIMモデル、人的オペレータ入力、及び印刷している地物を定義する他の手段から抽出することができる。
【0089】
描出すべきラインに関する一般的な情報は、BIM又は建設図面から取得することができる。しかし、自走式印刷ロボットはその性能に対する制約を有する。これら制約の幾つかは、印刷ヘッドの構成により生ずる。さらに、自走式ロボットは、駆動システム、及び障害物検出器、センサ、バンパー、等々の場所のような他の制約に基づいて、移動及び印刷に好適な「前方(forward)」方向を有することができる。さらに、自走式ロボットの物理的サイズ及び形状(プロファイル)に基づく印刷上の制約がある。例えば、様々な要因は、自走式印刷ロボットの印刷ヘッドをどのくらい壁又は支柱に向けて走行させることができるかを決定する。また、建設現場は、自走式ロボットの移動に障害物となるおそれのあるパイプのような既存構体があり得る。それに加えて、建設現場には他の障害物、例えば、建設現場に放置されたパレットがあり得る。
【0090】
特定自走式ロボット105は、ロボットにおける印刷システム216の印刷ヘッドの特別な構成を有する。例えば、プリンタは、ロボットの長手方向軸線に対してロボットの前部、後部又は中心の近傍に配置することができる、及び/又はロボットの水平軸線の左側面、中心又は右側面寄りに位置付けることができる。さらに、ロボット自体は、丸み又はテーパーの付いたプロファイルを有することができ、これによりその駆動特性及び旋回特性は、ロボット走行の前進方向と後進方向との間で異なることがあり得る。
【0091】
一方向駆動システムがあるとともに、より一般的には、ロボットは、駆動メカニズム及びセンサ場所に対して前進方向の移動が好適な場合があり得る。印刷すべき所与のラインに関して、このことは、自走式ロボットが「前進」方向に移行して印刷することができるラインに沿う2方向があることを意味する。例えば、ポイントAからポイントBへのラインは、ポイントAからポイントBに移行する第1経路、又はポイントBからポイントAに移行する第2経路でロボットが移行して印刷することができる。
【0092】
ロボット上における印刷ヘッドの配列は、ラインに沿う自走式ロボットの移動方向の特定選択に対して自走式ロボットをどのくらい壁に近付けて印刷できるか、又はその方向に対して自走式ロボットをどのように方向付けるかの要因である。自走式ロボットは、例えば、前面、後面、左側面及び右側面があるプロファイル(輪郭)を有する。例えば、印刷ヘッドは、自走式ロボットの底面前部、自走式ロボットの底面後部、自走式ロボットの左側面又は右側面に位置付けることができる。
【0093】
上述したように、自走式印刷ロボットは、コスト及び複雑性を増すものの、ロボット両サイドにセンサ及びバンパーを設ける必要があって、2方向に移行又は印刷するよう設計されない場合があり得る。幾つかのケースにおいて、自走式ロボットは、自走式ロボットの前面に対する移動の「前進(forward)」又は好ましい方向に印刷するよう設計される。このことは、全体ライン(単一パスでの)印刷を2つの異なる方向に対面するロボットのとり得る2つの可能な方向に制限する。2つのポイントA及びBの場合に関して、このことは、AからB又はBからAのいずれかの印刷を意味する。この実施例において、自走式ロボットの前面は行先ポイントに向かって対面する(自走式ロボットが好ましい印刷指向性を有し、また後面が行先ポイントに対面する印刷をも支援するよう設計されていないと仮定して)。
【0094】
幾つかのケースにおいて、ラインは、壁接近距離における何らかの標準内で一方向のみ、例えば、AからBであって、BからAではない方向に印刷可能である。しかし、他の状況では、ラインは、同一標準で双方の方向に対して、例えば、AからB又はBからAに印刷可能とすることができる。すなわち、ラインは、一方向又は双方向に印刷可能とすることができる。さらに別の可能性としては、各個別のより短いラインセグメントを印刷するのが最適な移行方向に移動する自走式ロボットで個別に印刷されるより短いラインセグメントに分割しない限り、印刷標準内で同一ラインを印刷することはできないことがあり得る。例えば、AからBへのラインは、AからCのラインセグメント、及びCからBのラインセグメントに分割することができる。このことは、例えば、AからCへの印刷、次にBからCへの印刷を可能にする。さらに、CからAへの印刷、及びCからBへの印刷も可能にする。
【0095】
例えば、印刷ヘッドが左寄り又は右寄りに位置する水平非対称性である場合、これは方向性効果を導入する。このケースに関しては、自走式ロボットがポイントCからポイントDへのラインに沿う壁に平行に駆動されるとき、印刷ヘッドの場所における水平非対称性は、ポイントCからポイントDへの移行の一方向経路が印刷ヘッドを、ポイントDからポイントCに向かってとられる他方向経路よりも壁に一層接近させ得ることを意味する。例えば、印刷ヘッドが自走式ロボットの左側に位置付けられている場合、壁に平行な一方向移行経路は、他方向移行経路よりも印刷ヘッドをより接近させる。
【0096】
したがって、レイアウト印刷の最適化を考慮することができるロボットシステムに対しては様々な制約がある。一実施形態において、ライン描出の最適化は、ロボットシステム、壁の場所、既存構体、障害物、及び他の留意点の制約を考慮して実施される。
【0097】
一実施形態において、幾つかの留意事項としては、ロボットにおける印刷ヘッドの配列、ロボットのプロファイル、及びライン印刷のためのライン経路方向性をどのように最適化するかに関する一連の決定を行うことがある。最適化は、設計図にできるだけ近似させかつ正確にラインを印刷する(例えば、実際上壁又は障害物にできるだけ近接させてラインを描出する)ことに基づいて選択し、何らかの予め選択した印刷標準内でレイアウトの最大割合部分を描出し、印刷のための、又は他の目的のために要する全体時間を短縮することができる。
【0098】
上述したように、ライン印刷経路最適化(LPPO)は、自走式ロボットの性能及び作業現場における任意な障害物を考慮して実施することができる。幾つかの実施形態において、LPPOは、印刷すべきラインの初期リスト化をし、印刷に関する制約を解析し、また1つ又はそれ以上の最適化を遂行する。
【0099】
これら最適化の例としては、ラインセットを最適に順序付けすることがあり、これによりロボットは最小時間量ですべてのラインを完遂することができる。順序付けとしては、1) ラインを印刷するシーケンス及び2) ラインを印刷する方向のうち一方又は双方があり得る。最適化は、若干のラインが一方向にのみ満足のいく印刷ができることを決定する場合があり得る。例えば、AからBへの間におけるラインは、幾つかのケースにおいて、ライン全体を完全に印刷するため、AからBの一方向でのみ印刷し得る。しかし、多くのケースにおいて、個別のラインはいずれの印刷方向でも完全に印刷可能であり、これによりAからBに、又はBからAに満足のいく印刷ができる。例えば、一方向にのみ満足のいく印刷ができるラインL1、L2、及びL3があると仮定する。他のライン、例えば、L4、L5、L6、L7、L8、L9、及びL10はどちらの方向でも完全に印刷できると仮定する。この実施例において、各ラインの他のラインに対して印刷する順序、及びラインを印刷する方向を選別することによってラインL1、L2、L3、L4、L5、L6、L7、L8、L9、及びL10を印刷する総印刷時間を最適化することができる。すなわち、この最適化は、各ラインを印刷する順序及び各ラインに沿う印刷方向の結果である。
【0100】
図7Aは、ロボットによって描出されるラインを最適化するようLPPOが使用するデータソースを示すブロック図を図解する。幾つかのデータは、LPPOが使用する前に抽出又は処理することができる。他のデータは、環境設定ファイルで利用可能である、又はLPPOアルゴリズムとしてハードコード化することができる。抽出又は処理することが必要なデータに関しては、この処理は、オフラインで行うことができる、又は印刷を開始するに先立ってロボットが実施することができる。幾つかの実施形態において、オフライン処理はクラウドで遂行することができる、又はこの処理は携帯コンピュータデバイスのユーザー・インタフェース114上で、又はロボット上で実施することができる。
【0101】
必要な入力の1つはロボットの物理的性能である。このことを図の頂部に入力として示す。LPPO処理は、例えば、ロボットの物理的プロファイル(輪郭)に対する印刷ヘッドの配列に関して印刷ヘッド構成で利用可能なプロファイル情報を使用することができる。例えば、自走式ロボットは、自走式ロボットの固定場所(例えば、自走式ロボットの前方部分)に単一印刷素子場所を有することができる。しかし、より一般的には、自走式ロボットは2つまたはそれ以上の印刷素子を有することができる。また、印刷素子は、自走式ロボットの異なる部分(例えば、自走式ロボットの中間、後部、又は側面の部分)に位置付けることができる。プロファイル情報の他の例として、プロファイル情報には、特定印刷エリアが到達可能かを決定するのに使用できる、ロボットの物理的外形があり得る。このことは、ロボットが印刷すべきエリアに到達するための開口を物理的になんとか通り抜けられるか否かの決定を可能にする。
【0102】
さらに、LPPO処理は、ロボットの駆動及び旋回性能で利用可能なプロファイル情報を使用することができる。例えば、ロボットの枢動又は旋回性能は、様々な要因に依存し、これら要因としては、駆動システムの細部、ロボットの物理的サイズ及び形状並びにクリフ検出センサのような安全センサの場所がある。さらに、ロボット設計に基づいて、ロボット駆動特性の他の態様は前方又は後方に駆動されるか否かに基づく。
【0103】
さらに、LPPO処理は、一実施形態において、ラインに沿う異なる移行方向間でロボットの印刷特性がどのように異なるかの利用可能情報を使用する。上述したように、多くのケースにおいて、自走式ロボットは印刷のために好ましい前進方向を有する。すなわち、自走式ロボットの前面が行先ポイントに向かって前方に指向する状態で印刷するラインに沿って移動する。したがって、ラインを印刷できる方向は2つある。例えば、ロボットプロファイル、駆動システム、及び印刷ヘッド配列は、2つのポイント間で一方向の移行に沿って特定壁に近接して印刷できるだけの結果となる。しかし、幾つかのケースにおいて、ロボットは双方向印刷性能を有することができ、また例えば、自走式ロボットがロボットの前方部分近傍における印刷ヘッド、及びロボットの後方部分における付加的印刷ヘッドを有している場合のように、2ポイント間で双方向の移行で壁に近接して印刷することができる。
【0104】
自走式ロボットは印刷ヘッド用に固定位置を設けるが、より一般的には、自走式ロボットは可動ステージ上に印刷ヘッドを設けることができる。例えば、この可動ステージは印刷ヘッド位置の或る範囲を支持するよう設計することができる。単純な例として、印刷ヘッドは可動ステージ上の2つまたはそれ以上の明確に異なる位置、例えば、左側、中間、及び右側の側方位置を有することができる。より一般的には、可動ステージは連続的位置範囲(例えば、左に-10cm~右に+20cm)を付与することができる。可動ステージは、手動で移動可能とするか、又はステージを移動するアクチュエータを有することができる。幾つかの実施形態において、LPPO処理が使用するプロファイル情報としては、ステージを移動する選択肢(印刷前に手動で、又はレイアウトの個別ラインを印刷する前にアクチュエータにより動的に移動する)に関する情報がある。例として、印刷ヘッドは左側から右側に移動できると仮定する。一実施形態において、LPPO処理は少なくとも1つのラインのために印刷ヘッドの可動ステージの位置を選択する。例えば、1つ又はそれ以上の壁により近接する印刷を最適化するために、印刷ヘッドを移動することができ、例えば、ロボットの左方にある壁に沿って駆動するとき印刷ヘッドを左方に移動し、またロボットの右方にある壁に沿って駆動するとき印刷ヘッドを右方に移動することができる。
【0105】
一実施形態において、BIM又はCAD製図は、ブロック705で印刷すべきラインの初期記述ソースである。これらラインは、レイアウトの少なくとも一部分に対応することができる。例えば、個別印刷セッションにおいては、自走式ロボットは、印刷速度、以前の日付で何を印刷したか、建築物のサイズ、等々に基づいて、レイアウトの一部分又はレイアウト全体でさえも印刷することができる。ラインのリスト化は、ロボットの内部又は外部で生成することができる、又はユーザー・インタフェースによりユーザーが選択することができる。印刷すべきラインに加えて、作業現場障害物の幾つか又はすべてに関する情報もBIMによって提供され、また印刷すべきエリアの内側で物理的障害物を提示するマップ712を生成するのに使用することができる。しかし、BIMは、必ずしも作業現場におけるすべての障害物に関する情報を含む必要はない場合があり得る。作業現場に放置された道具、パレット、他の一時的な障害物の存在は他の手段により知得しなければならない。幾つかの実施形態において、ユーザーは、作業現場における障害物に関してマップ712に情報を入力することができる。例えば、障害物はユーザー・インタフェースから入力することができる。より一般的には、障害物は作業現場におけるスキャナによって検出することもでき、このスキャナは、総合ステーション及びリフレクタを用いてスキャンし、又は一実施形態においては、自走式ロボット自体がスキャンすることができる。
【0106】
さらに、APD情報が利用不能である(例えば、障害物による遮蔽化(shadowing)で)作業現場の部分に関する情報も、理論上幾つかの実施形態において考慮することができる。例えば、原理上は、ライン印刷経路最適化は作業現場の部分におけるAPD信号の有/無を考慮することができる。すなわち、被遮蔽領域内における低下した位置精度領域は正確な印刷に対する障害物であると見なすことができる。
【0107】
ブロック710において、ライン印刷経路最適化のための決定を行う。この結果として、レイアウトのラインのナビゲーション及び印刷をするための最適化に対応するレイアウトを生ずる。随意的な付加出力としては、レイアウトの印刷されないラインセクションを後で完了できる支援をするため、自走式ロボットによって印刷すべき付加的マーキングがあり得る。このこととしては、例えば、人的ユーザーが未印刷ラインを補完する支援を行うマーキングがあり得る。
【0108】
最適化としては、印刷する総時間のような他の留意事項も考慮することができるが、ラインリスト、マップ情報、自走式ロボットのプロファイル情報、並びに自走式ロボットを移行させることと、及び正確さ、壁への近接度、また完全性のような基準のための予め選択した印刷標準内でラインを印刷することに関する任意な他の制約に基づくライン印刷経路を形成するため、ラインの仕分け、分割、トリミング、及び方向付け(orienting)があり得る。
【0109】
幾つかの実施形態において、仕分けは様々な特性に基づいてラインを分類する。例えば、ラインは、ラインに沿う一方向の移行(一方向指向性)で又はラインに沿う双方向の移行(双方向指向性)でラインを印刷することにおける潜在的問題があるか否かのような基準に基づいて仕分けすることができる。より一般的には、ラインを仕分けするのに他の分類基準を使用することもできる。
【0110】
方向付けは、2ポイント間でラインをどの向きで印刷するかの経路における指向性がある向きを選択することに言及する。建築物レイアウトは、一般的に多数の個別ラインを含む。例えば、単純な例として、ポイントAからBへの水平ラインは、左から右に、又は右から左に印刷することができる。したがって、ラインは2つの方向に移行することができる。例えば、自走式ロボットが単一印刷ヘッドを有する場合、ラインを一方の向き又は他方の向きで印刷するのが有益であり得る。より一般的には、印刷される各ラインの特定向きでラインシーケンスを印刷するのが有益であり得る。換言すれば、我々が印刷可能性に関して予め選択した標準を有する場合、印刷結果は、各個別ラインが印刷される指向性のある向きに基づいて変化し得る。さらに、総印刷時間は、レイアウトの個別ラインを印刷する向きに関してとる幾つかの選択に依存し得る。
【0111】
トリミングはライン全体を短くすることを含む。例えば、レイアウトの或る区域に沿って正確に印刷することを阻害する既存の建築構体又は障害物があり得る。幾つかのケースにおいて、トリミングを実施して、ロボットが壁、支柱、又は他の建築構体若しくは障害物が衝突するのを防止できるようにし得る。又は幾つかのケースにおいて、レイアウトの一部分に沿う正確な場所測定を阻害するAPDの遮蔽化(shadowing)があり得る。トリミングは、完全なラインの描出を継続するのが不可能又は実用的でないことがあり得る実際上の問題に対処する1つのやり方である。
【0112】
分割は、ラインを少なくとも2つのセグメントに分割することを含む。分割によれば、例えば、自走式ロボットの移動に関して異なる向きでの、結果として生ずる後分割セグメントの印刷を可能にする。例えば、水平ラインセグメント全体を左から右に印刷する代わりに、そのラインを分割することによって、分割したセグメントのうち一方を左から右に印刷し、また他方を右から左に印刷することを可能にする。ラインは2つの隣接するラインセグメントに分割できるが、より一般的には、単一ラインは等しい部分に分割する必要はなく、2つより多いピースに分割することもできる。分割は、自走式ロボットをナビゲートする自由度を大きくすることを可能にし、また壁、支柱、又は自走式ロボットの移動に対する他のバリアに接近して印刷するため自走式ロボットの印刷ヘッドを最適位置にしてラインを印刷することを可能にする。
【0113】
分割は、さらに、障害物を回避するピースにラインを分割するよう実施することもできる。例えば、建設現場にパレットがある場合、ライン分割は、パレットが単一の連続ラインを印刷するのを妨げる事実に対処するために実施することができる。
【0114】
ブロック710は異なるやり方で遂行することができる。アルゴリズムは、コンピュータ可読命令として記憶媒体に記憶することができ、またプロセッサ上で実行することができる。アルゴリズムはスタンドアロンデバイス上で実行することができる。例えば、一実施形態において、印刷すべきラインが選択され、またユーザーが一時的障害物に関する情報を入力するユーザー・インタフェース・デバイス上で実行することができる。一実施形態において、ユーザー・インタフェース・デバイスは、ラインを最適化してから、それらラインをロボットに提出する。
【0115】
別の実施形態において、アルゴリズムはロボット上で実行する。例えば、アルゴリズムは、ロボットがレイアウトを実施している間に、ロボットが実行することができる。このことは、例えば、ロボットが予期していない障害物に遭遇するときに有益であり得る。例えば、障害物検出性能を有するロボットは、前もってマップ712にマーク付けされていなかった新たな障害物に遭遇する場合があり得る。このケースにおいて、ロボットは新たな障害物をマップ712に追加し、印刷すべきラインのリスト705から既に印刷したラインを除外し、またLPPOアルゴリズムを再稼働させる。
【0116】
アルゴリズムは、さらに、ライン仕分け、ライン方向付け、ライントリミング及びライン分割の特定選択が、特別なレイアウトのために、またロボット移動及びロボット印刷ヘッド配列に関する自走式ロボット制約の特別なセットのために有益であるか否かを識別するのに使用することもできる。アルゴリズムは、例えば、固定ステップシーケンスを遂行することができる。より一般的には、このアルゴリズムは、予め選択した正確さの範囲内印刷されるレイアウトの割合及び印刷までの総時間のような基準に基づいて、向き、ライントリミング、及びライン分割の異なる選択を評価することができる。
【0117】
BIMモデルは、概して、建築すべき壁の外形を与えるラインセグメント及び現場に既に存在している壁を含む建築物に関するすべての情報を含有する。このBIMは、ロボットをナビゲートし、また壁外形をフロアに描出するときにロボットが遭遇する障害物を含むマップを生成するのに使用することができる。幾つかのタイプの建設に関して、すべての関連壁地物を自動的にマップから抽出することができる。例えば、印刷時点ですべてのコンクリート支柱が既に構築される、又は別の実施例では、レイアウトが行われる前に建築物のすべての外壁が建設される。
【0118】
しかし、概して、どの壁セグメント又は他の構体部分が現場に既に存在しているかの決定は、それらが既に構築されて建設現場に存在しているか否かに基づいてBIMモデルの地物を選択する又は選択しないに関するユーザーからの入力を必要とする場合があり得る。例えば、既存構体としては、ロボットが建築表面上に印刷する作業をしている建築物の少なくとも一部分における建築物の壁、クリフ、孔、エレベーターシャフト、又は階段があり得る。
【0119】
この選択は、コンピュータシステムの使用によりレイアウトを実施する前に現場事務所内で行うことができる。さらに、幾つかの実施形態において、建設現場における障害物の情報を入力するよう、ユーザーがユーザー・インタフェースを使用することができる。
【0120】
幾つかの実施形態において、局所的スキャンデバイスを使用して、既存構体情報及び/又は障害物を識別する。他の選択肢は、自走式ロボット上のセンサを使用して、建設現場での既存構体情報及び/又は障害物を識別することである。
【0121】
幾つかの実施形態において、ロボットのユーザー又はオペレータは、レイアウトが実施される時点に障害物のある現場で選択する。このことは、BIM情報を含んでおり、また地物の選択又はオンザフライでマップデータの編集を可能にするユーザー・インタフェースを有するタブレット又はラップトップ・コンピュータの使用により行うことができる。別の手法において、ユーザー・インタフェースは、ユーザー又はオペレータがBIMモデルによって提供されるデータを編集するのを可能にする特徴を含み、これにより壁の場所に対して「構築済み」条件であると説明がつく調整を行うことができるようにする。例えば、実際の壁の場所は、建築公差に起因してBIMモデルで特定される場所と比べて1.27cm(1/2インチ)ずれる場合があり得る、又は壁は間違い又は建設プロセス中の行った調整に起因して数インチずれる。このケースにおいて、ユーザー・インタフェースは、既存壁の調整、及びロボットがレイアウトすべき壁に対して既存壁における「構築済み」相違点であると説明がつく調整の双方を可能にすることができる。
【0122】
これら実施形態のいずれにおいても、ブロック710は、描出すべきラインのリストを含む情報を受け取る。ブロック710は、さらに、既存壁、既存建築構体、及び障害物のような自走式ロボットの動ける境界に関する情報も受け取る。ブロック710は、さらに、自走式ロボットの移動及び印刷する能力に関して利用可能な情報も有する。この情報を使用して、ライン印刷のための指向性経路のセットを画定する。経路セット及び関連の向きとしては、ロボットを枢動させる、ロボットを旋回させる、前方向及び後方向に移行させる、ラインを描出するため開始ポイントにナビゲートする、等々の命令を含むことができる。
【0123】
ロボット経路を生成する幾つかの例としては、各ラインの終点に対する駆動方向の決定、駆動方向に対するロボット向き(自走式ロボットの「前」及び「後」の面に対する前進又は後進)の決定、どこで描出プロセスを開始するかの決定、どのように開始ポイントにナビゲートするかの決定、及び幾つかの実施形態において、壁近傍におけるロボット速度の調整のようなロボット駆動調整に対する決定を行うことがある。
【0124】
一実施形態において、ブロック710は、ロボット経路及び印刷している間の向きを最適化するため、以下の6つの決定のうち1つ又はそれ以上を実施する。
【0125】
第1に、最適化の1つは、特定ロボット構成及び壁又は障害物場所に対して、幾つかの印刷標準内で印刷可能にするよう、ラインを仕分けしまたラインを方向付けすることである。例えば、ラインを仕分けし、また自走式ロボットにおける印刷ヘッドの配列及び自走式ロボットが壁に平行に移行している、又は正面から壁に接近しているか否かに基づいて選択したラインを印刷するようロボットの移行方向の向きを決める。
【0126】
第2に、最適化の1つは、壁に至るまでに双方向でラインを印刷できるようにラインを分割するような、印刷を支援するためラインを分割することである。例えば、壁から壁に延びるラインは、自走式ロボットの「前」及び「後」端部いずれかに対して前進又は後進の指向性のある向きで壁に接近するか否かに依存して自走式ロボットが壁近傍に印刷できる性能のような要因に基づいて2つの異なるラインセグメントとして分割しまた印刷することができる。
【0127】
第3に、最適化の1つは、検出した又は所与の障害物に基づいてライン分割し、分割したラインの双方セクションを障害物に向けて又は障害物から離れる方向に印刷することである。
【0128】
第4に、別の最適化は、印刷にかかる総時間を短縮するために実施することができるようラインを仕分けすることである。例えば、総ライン経路長さの他に様々な要因がラインを印刷するための総時間に影響を及ぼすことができ、この要因としては、ラインの高品質印刷のために自走式ロボットをナビゲートし、また方向付けるようロボットを枢動又は旋回させる時間がある。したがって、仕分けは、ラインを印刷する順序を選択して、総印刷時間を短縮するよう実施することができる。
【0129】
第5に、別の最適化は、ロボットの物理的限界を考慮するためラインをトリミングすることである。例えば、自走式ロボットのプロファイル及び印刷ヘッドの配列は、壁又は障害物の近傍で自走式ロボットがどのくらい近接させてラインを印刷できるかの物理的限界を生じ得る。
【0130】
第6に、別の最適化は、印刷したラインが壁に接近するにつれてロボットを減速させることである。ロボットの減速は、自走式ロボットの正確な制御を容易にし、またロボットを壁近くにガイドする支援を行う。
【0131】
第7に、幾つかの実施形態において、最適化は、1つの滑らかな動きでより効率的に印刷することができるよう2つのラインを結合することである。例えば、2つのラインは連続したものとすることができ、またひいてはそれらの結合(例えば、AからBへのライン及びBからCへのライン)により一層効率的に印刷することができる。別の例として、1つの結合されたラインとしてより一層効率的に印刷できるよう、2つのラインはオーバーラップすることができる。
【0132】
又はさらに別の例において、1つの印刷スワス(swath:掃過跡)の幅(ヘッドの有効印刷面積の幅)内にある複数オブジェクトは互いに結合し、1つの画像として印刷することができる。例えば、ロボットが2.54cm(1インチ)幅を印刷できる印刷ヘッドを有する場合、乾式壁レイヤのいずれか一方の側辺を表す1.59cm(5/8インチ)幅の2つの平行ラインを同時に印刷することができる。このケースにおいて、2つのラインは互いに結合し、また単一パス又はラインで印刷される。しかし、この単一「ライン」が印刷されるとき、印刷ヘッドに渡される情報は2つの平行ラインの画像を印刷する。別の例において、壁の面を表すライン、及び壁に関連して壁材料のタイプを記述する何らかのテキストがあり得る。テキスト及び壁アウトライン(外形)は、1つのスワスで印刷される1つの画像として互いに結合することができる。この結合された画像は、アルゴリズムによって単一ラインと見なされ、これはすなわち、ロボットが単一の線形経路に追従する間に、プリンタはすべての情報を印刷できるからである。さらにまた、15.24cm(6インチ)幅の印刷ヘッドを有するロボットに関しては、様々なレイヤ、間柱、並びに壁内の配管、電気配線、補強材、及び他の構造を記述する任意なテキストのすべてとともに、壁全体を単一パスで印刷できる。これらオブジェクトの結合後に、この単一スワスは、他の最適化目的のために単一ラインと見なされる。
【0133】
ブロック710による幾つかの付加的で随意的な最適化としては、自走式ロボットの駆動システムにおける何らかの特定態様があり得る。これには、ライン追跡モデル及び2点間モードを含むよう印刷を組織化することがあり得る。この2点間モードは、ライン、例えば、第1ラインセグメントの始点にロボット自体をナビゲートするナビゲーションモードである。次に、ロボットはライン追跡モードに切り替わり、BIMモデルから所定ラインを追跡し、また精密ライン場所で印刷する。ロボットがラインセグメントの印刷を仕上げた後、ロボットは再び2点間モードに切り替わり、次のラインセグメントの始点にナビゲートする。このプロセスはレイアウトが完了するまで繰り返される。この例において、ナビゲーションモードとライン追跡モードとの間における選別は、印刷プロセスの1つ又はそれ以上の態様を最適化するよう選択し得る。
【0134】
別の最適化は、ラインに沿う異なる駆動方向で印刷する自走式ロボット性能を考慮することである。個別のロボットは、一方向又は双方向印刷特性を有することができる。例えば、ラインの2つの端部ポイント間におけるラインに沿う2方向移動のいずれでも(前方に指向する前面を有するロボットにより)等しく良好に印刷され得る。
【0135】
多くの状況において、BIMモデルは現場に位置付けられる障害物に関するすべての情報を含んでいない場合があり得る。ロボットが印刷しているフロア上に、例えば、建築資材、道具、カートが放置されることがあり得る。ラインの初期仕分けが完了した後、ロボットシステムはこれら障害物に気付くことがあり得る。このケースにおいて、ロボットが障害物に気付くとき、付加的な最適化を実施することができる。例えば、カートが行く手にあり、印刷すべき1つのラインがカートの下側を通過している場合、ロボットはラインのその部分を端折り、できる限りカートに近づいて印刷するよういずれかのサイドにおけるラインセグメントに指向することができる。さらに、迅速に又は表面の大部分を印刷するため、新たな情報に基づいて、他の近傍セグメント又はセグメントの全体リストを再最適化することができる。
【0136】
したがって、そのLPPOは、ライン仕分け、ライン方向付け、ライントリミング、ライン分割を含み、またさらにBIMにおける障害物の存在、BIM上で見られなかった作業現場における障害物、印刷ヘッド構成に関する詳細、並びに作業現場を移行して前進方向又は後進方向に正確に印刷する自走式ロボットの能力のような、多くの他の留意事項を含むことができる。
【0137】
図7Bは、最適化710の実施形態の高レベルなフロー図である。数個のブロックは、最適化を実施する情報を受信する又はアクセスすることに言及する。幾つかの情報は、実装細部に依存してアルゴリズムとしてハードコード化することもできることに留意されたい。ブロック750において、ロボットプロファイル情報にアクセスする。例えば、このロボットプロファイル情報としては、例えば、ロボットの物理的プロファイル、駆動特性、印刷ヘッド配列、又は自走式ロボットをどのようにナビゲートし、またラインを印刷するのに使用するかを理解することに関連する任意な他の情報を規定するデータフィールドを含むことができる。ブロック755において、印刷すべきラインのリストにアクセスする。ブロック760において、既存建築構体情報及び障害物情報にアクセスする。すなわち、ブロック760において、建築物の物理的構体及び作業現場における他の障害物(例えば、パレット、ポータポッティ(登録商標)、等々)が存在することがあっても、自走式ロボットの移動に対する物理的制約に関する情報にアクセスする。
【0138】
ブロック765において、双方向において何らかの所定個別標準内で印刷可能な個別ラインに関して初期決定を行う。
【0139】
ブロック770において、少なくとも1つの印刷方向において予め選択した標準内で印刷可能な任意の残りのラインに関して決定を行う。
【0140】
ブロック775において、トリミング又はライン分割を用いてどの残りのラインが印刷可能であるかに関して決定を行う。
【0141】
ブロック780において、例えば、個別ラインセグメントを印刷する特定指向性がある向き、障害物を回避するための個別ラインのトリミング、及び様々な目的、例えば、印刷中にロボットの指向性がある向きを変化させて印刷品質を向上する又は障害物を回避する目的のためのライン分割を含むことができるライン経路の出力リストを生成する。
【0142】
ライン経路の出力リストは、ライン経路を移行する効率的なシーケンスを含むことができる。例えば、単純化した例として、いずれかの方向で移行することができるラインの第1セット、及び一方向でのみ移動できるラインの第2セット、トリミングされるラインのセット、及び分割されるラインのセットをレイアウトが有すると仮定する。すべてのライン経路を印刷するには1つより多い選択肢があり得る。アルゴリズムは、出力リストの内容を印刷するよう駆動及びナビゲートするロボットの能力を考慮し、また効率的なシーケンスを選択することができる。
【0143】
ブロック785において、レイアウトの印刷されていないすべての部分を人的ユーザーが完成させるのを支援する随意的な出力を生成することができる。
【0144】
最適化710の実施形態における幾つかのより詳細な例を、
図8及び9のフローチャートにより表されるアルゴリズムで示す。これら例において、入力リストと称されるラインのリストを使用して、すべての未処理ラインを記憶し、また出力リストと称されるラインのリストを使用して、アルゴリズムが出力するすべてのラインを記憶する。アルゴリズムを実行する前に、入力リストはBIMファイルから描出されるべきラインのリストが投入される。
【0145】
最適化710の実施形態におけるより詳細な第1例は、
図8のフローチャートによって表されるアルゴリズムである。上述したように、入力リストは、未処理ラインのリストを表し、出力リストはアルゴリズムが出力したラインのリストを表す。アルゴリズムを実行する前に、入力リストはBIMファイルから描出されるべきラインのリストが投入される。入力リストは完全なレイアウトに対応し得るが、より一般的には、印刷すべきレイアウトの一部分に対応することができる。
【0146】
図8につき説明すると、最適化アルゴリズムは、概して、2つの部分850及び860を含む。第1部分は、入力リストからのすべての項目を、出力リストに、又は
図8のブロック812でトリミングリストと称される中間リストのいずれかに分類し、この中間リストは、さらに最適化される。アルゴリズムの第2部分は、トリミングリストのための二次最適化を実施する。
【0147】
第1部分850において、アルゴリズムは、入力リストが空である場合、ステップ802において入力リストからのライン項目を選択し、この後、処理する項目がないと、アルゴリズムは自動的にステップ818で終結する。そうでない場合、ステップ806及び810における2つのチェックに基づいて、ラインを3つのカテゴリーに分類する。限定しないが、ラインは2つの端点で定義する1つのやり方を仮定する。ステップ806における第1チェックは、前進方向は一方の端点から他方の端点に向けてスタートし、後進は逆方向であるとして、ラインが前進及び後進の双方向で印刷可能であるか否かをチェックすることを含む。
【0148】
一実施形態において、ロボットがマップに基づいてラインを描出しているとき、ロボット周縁が壁、支柱、階段、クリフ、又は任意な他の障害物に交差しない場合、ラインはチェックに合格する。ラインが双方向に印刷可能である場合、ステップ808でそれを出力リストに追加し、またアルゴリズムは、ステップ802における入力リストから次の項目を選択することによって繰り返される。
【0149】
ラインが双方向に印刷不能である場合、第2チェック810は、ステップ810でラインは前進方向又は後進方向のどちらで印刷可能であるかをチェックする。ラインがどちらかの方向で印刷可能である場合、そのラインをステップ808で出力リストに追加し、またアルゴリズムは、ステップ802における入力リストから次の項目を選択することによって繰り返される。
【0150】
ラインがステップ806及び810の双方のチェックに不合格である場合、このラインはステップ812で第3カテゴリーに追加され、この第3カテゴリーは、トリミングリストと称される他の最適化のために収集されるリストである。トリミングリストにおけるすべてのラインは分割又は短縮化を必要とし、そうでないとロボットは障害物に交差することになる。アルゴリズムの第1部分850は、入力リストにおけるすべての項目がカテゴリー化されるまで繰り返される。
【0151】
入力リストからのすべての項目がカテゴリー化された後、アルゴリズムの第2部分860は、トリミングリストをさらに最適化する。トリミングリストが空である場合、アルゴリズムはステップ818で終結する。そうでない場合、ライン項目がトリミングリストから選択され、またステップ822でこのラインを一方向又は双方向に短縮化することを必要とするか否かが決定される。このことは、ロボットがマップに基づいて壁、支柱、階段、クリフ、又は任意な他の障害物に交差せずに、ラインのどちらの端点から印刷を開始できるかをチェックすることによって行われる。ロボットが障害物によって阻害されずに到達できる端点がある場合、ラインの反対側の端点からラインを短縮化し、印刷する間にロボットがマップにおけるいかなる障害物にも交差しないことを確実にする。トリミングされるラインはステップ810で出力リストに追加される。
【0152】
マップからの障害物に周縁が交差することなくロボットがラインのいずれの端点にも到達できない場合、ラインは、ステップ824でマップに対するすべての交差に基づいて分割される。例えば、ラインが1つの壁セグメントに交差する場合、ステップ824でラインを2つの個別ラインに分割する。これら分割されるラインはステップ826でトリミングリストに戻して追加される。アルゴリズムはステップ816に戻り、またトリミングリストから次の項目を選択することによって繰り返される。
【0153】
トリミングリストにおけるすべてのラインが出力リストに向けて処理された後に、アルゴリズムは終結状態818に移動する。次にアルゴリズムは、ステップ818で付加される方向標識を印刷することによって付与される移行した距離及び有効な移行方向に基づいてすべてのラインを仕分けし、また結果として得られたラインを印刷するための効率的なシーケンスを構築する。
【0154】
図8では示さないが、正確な場所測定を妨げるAPDの遮蔽も障害物タイプとして含めることができる。例えば、支柱又は建設パレットは、建設現場の一部分に沿う見通し線APD測定をブロックし得る。例えば、支柱は作業現場の一部分の遮蔽物となり得る。このことは、建設現場の一部分における印刷に対する物理的障害物ではないが、被遮蔽領域での低下した場所測定は、被遮蔽領域の一部分における極めて正確なライン印刷をできなくするという意味で、仮想障害物領域となる原因をなす状況を生起し得る。
【0155】
LPPO最適化710の実施形態における第2の詳細な実施例は、
図9のフローチャートによって表されるアルゴリズムである。
図9につき説明すると、アルゴリズムは、先ずステップ902でリストが空であるかをチェックする。ステップ902で入力リストが空である場合、それ以上の最適化は不要であるので最適化は完了する。処理すべきラインがある場合、アルゴリズムはステップ906でリストから次のラインを選択する。最適化アルゴリズムは、そのラインに関するすべての可能な描出方向のリストを生成する。次に最適化アルゴリズムは、ステップ908で各描出方向に関してラインを印刷できるかをチェックする。このことは、ロボットがマップに基づいてラインを描出しているとき、ロボット周縁が壁、支柱、階段、クリフ、又は任意な他の障害物に交差しないことを確証することによって行う。ラインを描出できないケースは複数ある。1つのこのようなケースは、ラインの1つの端部でロボットが障害物に交差するとき、双方の端部でロボットが障害物に交差するとき、ラインの中間でロボットが障害物に交差するとき、であり、また他のケースとしては、ロボット周縁が障害物と交差するためにラインが印刷不可であると最適化が決定する場合がある。
【0156】
ラインの1つの端部で障害物に交差する各特定印刷方向に関して、最適化は印刷方向が無効であるとマークする。最適化アルゴリズムがすべての方向のチェックを完了し、有効な方向が存在する場合、ステップ912でそのラインを出力リストに追加する。さらに、出力リストにおけるラインは、そのラインに対してすべての有効印刷方向を示す標識付けをし、これにより後で仕分けアルゴリズムによって効率的に仕分けを行うことができる。
【0157】
ラインがいかなる方向からも印刷できない場合、最適化は、ステップ914で障害物が無いようになるまで、ラインをトリミングするよう決定する。トリミングの方向及び長さは、障害物が完全に無いようになるまで障害物側から始めてラインを順次に短くすることによって行う。
【0158】
ラインの両側の端部が障害物によってブロックされる1つのケースにおいて、最適化は、互いに連結されているが個別の2つのラインを構成するようラインを中間で分割し、これら2つのラインを入力リストに追加し、これら2つのラインに対して最適化を繰り返すことができるようにする。このことは、ステップ914で実施する。ステップ914で分割又はトリミングのいずれかを行った後、ステップ916で結果として生じた新たなラインを入力リストに戻って追加する。このことは、新たなラインに対して出力リストに追加される前に印刷可能性のチェックを受けさせる。
【0159】
入力リストにおけるすべてのラインが処理された後、アルゴリズムはステップ904に移動する。この後、最適化は、ステップ912で付加される方向標識を印刷することによって付与される移行した距離及び有効な移行方向に基づいてすべてのラインを仕分けし、また結果として得られたラインを印刷するための効率的なシーケンスを構築する。
【0160】
図7B、8及び9はライン経路を最適化する方法の幾つかの実施例を示すが、より一般的には他の手法を使用することもできる。例えば、機械学習モデルを鍛錬することができ、この鍛錬は、レイアウトのためのライン、ロボットプロファイル情報、及び障害物のリストにおける入力データをとり、またライン経路の方向付け、ライントリミング、ライン分割、及び印刷されるレイアウトの割合、印刷速度、印刷精度、等々のような基準を最適化する印刷シーケンスに対して決定をする鍛錬データに基づく。
【0161】
LPPOの潜在的恩恵の幾つかを
図10A、
図10B、
図10C及び
図10Dに示す。
図10Aは、建築物の端部における外壁(濃黒線)及びフロア上に印刷することを必要とするレイアウト(薄い破線)を示す。この実施例において、レイアウトは、レイアウトの各壁に対して、2つのラインを含む。実用上の事柄として、自走式ロボットはレイアウト全体を印刷する必要はない。自走式ロボットによって印刷されない部分は人的ユーザーが補完することができる。しかし、合理的な総印刷時間内で自走式ロボットによってレイアウトの大きな割合を印刷するのは有益である。
【0162】
図10Bは、LPPOを適用することなくラインを印刷した後の同一建築物の実施例を示す。すなわち、
図10Bは、印刷ヘッドの場所、自走式ロボットのプロファイルのような制約、及び自走式ロボット1010の移動に対する制約を考慮することなくレイアウトを描出するよう試みることを自走式ロボットが命令される場合に、単一印刷素子1020を有する自走式ロボットに何がおこるかを示す。この実施例において、自走式ロボットは、前方に対面する自走式ロボットの前面で印刷するよう設計され、潜在的に2つの異なる方向でラインが印刷されるかに基づいて異なる印刷結果となる。
【0163】
ロボット1010の外形(アウトライン)及びプリンタ外形の内側の黒いラインである印刷素子1020は矩形のボックスとして表現される。図面に示されるロボット1010はロボットの前部にプリンタを有する。プリンタがラインを印刷するとき、ロボットの前面は行先ポイントに対面する。したがって、矢印1030は、ロボットがライン沿いに自走式ロボットの移動方向の前方に印刷ヘッドが対面してロボットが移動することを示す。このことは、さらに、レイアウトに沿う矢印によって示される。
【0164】
敷地面上に印刷を済ませているラインを細い実線として表す一方、未印刷ラインは依然として破線で表す。この実施例において、印刷する間にロボットを駆動する方向は、建築物の壁がどこにあるかに基づいて選択されない。したがって、壁近傍で終了するラインを印刷するとき、幾つかのラインは壁に向けて駆動する間に印刷され、他のラインは壁から離れる方向に駆動する間に印刷される。ラインが印刷される間にロボットを駆動する方向はラインに埋め込んだ矢印として示す。ロボット上のプリンタの場所に起因して、壁でスタートし、また壁から離れる方向に駆動する間に印刷されるいかなるラインも完全に印刷することはできない。図から分かるように、ラインは壁からほぼ1台のロボット長さ分だけ離れてスタートする。例えば、ライン1040-Aは壁に近接して印刷されるが、これはすなわち、印刷ヘッド1020が全体的に壁に向かって近接する地点で自走式ロボットの移行が終了するからである。これと対比して、ライン1040-Bは、逆方向、すなわち、壁から離れる方向の移行で印刷される。この結果として、印刷ヘッド1020は、ライン1040-Bのために壁から一層離れた位置からスタートすることになり、これによりライン1040-Aよりも短いラインが描出される。
【0165】
実際上の問題として、ロボットが図示の方向でライン1040-B全体を印刷しようとした場合、ロボットは太い黒線で示す建築物の壁に衝突する。したがって、図で示す実施例は、ロボットが壁に衝突するのを防止する安全機構をロボットは有すると仮定する。すなわち、この安全機構によれば、ロボットはロボットの衝突を防止するに十分離れた位置からラインをスタートさせることができる。この安全機構は、LPPOアルゴリズムを使用する場合には不要であり、これはすなわち、衝突を防止するようラインはトリミング及び仕分けされるからである。
【0166】
図10Cは、同一ロボットによって完成させる同一レイアウトを示すが、最適化されたライン方向を使用する。このケースにおいて、ラインのより大きい部分が壁まで印刷できるよう各ラインの方向を選択する最適化アルゴリズムが運用されている。したがって、例えば、このときライン1040-A及び1040-Bは同一方向で印刷される。このことは、ライン1040-Bの太線で示される付加的部分1042が印刷されることを可能にする。これら最適化の使用により印刷されたが、
図10Cの実施例で印刷できなかったラインの部分はより濃い線で示す。この単純な最適化は印刷できるラインの量を大幅に増やした。
【0167】
しかし、ライン1046及び1048のような幾つかのラインは依然として未完である。とくに、一方の壁から他方の壁まで延びるラインは、ライン端点間を印刷する場合、欠けた区域を有し得る。この実施例において、左側から右側にラインを印刷する自走式ロボットによりライン1046及び1048を印刷するが、幾つかの部分は印刷されない。
【0168】
図10Dは、同一ロボットによって完成させる同一レイアウトを示すが、このケースにおいて、双方向のライン方向が最適化され、ラインは分割されて、壁から壁まで延びるラインが完全に印刷されるのを可能にする。この実施例において、壁から壁まで延びる2つのラインは2つのラインに分割される。2つのライン各々は、中心からスタートし、またロボットヘッドを壁に向かわせる。やはり、このとき印刷できる新たな領域をより濃い線として示す。
【0169】
図10の実施例ではラインの途中に障害物がなく、ロボットが壁に衝突するのを防止するため、ラインをトリミングする必要はなかったことに留意されたい。さらに、この実施例においてプリンタはロボットの前面中心に位置付けられ、ロボットにより壁に沿って延びるラインを印刷することは物理的に不可能であることに留意されたい。しかし、ロボット端縁近傍に印刷素子を有するロボットは、壁に沿って延びるラインを印刷することができる。
【0170】
図11は最適化アルゴリズムで可能となる改善を示す他の実施例を示し、この場合、壁に沿う印刷素子を有するロボットを使用する。
図11Aは
図10Aと同一であり、敷地面に印刷すべき壁及びラインの双方の場所を示す。
【0171】
図11Bは
図10Bに類似し、また最適化を使用することなく印刷できたレイアウト部分である。
図11Bにおいてランダムな印刷方向を選択し、またこのときプリンタはロボットの側面に位置付けられているため、壁に沿う幾つかのラインを印刷することができるが、これはプリンタが適正側面にくるロボット向きをとる場合のみである。
【0172】
図11Cは
図10Cに類似し、1) ロボットがラインを印刷するとき、ロボットヘッドを常に壁に向けている、及び2) 壁に沿って印刷されるライン方向が選択されて、印刷ヘッドがロボットの適正側面に位置してラインが壁に近接して印刷されるような、印刷方向の単純な最適化によって得られる改善を示す。
【0173】
図11Dは
図10Dに類似し、また双方のラインが最適化されるとき、また幾つかのラインに対して双方向の印刷を可能にする分割をするとき得られる改善を示す。この実施例において、さらに、ロボットはロボットのいずれの側面にも印刷素子を有すると仮定する。このことは、2つの印刷素子を設けることによって達成できる、又は作動ステージ上に印刷素子を設け、ステージがロボットの一方の端縁から他方の端縁に移動することができるようにすることによって達成できる。両側に印刷素子がある場合、ラインを半分に分割し、また一方は左側プリンタで、もう一方は右側プリンタで各サイドを個別に印刷することによって、サイドからサイドまで後壁に沿って延びるラインをロボットは完成することができる。やはり、このとき印刷できる新たなライン方向及び付加的ラインをより太線で示す。
【0174】
これら実施例において、空間内の予期されない障害物は存在しないことに留意されたい。一般的障害物の例は、パレット又は補給品の箱、道具箱、一時的支持構体、貫通孔、安全バッテリー、ポータポッティ、等々である。これらのうちのいずれかが存在し、ラインが障害物を通過する場合、実施形態で説明したアルゴリズムはラインを適切に調整する。障害物を通過するラインの区域が除去され、印刷可能な区域のみが残るようラインをトリミングする。次に、印刷方向を調整し、また最大面積量が印刷できるよう必要なあらゆるラインを分割する。
【0175】
さらに、上述したように、アルゴリズムは、APDのいかなる遮蔽をも考慮するように適合させることができる。例えば、レイアウトの端縁に位置付けられた支柱はAPD測定に対する障害物であり得る。パレットはAPDの遮蔽を生じ得る。遮蔽されるレイアウトの領域は、さらに、自走式ロボットの位置を正確に測定できない領域である点で、仮想的障害物として識別することもできる。
【0176】
図12Aは、完成する必要があるレイアウトを示す別の実施例であって、この場合、ロボットがレイアウトを完成するのを物理的に阻害する障害物を有する。この図において、図の端縁における濃い破線は、壁が建設される建築物の端縁を表す。この端縁は落下ハザード用であるため、濃い実線で示される安全レールがその端縁から短い距離に配置されている。これらレールはBIMモデルには存在しないが、作業現場でシステムのユーザーが入力することができる。このレールは印刷すべきラインであり、図において破線でマーク付けされる幾つかのライン部分へのアクセスをブロックする。加えて、フロア上に材料のパレットが存在し、これを図の中間に濃い実線による矩形のボックスで表す。
【0177】
敷地面上にこのレイアウトを印刷するため、ロボットは上述した最適化を適用する。このことは、最大面積の印刷を可能にするが、幾分かの面積は印刷できない。この結果として印刷されたレイアウトを
図12Bに示す。最適化中にアルゴリズムは、ロボットが空間内の様々な障害物に衝突するのを防止するよう幾つかのライン部分を除去する。多くのラインはトリミングされ、幾つかは全体的に除去され、また長いラインは複数のラインに分割され、次いで印刷可能な部分のみがロボットに提出されるよう適切にトリミングされる。
【0178】
図12に示すシナリオにおいて、ロボットがアクセス不能なレイアウト部分は手作業で補完することが必要である。これらのエリアは、ロボットがレイアウトを完成させた後、人手によってマーク付けする必要がある。ロボットを使用しないレイアウトに対して代表的には、オペレータが建築物の製図を読み取り、欠けているピースを探し出し、それらの位置を測定し、敷地面にそれらをマーク付けする必要がある。しかし、このプロセスは、人的オペレータが到達できないエリアにマーク付けするガイドを行うよう、アクセス可能なエリア内で敷地面上にマーク付けするロボットによって極めて簡略化することができる。
【0179】
図13はこれに関する幾つかの実施例を示す。副次的図の各々において、人間によるガイドなしに一般的に印刷されるレイアウトを頂部に示し、また人間のためのガイドでロボットが完成するときのレイアウトを底部に示す。
図13Aは、頂部に実線ボックスとして描いた材料パレットを通過して延びる破線で示されるラインを必要とするレイアウトの例を示す。破線はロボットによって印刷することができる。図の底部はロボットが完成させた後に人間のガイドによる同一レイアウトを示す。ロボットはパレットの外側エリアのみを印刷することができ、また幾分のマージンを残さなければならず、これはすなわち、印刷素子は直接ロボットの端縁にないからである。
【0180】
障害物を除去した後に欠けているラインを補完するタスクを容易にするため、ロボットは、レイアウトには付与されていなかった2つの矢印及び2つの一意的識別子「25」もマーク付けした。これら2つの矢印は、人的オペレータに対してラインが通過して延びており、どの方向にラインを延長させるべきかを指し示す。一意的識別子は、「25」をマーク付けされた端点は連結する必要があることを表示する。勿論、多くの異なる標識を使用することができる。例えば、ラインは、一意的識別子のみ、若しくは矢印のみを有することができる、又はラインを互いに連結するのに何らかの他タイプの記号を使用することができる。
【0181】
さらに、パレットは単に例として付与したことに留意されたい。この技術は、ロボットがエリアに進入するのをブロックするすべてのものに使用することができる。これには、設備又はフェンスのような物理的障害物があるが、他タイプの障害物、例えば、水たまり、窪み、濡れた塗料若しくはコーティング、又はシステムの絶対位置決めデバイスの見通し線をブロックする物体によって生ずる遮蔽エリアすらもあり得る。このエリアは永久的にアクセス不能である場合があり得る、又はロボットが印刷する時間中にのみアクセス不能である場合があり得る。
【0182】
図13Bに示す別の実施例において、同一障害物が存在するが、レイアウトはアクセス不能エリアの下側で角を形成する2つのラインを含む。図示のように、同一技術を用いてどのラインが合流し、またどの方向で合流するかを表示する。
【0183】
図13Cは異なるタイプの例を示す。この図において、太破線はドロップオフ(drop-off)のある建築物の端縁を表現する。これは未だ建設されていない将来のカーテンウォールの場所である。作業者をドロップオフから保護するため、安全バリアを建設し、図では細い矩形ボックスとして描写した。ロボットは安全バリアによって物理的に通過できないため、建築物の端縁近傍でレイアウトを印刷することはできない。ラインはここを通って連結されず、むしろ端部が障害物内で別々に分かれているため、ロボットは、ラインがフロア上で延長することを必要とする距離を印刷する。この実施例において、この距離は2フィート(60.96cm)であり、テキストの「2ft」で表示される。ラインを2フィート延長した後に互いに連結すべきことを表示する記号も印刷する。特別なマーキングは技術を図解するものであり、また同一情報を伝える他のマーキングも使用することができる。
【0184】
図13Dはパレットによって妨害されるレイアウト要素の別の実施例を示す。敷地面上にポイントをマーク付けするのが一般的であり、この場合、「X」によりポイントをマーク付けする2つの交差ラインを使用する。これらポイントは、例えば、ハンガーを表面に設置するために使用される、又はハンガーを設置する天井にマークを転写するため鉛直線レーザーを用いて直接上方に転写する。ポイントは、一般的に正確なポイント(図示せず)を特定するテキスト標識と関連付ける。
【0185】
図示のレイアウトにおいて、図示のポイントはロボットによって印刷できず、これはすなわち、建設現場上に放置された材料パレットの下側に存在するからである。他の状況において、多数の他の理由で印刷不能な場合があり得る。図の底部にはその代わりにロボットが印刷したものを示す。人間が後で完成するタスクを簡略化するため、ロボットは、オフセットした場所にポイントを印刷し、またフロア上にテキスト及び実際のポイントがどこに存在すべきかを表示する矢印を印刷する。図示の実施例において、印刷されるポイントは、さらに、レイアウトで印刷される他のポイントと区別するため、円で囲む。円は、人的オペレータに対して図示の場所は実際のポイントではなく、実際のポイントは印刷されたポイントからオフセットされて設定しなければならないことを表示する。それに加えて、ロボットはポイントを特定するため、ポイントに関連する任意なテキストをも印刷する。このことは、図には示さない。
【0186】
図13Dで示したオフセットポイントをマーキングする困難点の1つは、精密に適正位置で2ft(60.96cm)を測定するのが困難なことがある。
図13Eは、この問題を解決するポイントマーク付けの異なるやり方を示す。図において、左側に示すようなパレットの下側にレイアウトを必要とするポイントがあるとする。このとき、単独オフセットポイントをレイアウトする代わりに、ロボットは2つのオフセットポイントをマーク付けし、これら双方のオフセットポイントはマーク付けすべきポイントから2フィート(60.96cm)離れ、パレットが占める面積の外側にある。このことは、左から2番目の絵柄で示す。これらポイントは、やはり最終制御ポイントではないことを表示している円を有することに留意されたい。パレットを撤去した後にこのポイントをマーク付けするため、オペレータは、各マーク付けしたポイントを中心にして2つの2ftの円弧をマーク付けする。これにより正確なポイントで精密にXを生ずる。このことは、左から3番目の図で示し、この図では、このとき除外されているパレットの場所が破線によって示される。
【0187】
最後に、
図13Eに示す代案的手法において、オペレータ正確なポイントをマーク付けするテンプレートを実施する。これは2つのポイントのマークに整列する透明なプラスチックの形状体とすることができる。このテンプレートは、図において実線で「T」字状アウトラインによって示す。オペレータは、テンプレートを2つの既に存在する制御ポイント上に載置し、またテンプレートは、オペレータがマーキングデバイスの使用により正確な場所に「X」を描出することができる2つの溝孔を有する。
【0188】
実施例は建築物レイアウトの特別なケースを含むが、より一般的には、自走式ロボットは他のタイプの建設レイアウト用にラインを印刷することができると理解されたい。例えば、自走式ロボットは、会議場レイアウト、キュービクルレイアウト、等々における一時的/可動式壁のためのラインを印刷することができる。別の実施例として、レイアウトは、設備、壁、仕切板、及びバリア、組立てライン、工場フロア、データセンター、等々を配置するための、一連のラインのセットとすることができる。
【0189】
ロボットは真直ぐなラインを印刷できるが、より一般的には、湾曲ライン(円弧)又は他の形状を印刷することもできる。例えば、多くの建築物は1つ又はそれ以上の湾曲した内部壁を有する。例えば、印刷されるラインとしては、単一パスに対応する印刷ヘッドの1回の掃過で印刷される任意な連続地物があり得る。すなわち、印刷すべきラインはしばしば真直ぐであるが、何らかの建築物レイアウトが湾曲ラインを有するとき、湾曲ライン(円弧)も印刷することができる。
【0190】
さらに、レイアウトには、レイアウトの一部としてテキスト、記号、画像もあり得る。すなわち、ライン印刷は、レイアウトの他の地物を印刷するロボットを排除するものではない。
【0191】
上述した記載において、説明目的として、本開示の完全な理解をもたらすため多数の特定細部を記述してきた。しかし、本明細書記載の技術は、これら特定細部なしに実践することができる。さらに、説明を曖昧にすることを回避するため、様々なシステム、デバイス、及び構体をブロック図の形式で示す。例えば、様々な実施形態は、特定のハードウェア、ソフトウェア、及びユーザー・インタフェースを有するものとして説明される。しかし、本開示は、データ及びコマンドを受信できる任意なタイプのコンピュータデバイス、及びサービスを提供する任意な周辺デバイスに適用する。
【0192】
時には、様々な実施形態は、コンピュータメモリ内のデータビットに対するオペレーションのアルゴリズム及び象徴的表現で提示することができる。アルゴリズムは、ここでは概して、望ましい結果に導くオペレーションの自己無撞着セットと考えられる。オペレーションは物理量の物理的操作を必要とするものである。通常、必ずしもではないが、これら量は、記憶、転送、結合、比較及び他の操作であり得る電気的又は磁気的信号の形式をとる。時には、主に共通使用の理由として、これら信号はビット、値、要素、記号、文字、項目、数字、等々と称するのが都合がよいと分かっている。
【0193】
説明を容易にするため、システムの幾つかの素子及び/又は方法は、第1、第2、第3等々の標識を用いて参照する。これら標識は、素子を区別することを意図するが、そうでないと明示しない限り、必ずしも何らかの特別な順序又はランク付けを意味しない。
【0194】
しかし、これら及び同様の用語のすべては、適切な物理量に関連し、単にこれら物理量に適用した簡便な標識である。以下の説明から明らかなように、そうでないと特別に記述しない限り、本開示全体にわたり、「処理する(processing)」、「演算する(computing)」、「計算する(calculating)」、「決定する(determining)」、「表示する(displaying)」、等々を含む用語を利用する詳述は、コンピュータシステム、又は同様の電子コンピュータデバイスの作用及び処理に言及し、コンピュータシステムのレジスタ及びメモリ内で物理(電子的)量として表されるデータを操作し、またコンピュータシステムのメモリ又はレジスタ又は他のこのような情報記憶装置、伝送若しくは表示デバイス内の物理量として表される他のデータに変換するものである。
【0195】
本明細書記載の様々な実施形態は、本明細書記載のオペレーションを実施形態する装置に関連し得る。この装置は、必要とされる目的用に特別に構成されることができる、又はコンピュータ内に記憶されたコンピュータプログラムによって選択的に作動又は再構成される汎用コンピュータを備えることができる。このようなコンピュータプログラムはコンピュータ可読記憶媒体に記憶することができ、このような媒体としては、限定しないが、フロッピーディスク、光ディスク、CD ROMs、及び磁気ディスクのような任意なタイプのディスク、それぞれがコンピュータシステムバスに接続される電子命令を記憶するのに適したリード・オンリー・メモリ(ROMs)、ランダム・アクセス・メモリ(RAMs)、EPROMs、EEPROMs、磁気若しくは光カード、不揮発性メモリを有するUSBキーを含むフラッシュメモリ、又は任意なタイプの媒体があり得る。
【0196】
本明細書記載の技術は、全体的ハードウェア実装、全体的ソフトウェア実装、又はハードウェア及びソフトウェア要素の双方を含む実装の形態をとることができる。例えば、技術は、限定しないが、ファームウェア、常駐ソフトウェア、マイクロコード等々を含むソフトウェアに実装することができる。さらにまた、技術は、コンピュータ若しくは任意な命令実行システムによって又はそれらに接続して、使用のためのプログラムを供給するコンピュータ使用可能若しくはコンピュータ可読媒体からアクセス可能なコンピュータプログラムオブジェクトの形式をとることができる。この説明目的のために、コンピュータ使用可能若しくはコンピュータ可読媒体は、任意な持続性記憶装置とすることができ、コンピュータ若しくは任意な命令実行システムによって又はそれらに接続して、使用のためのプログラムを格納、記憶、通信、伝搬、又は伝送することができる。
【0197】
プログラムコードを記憶及び/又は実行するのに適したデータ処理システムは、システムバスを介して直接又は間接的にメモリ素子に接続した少なくとも1つのプロセッサを有することができる。メモリ素子は、プログラムコードの実際の実行中に採用されるローカルメモリ、バルク記憶装置、及び実行中にバルク記憶装置から回収しなければならない多数のコードを減少するための少なくとも幾つかのプログラムコードの一時的記憶を提供するキャッシュメモリを含むことができる。入力デバイス又はI/Oデバイス(限定しないが、キーボード、ディスプレイ、ポインティングデバイス、等々)は、直接又は介在I/Oコントローラを介してシステムに接続することができる。
【0198】
ネットワークアダプタもシステムに接続して、データ処理システムが他のデータ処理システム、記憶デバイス、遠隔プリンタ、等々に対し、介在するプライベート及び/又は公衆ネットワークを介して接続できるようする。無線(例えば、Wi-FiTM)トランシーバー、イーサネット、及びモデムは、まさにネットワークアダプタの数少ない例である。プライベート及び/又は公衆ネットワークは、任意な数の構成及び/又はトポロジーを有することができる。データは、様々な異なる通信プロトコルの使用によりネットワークを介してこれらデバイス間で送信することができ、これら通信プロトコルとしては、例えば、様々インターネット層、トランスポート層、又はアプリケーション層のプロトコルがある。例えば、データは、伝送制御プロトコル/インターネット・プロトコル(TCP/IP)、ユーザー・データグラム・プロトコル(UDP)、伝送制御プロトコル(TCP)、セキュア・ハイパーテキスト転送プロトコル(HTTPS)、ダイナミック・アダプティブ・ストリーミング・オーバー・HTTP(DASH)、リアルタイム・ストリーミング・プロトコル(RTSP)、リアルタイム・トランスポート・プロトコル(RTP)及びリアルタイム・トランスポート・制御プロトコル(RTCP)、ボイス・オーバー・プロトコル(VOIP)、ファイル転送プロトコル(FTP)、ウェブソケット(WS:WebSocket)、無線アクセス・プロトコル(WAP)、様々なメッセージング・プロトコル(SMS、MMS、XMS、IMAP、SMTP、POP、WebDAV、等々)、又は他の既知のプロトコルを使用するネットワークを介して、データを送信することができる。
【0199】
最後に、本明細書で提示した構造、アルゴリズム、及び/又はインタフェースは、特別なコンピュータ又は他の装置に内在的に関連するものではない。様々な汎用システムは、本明細書の教示によるプログラムを使用することができる、又は必要とされる方法ブロックを実施するのにより特化した装置を構築するのに便利であることが分かっている。様々なこれらシステムのための必要な構造は上述した説明から明らかであろう。さらに、その仕様はいかなる特定プログラミング言語に準拠して記述されない。当然のことながら、様々なプログラミング言語を使用して本明細書記載のような仕様の教示を実現することができる。
【0200】
上述した説明は、説明及び記載目的のために提示した。網羅的であること、又は仕様を開示した詳細形態に限定することを意図するものではない。多くの変更及び改変は上述した教示を考慮して可能である。当業者に理解されるように、その精神又は必須の特性から逸脱することなく、他の特定形態で実現することができる。同様に、モジュール、ルーチン、特徴、属性、方法論、及び他の態様の特定のネーミング及び区分は、必須又は重要ではなく、仕様又はその特徴を実施するメカニズムは異なる名前、区分及び/又はフォーマットを有することができる。
【0201】
さらにまた、モジュール、ルーチン、特徴、属性、方法論及び開示の他の態様は、ソフトウェア、ハードウェア、ファームウェア、又はこれら上述したものの組合せとして実施することができる。さらに、コンポーネント、モジュール、ソフトウェアとして実装される仕様の実施例が何であれ、コンポーネントは、スタンドアロンプログラムとして、より大きなプログラムの一部として、複数の個別プログラムとして、静的又は動的にリンク付けされたライブラリとして、カーネルロード可能なモジュールとして、デバイスドライバとして、現在又は未来に知られるすべての及び任意な他の方法で実装することができる。さらに、本開示は、任意な特定プログラミング言語での実施形態、又は任意な特定オペレーティング・システム若しくは環境のための実施形態には決して限定されない。