本発明の代表的かつ非限定的な具体例について、図面を参照して以下に詳細に説明する。この詳細な説明は、本発明の好ましい例を実施するための詳細を当業者に示すことを単純に意図しており、本発明の範囲を限定することを意図したものではない。また、開示された追加的な特徴ならびに発明は、さらに改善された鉄筋結束ロボットを提供するために、他の特徴や発明とは別に、又は共に用いることができる。
また、以下の詳細な説明で開示される特徴や工程の組み合わせは、最も広い意味において本発明を実施する際に必須のものではなく、特に本発明の代表的な具体例を説明するためにのみ記載されるものである。さらに、以下の代表的な具体例の様々な特徴、ならびに、特許請求の範囲に記載されるものの様々な特徴は、本発明の追加的かつ有用な実施形態を提供するにあたって、ここに記載される具体例のとおりに、あるいは列挙された順番のとおりに組合せなければならないものではない。
本明細書及び/又は特許請求の範囲に記載された全ての特徴は、実施例及び/又は特許請求の範囲に記載された特徴の構成とは別に、出願当初の開示ならびに特許請求の範囲に記載された特定事項に対する限定として、個別に、かつ互いに独立して開示されることを意図するものである。さらに、全ての数値範囲及びグループ又は集団に関する記載は、出願当初の開示ならびに特許請求の範囲に記載された特定事項に対する限定として、それらの中間の構成を開示する意図を持ってなされている。
1つまたはそれ以上の実施形態において、鉄筋結束ロボットは、複数の一次鉄筋と、前記複数の一次鉄筋と交差する複数の二次鉄筋について、前記複数の一次鉄筋が延びる方向に前記複数の一次鉄筋と前記複数の二次鉄筋の上を移動する動作と、前記複数の一次鉄筋と前記複数の二次鉄筋が交差する箇所を結束する動作を交互に繰り返し実行可能であってもよい。前記鉄筋結束ロボットは、鉄筋結束ユニットと、前記鉄筋結束ユニットを搬送する搬送ユニットと、前記搬送ユニットの動作を制御する制御ユニットを備えていてもよい。前記搬送ユニットは、前記鉄筋結束ロボットを前後方向に移動させることが可能な縦方向移動機構と、第1視野内の被写体の三次元位置を点群により表した第1点群データを出力する第1三次元距離センサを備えていてもよい。前記制御ユニットは、前記第1点群データに含まれる前記点群から、上下方向の位置が所定の鉄筋深さ範囲内にある点群を抽出する第1鉄筋抽出処理と、前記第1鉄筋抽出処理により抽出された前記点群に基づいて、前記一次鉄筋と前記二次鉄筋が交差する位置を特定する交差位置特定処理を実行可能に構成されていてもよい。
1つまたはそれ以上の実施形態において、前記交差位置特定処理は、前記一次鉄筋を直線によりモデル化した一次鉄筋モデルを生成する一次鉄筋モデル生成処理と、前記第1鉄筋抽出処理により抽出された前記点群から、前記一次鉄筋モデルの近傍の範囲に含まれない点群をさらに抽出する一次鉄筋除外処理と、前記一次鉄筋除外処理によって抽出された前記点群と、前記一次鉄筋モデルに基づいて、前記一次鉄筋と前記二次鉄筋が交差する位置を算出する交差位置算出処理を含んでいてもよい。
上記の構成によれば、一次鉄筋に対応する点群が除外され、二次鉄筋に対応する点群のみが含まれる点群と、一次鉄筋モデルに基づいて、一次鉄筋と二次鉄筋が交差する位置が算出されるので、一次鉄筋と二次鉄筋が交差する位置をより正確に特定することができる。なお、ここでいう一次鉄筋モデルの近傍の範囲とは、例えば、一次鉄筋モデルにより表される直線からの距離が所定値(例えば、一次鉄筋の直径の1.5倍、1倍等)以下となる範囲のことをいう。
1つまたはそれ以上の実施形態において、前記交差位置算出処理は、前記一次鉄筋除外処理によって抽出された前記点群の前後方向の位置の平均値を算出する平均値算出処理と、前記平均値算出処理で算出された前記平均値を前記一次鉄筋モデルに適用する平均値適用処理を含んでいてもよい。
上記の構成によれば、制御ユニットに大きな処理負荷をかけることなく、一次鉄筋と二次鉄筋が交差する位置を算出することができる。
1つまたはそれ以上の実施形態において、前記搬送ユニットは、前記第1視野よりも前方の第2視野内の被写体の三次元位置を点群により表した第2点群データを出力する第2三次元距離センサと、前記第1視野よりも後方の第3視野内の被写体の三次元位置を点群により表した第3点群データを出力する第3三次元距離センサと、をさらに備えていてもよい。前記制御ユニットは、前記第2点群データに含まれる前記点群から、上下方向の位置が前記鉄筋深さ範囲内にある点群を抽出する第2鉄筋抽出処理と、前記第3点群データに含まれる前記点群から、上下方向の位置が前記鉄筋深さ範囲内にある点群を抽出する第3鉄筋抽出処理をさらに実行可能に構成されていてもよい。前記一次鉄筋モデル生成処理において、前記一次鉄筋モデルは、前記第2鉄筋抽出処理によって抽出された前記点群と、前記第3鉄筋抽出処理によって抽出された前記点群に基づいて生成されてもよい。
上記の構成によれば、第2三次元距離センサによって取得された第2点群データに含まれる点群と、第3三次元距離センサによって取得された第3点群データに含まれる点群を用いて、一次鉄筋モデルが生成されるので、より正確な一次鉄筋モデルを生成することができる。
1つまたはそれ以上の実施形態において、前記第2三次元距離センサと前記第3三次元距離センサは、下向きに配置されていてもよい。
上記の構成によれば、第2三次元距離センサや第3三次元距離センサを基準とした被写体の三次元位置を、鉄筋結束ロボットを基準とした三次元位置に変換する処理を、簡素なものとすることができる。
1つまたはそれ以上の実施形態において、前記制御ユニットは、前記第1鉄筋抽出処理によって抽出された前記点群から、最大のクラスタに含まれる点群をさらに抽出するクラスタ抽出処理をさらに実行可能に構成されていてもよい。前記交差位置特定処理は、前記クラスタ抽出処理により抽出された前記点群に基づいてもよい。
第1三次元距離センサによって取得される第1点群データに含まれる点群には、上下方向の位置が一次鉄筋や二次鉄筋と略同じである点群の中に、一次鉄筋や二次鉄筋以外の被写体に対応する点群が含まれている場合がある。第1三次元距離センサによって取得される第1点群データに含まれる点群においては、一次鉄筋や二次鉄筋に対応する点群はクラスタを構成するので、最大のクラスタに含まれる点群のみを抽出することで、一次鉄筋や二次鉄筋以外の被写体に対応する点群を除外することができる。上記の構成によれば、一次鉄筋や二次鉄筋に対応する点群をより正確に抽出することができる。
1つまたはそれ以上の実施形態において、前記第1三次元距離センサは、前記鉄筋結束ロボットの左右方向の中央から左右方向の一方にオフセットして配置されており、左右方向の他方に向けて斜め下向きに配置されていてもよい。
第1三次元距離センサは、一次鉄筋と二次鉄筋が交差する箇所を視野内に入れる必要があるので、仮に、第1三次元距離センサを下向きに配置した場合、鉄筋結束ユニットが結束動作をする際に第1三次元距離センサが邪魔になったり、鉄筋結束ユニットが第1三次元距離センサの視野内に入ったりするおそれがある。上記の構成によれば、第1三次元距離センサが鉄筋結束ロボットの左右方向の中央から左右方向の一方にオフセットして配置されているので、鉄筋結束ユニットが結束動作をする際に第1三次元距離センサが邪魔になったり、鉄筋結束ユニットが第1三次元距離センサの視野内に入ったりすることを抑制することができる。また、上記の構成によれば、左右方向の一方にオフセットして配置された第1三次元距離センサが、左右方向の他方に向けて斜め下向きに配置されているので、第1三次元距離センサの視野内に一次鉄筋と二次鉄筋が交差する箇所を確実に入れることができる。
(実施例)
図1に示すように、本実施例の鉄筋結束ロボット100は、鉄筋結束機2と、電源ユニット102と、操作ユニット104と、搬送ユニット106を備えている。鉄筋結束ロボット100は、水平方向に沿って互いに平行に配筋された複数の一次鉄筋R1と、水平方向に沿って互いに平行に配筋された二次鉄筋R2の上を移動しながら、一次鉄筋R1と二次鉄筋R2が交差する箇所を、鉄筋結束機2を使用して結束するロボットである。一次鉄筋R1と二次鉄筋R2を上方から見た時に、二次鉄筋R2が延びる方向は一次鉄筋R1が延びる方向に対して直交している。また、二次鉄筋R2は一次鉄筋R1の上方に配置されている。一次鉄筋R1は、例えば、100mm-300mmの間隔で配筋されており、二次鉄筋R2は、例えば、100mm-300mmの間隔で配筋されている。鉄筋結束ロボット100は、前後方向の寸法が、例えば、900mm程度であり、左右方向の寸法が、例えば、600mm程度である。
(鉄筋結束機2の構成)
以下では、図2から図5を参照して、鉄筋結束機2の構成について説明する。なお、図2から図5の説明における前後方向、左右方向および上下方向は、鉄筋結束ロボット100を基準とした前後方向、左右方向および上下方向ではなく、鉄筋結束機2を基準とした前後方向、左右方向および上下方向を意味することに留意されたい。
図2に示すように、鉄筋結束機2は、互いに交差する鉄筋R(例えば一次鉄筋R1と二次鉄筋R2)を、ワイヤWによって結束するための電動工具である。鉄筋結束機2は、鉄筋結束ロボット100から取り外してユーザが手に持って使用することもできるし、鉄筋結束ロボット100に取り付けて使用することもできる。鉄筋結束機2は、ハウジング3を備えている。ハウジング3は、本体部4と、本体部4の下部に設けられた把持部6と、把持部6の下部に設けられたバッテリ取付部8を備えている。バッテリ取付部8の下部には、図2に示すように、バッテリパックBを取り付けることもできるし、図1に示すように、バッテリアダプタ108を取り付けることもできる。バッテリパックBは、例えばリチウムイオン電池セル等の二次電池セル(図示せず)を内蔵しており、充電器(図示せず)によって充電可能である。本体部4と、把持部6と、バッテリ取付部8は、一体的に形成されている。
図3に示すように、本体部4の後方上部には、ワイヤWが巻回されたリール10が着脱可能に収容されている。図2に示すように、ハウジング3は、リール10の上方を覆う形状のリールカバー5を備えている。リールカバー5は、本体部4の後方左部および後方右部に設けられたカバー保持部7に、回動可能に保持されている。リールカバー5は、本体部4に対して回動することで開閉する。
図3-図5に示すように、鉄筋結束機2は、送り機構12と、案内機構14と、ブレーキ機構16と、切断機構18と、捩り機構20と、制御装置80を備えている。
図3に示すように、送り機構12は、リール10から供給されるワイヤWを、本体部4の前方の案内機構14へと送り出す。送り機構12は、送りモータ22と、主動ローラ24と、従動ローラ26を備えている。主動ローラ24と従動ローラ26の間に、ワイヤWが挟持される。送りモータ22は、例えば直流ブラシ付きモータである。送りモータ22の動作は、制御装置80によって制御される。送りモータ22は、主動ローラ24を回転させる。送りモータ22が主動ローラ24を回転させると、従動ローラ26が逆方向に回転するとともに、主動ローラ24と従動ローラ26により挟持されたワイヤWが案内機構14へと送り出され、リール10からワイヤWが引き出される。
図4に示すように、案内機構14は、送り機構12から送られたワイヤWを、鉄筋Rの周囲に円環状に案内する。案内機構14は、案内パイプ28と、上側カールガイド30と、下側カールガイド32を備えている。案内パイプ28の後方側の端部は、主動ローラ24と従動ローラ26の間の空間に向けて開口している。送り機構12から送られたワイヤWは、案内パイプ28の内部へと送り込まれる。案内パイプ28の前方側の端部は、上側カールガイド30の内部に向けて開口している。上側カールガイド30には、案内パイプ28から送られるワイヤWを案内するための第1案内通路34と、下側カールガイド32から送られるワイヤWを案内するための第2案内通路(図示せず)が設けられている。
図4に示すように、第1案内通路34には、ワイヤWに下向きの巻きぐせをつけるようにワイヤWを案内する複数の案内ピン38と、後述する切断機構18の一部を構成するカッタ40が設けられている。案内パイプ28から送られたワイヤWは、第1案内通路34において案内ピン38で案内され、カッタ40を通過して、上側カールガイド30の前端から下側カールガイド32に向けて送り出される。
図5に示すように、下側カールガイド32には、送り返し板42が設けられている。送り返し板42は、上側カールガイド30の前端から送られたワイヤWを案内して、上側カールガイド30の第2案内通路の後端に向けて送り返す。
上側カールガイド30の第2案内通路は、第1案内通路34に隣接して配置されている。第2案内通路は、下側カールガイド32から送られたワイヤWを案内して、上側カールガイド30の前端から下側カールガイド32に向けて送り出す。
上側カールガイド30と下側カールガイド32によって、送り機構12から送られたワイヤWは、鉄筋Rの周囲に円環状に巻回される。鉄筋Rの周囲でのワイヤWの巻き数は、ユーザが予め設定しておくことができる。送り機構12は、設定された巻き数に対応する送り量のワイヤWを送り出すと、送りモータ22を停止してワイヤWの送り出しを停止する。
図3に示すブレーキ機構16は、送り機構12がワイヤWの送り出しを停止するのと連動して、リール10の回転を停止する。ブレーキ機構16は、ソレノイド46と、リンク48と、ブレーキアーム50を備えている。ソレノイド46の動作は、制御装置80によって制御される。リール10には、ブレーキアーム50が係合する係合部10aが、径方向に所定の角度間隔で形成されている。ソレノイド46への通電がされていない状態では、ブレーキアーム50がリール10の係合部10aから離反している。ソレノイド46への通電がされた状態では、リンク48を介してブレーキアーム50が駆動されて、ブレーキアーム50がリール10の係合部10aに係合する。制御装置80は、送り機構12がワイヤWの送り出しを行なう際には、ソレノイド46へ通電せずに、ブレーキアーム50をリール10の係合部10aから離反させている。これにより、リール10は自由に回転することができ、送り機構12はリール10からワイヤWを引き出すことができる。また、制御装置80は、送り機構12がワイヤWの送り出しを停止すると、ソレノイド46へ通電して、ブレーキアーム50をリール10の係合部10aに係合させる。これにより、リール10の回転が禁止される。これによって、送り機構12がワイヤWの送り出しを停止した後も、リール10が慣性により回転し続け、リール10と送り機構12の間でワイヤWが弛んでしまうことを防ぐことができる。
図4、図5に示す切断機構18は、ワイヤWを鉄筋Rの周囲に巻回した状態で、ワイヤWを切断する。切断機構18は、カッタ40と、リンク52を備えている。リンク52は、後述する捩り機構20と連動して、カッタ40を回転させる。カッタ40が回転することによって、カッタ40の内部を通過するワイヤWが切断される。
図5に示す捩り機構20は、鉄筋Rの周囲に巻回されたワイヤWを捩ることで、鉄筋RをワイヤWで結束する。捩り機構20は、捩りモータ54と、減速機構56と、スクリューシャフト58(図4参照)と、スリーブ60と、プッシュプレート61と、一対のフック62を備えている。
捩りモータ54は、例えば直流ブラシレスモータである。捩りモータ54の動作は、制御装置80によって制御される。捩りモータ54の回転は、減速機構56を介して、スクリューシャフト58に伝達される。捩りモータ54は、順方向および逆方向に回転可能であり、それに応じて、スクリューシャフト58も、順方向および逆方向に回転可能である。スリーブ60はスクリューシャフト58の周囲を覆うように配置されている。スリーブ60の回転が禁止されている状態では、スクリューシャフト58が順方向に回転すると、スリーブ60が前方に向けて移動し、スクリューシャフト58が逆方向に回転すると、スリーブ60が後方に向けて移動する。プッシュプレート61は、スリーブ60の前後方向の移動に応じて、スリーブ60と一体的に前後方向に移動する。また、スリーブ60の回転が許容されている状態で、スクリューシャフト58が回転すると、スリーブ60はスクリューシャフト58と共に回転する。
スリーブ60が初期位置から所定の位置まで前進すると、プッシュプレート61が切断機構18のリンク52を駆動して、カッタ40を回転させる。一対のフック62はスリーブ60の前端に設けられており、スリーブ60の前後方向の位置に応じて開閉する。スリーブ60が前方に移動すると、一対のフック62が閉じて、ワイヤWを把持する。その後、スリーブ60が後方に移動すると、一対のフック62が開いて、ワイヤWを解放する。
制御装置80は、鉄筋Rの周囲にワイヤWが巻回された状態で、捩りモータ54を回転させる。この際、スリーブ60の回転は禁止されており、スクリューシャフト58の回転によってスリーブ60が前進するとともにプッシュプレート61と一対のフック62が前進し、一対のフック62が閉じてワイヤWを把持する。そして、スリーブ60の回転が許容されると、スクリューシャフト58の回転によってスリーブ60が回転するとともに一対のフック62が回転する。これによって、ワイヤWが捩られて、鉄筋Rが結束される。
制御装置80は、ワイヤWの捩りが終了すると、捩りモータ54を逆方向に回転させる。この際、スリーブ60の回転は禁止されており、一対のフック62が開いてワイヤWが解放された後、スクリューシャフト58の回転によってスリーブ60が後退するとともにプッシュプレート61と一対のフック62が後退する。スリーブ60が後退することによって、プッシュプレート61が切断機構18のリンク52を駆動して、カッタ40を初期姿勢に復帰させる。その後、スリーブ60が初期位置まで後退すると、スリーブ60の回転が許容されて、スクリューシャフト58の回転によってスリーブ60と一対のフック62が回転して、初期角度に復帰する。
図2に示すように、本体部4の上部には、第1操作部64が設けられている。第1操作部64には、主電源のオン/オフを切り換えるメインスイッチ74、主電源のオン/オフの状態を表示する主電源LED76等が設けられている。第1操作部64は、制御装置80に接続されている。
バッテリ取付部8の前方上面には、第2操作部90が設けられている。ユーザは、第2操作部90を介して、鉄筋RへのワイヤWの巻き数や、ワイヤWを捩る際のトルクしきい値等を設定することができる。第2操作部90には、鉄筋RへのワイヤWの巻き数や、ワイヤWを捩る際のトルクしきい値を設定する設定スイッチ98、現在の設定内容を表示する表示用LED96等が設けられている。第2操作部90は、制御装置80に接続されている。
図2-図5に示すように、鉄筋結束機2が鉄筋結束ロボット100から取り外された状態では、ユーザは、把持部6を把持した状態で鉄筋結束機2を使用する。把持部6の前方上部には、ユーザが引き操作可能なトリガ84が設けられている。図5に示すように、把持部6の内部には、トリガ84のオン/オフを検出するトリガスイッチ86が設けられている。トリガスイッチ86は、制御装置80に接続されている。ユーザがトリガ84を引き操作して、トリガスイッチ86がオンとなると、鉄筋結束機2は、送り機構12、案内機構14およびブレーキ機構16によって、ワイヤWを鉄筋Rの周囲に巻回するとともに、切断機構18および捩り機構20によって、ワイヤWを切断して、鉄筋Rに巻回されたワイヤWを捩る、一連の動作を実行する。
(電源ユニット102の構成)
図1に示すように、電源ユニット102は、搬送ユニット106に保持されている。電源ユニット102は、ハウジング110と、カバー112を備えている。ハウジング110には、制御ユニット126が収容されている。制御ユニット126は、電源ユニット102、操作ユニット104および搬送ユニット106の動作を制御する。
図6に示すように、ハウジング110には、バッテリ収容室110aが形成されている。バッテリ収容室110aには、複数のバッテリ取付部114が設けられている。複数のバッテリ取付部114のそれぞれには、複数のバッテリパックBのそれぞれが着脱可能である。カバー112は、バッテリ収容室110aの上端近傍においてハウジング110の後部に設けられたヒンジ115を介してハウジング110に取り付けられている。カバー112は、ハウジング110に対して左右方向に延びる回動軸周りに回動可能である。図6に示すように、カバー112をハウジング110に対して開いた状態では、複数のバッテリパックBのそれぞれは、上下方向にスライドさせることで、複数のバッテリ取付部114に対して着脱可能である。図1に示すように、カバー112をハウジング110に対して閉じた状態とした場合、複数のバッテリ取付部114に取り付けられた複数のバッテリパックBは、ハウジング110とカバー112によって周囲を覆われる。この状態では、電源ユニット102に水がかかった場合であっても、バッテリ収容室110aの内部の複数のバッテリパックBに水がかかることを抑制することができる。
カバー112は、図示しない捩りバネによって、ハウジング110に対して閉じる方向に付勢されている。カバー112には、ユーザが操作可能なラッチ部材116が設けられている。図6に示すように、ハウジング110には、ラッチ部材116に対応して、ラッチ受け110bが形成されている。ユーザが、カバー112を閉じた状態として、ラッチ部材116を回動させると、ラッチ部材116がラッチ受け110bに係合することで、カバー112はハウジング110に対して閉じた状態で維持される。この状態から、ユーザがラッチ部材116を逆方向に回動させると、ラッチ部材116とラッチ受け110bの係合が解除されて、ユーザはカバー112をハウジング110に対して開くことができる。
バッテリ収容室110aよりも前方のハウジング110の上面には、複数の残量表示インジケータ118と、残量表示ボタン120と、動作実行ボタン122が設けられている。複数の残量表示インジケータ118のそれぞれは、複数のバッテリ取付部114のそれぞれに対応して配置されており、対応するバッテリ取付部114に取り付けられたバッテリパックBの電池残量を表示する。残量表示ボタン120は、複数の残量表示インジケータ118による電池残量の表示のオン/オフをユーザが切替操作するためのボタンである。動作実行ボタン122は、鉄筋結束ロボット100の動作の実行および停止をユーザが切替操作するためのボタンである。
バッテリ収容室110aよりも前方のハウジング110の上面には、給電ケーブル124が接続されている。給電ケーブル124には、バッテリアダプタ108が接続されている。鉄筋結束機2にバッテリアダプタ108が取り付けられた状態では、複数のバッテリパックBからの電力が鉄筋結束機2に供給される。
バッテリ収容室110aには、キー117を着脱可能なキー取付部119が設けられている。キー117はキー取付部119に対して抜き差しすることで着脱可能である。キー117がキー取付部119から取り外された状態では、複数のバッテリパックBから鉄筋結束機2、操作ユニット104、搬送ユニット106への電力の供給が遮断される。キー117がキー取付部119に取り付けられた状態では、複数のバッテリパックBから鉄筋結束機2、操作ユニット104、搬送ユニット106への電力の供給が許容される。
(操作ユニット104の構成)
図7、図8に示すように、操作ユニット104は、昇降機構130と、把持機構132を備えている。
図7に示すように、昇降機構130は、下側ベース部材134と、上側ベース部材136と、支持パイプ138,140と、昇降台142と、スクリューシャフト144と、モータ連結部146と、昇降モータ148と、センサ支持部材150と、上限検知センサ152と、下限検知センサ154を備えている。下側ベース部材134は、搬送ユニット106に保持されている。支持パイプ138、140の下端は、下側ベース部材134に固定されている。支持パイプ138,140の上端は、上側ベース部材136に固定されている。支持パイプ138,140は、互いに平行に配置されている。支持パイプ138,140は、鉄筋結束ロボット100の上下方向に対して、前後方向および左右方向に傾斜して配置されている。以下では、支持パイプ138,140が延びる方向を、昇降方向ともいう。昇降台142には、支持パイプ138,140が貫通する貫通孔142a,142bが形成されている。貫通孔142a,142bには、支持パイプ138,140を摺動可能に保持する保持部材156,158が固定されている。保持部材156,158は、例えば、固体潤滑材が埋め込まれたリニアブッシュであってもよいし、リニアボールベアリングであってもよいし、オイルレスベアリングであってもよい。昇降台142は、支持パイプ138,140のそれぞれが対応する保持部材156,158の内部を摺動可能に貫通した状態で、下側ベース部材134と上側ベース部材136の間に配置されている。スクリューシャフト144は、支持パイプ138,140の間に配置されている。スクリューシャフト144の下端は、下側ベース部材134に回転可能に保持されている。スクリューシャフト144の上端近傍は、上側ベース部材136に回転可能に保持されている。スクリューシャフト144は、支持パイプ138,140に対して平行に配置されている。スクリューシャフト144の下側ベース部材134と上側ベース部材136の間の箇所の外面には、雄ネジが形成されている。昇降台142には、スクリューシャフト144が貫通する貫通孔142cが形成されている。貫通孔142cには、ナット160が固定されている。ナット160には、スクリューシャフト144の雄ネジに対応する雌ネジが形成されている。スクリューシャフト144は、雄ネジがナット160の雌ネジに螺合した状態で、昇降台142を貫通している。スクリューシャフト144の上端は、モータ連結部146を介して、昇降モータ148に連結している。昇降モータ148は、例えば直流ブラシ付きモータである。昇降モータ148が順方向に回転すると、スクリューシャフト144の回転により昇降台142が上側ベース部材136から下側ベース部材134へ向けて下降する。逆に、昇降モータ148が逆方向に回転すると、スクリューシャフト144の回転により昇降台142が下側ベース部材134から上側ベース部材136に向けて上昇する。センサ支持部材150は、下端が下側ベース部材134に固定されており、上端が上側ベース部材136に固定されている。上限検知センサ152と下限検知センサ154は、それぞれ、センサ支持部材150に固定されている。上限検知センサ152は、通常時はオフであり、昇降台142が上限位置まで上昇した時に、昇降台142に当接してオンとなる。下限検知センサ154は、通常時はオフであり、昇降台142が下限位置まで下降した時に、昇降台142に当接してオンとなる。鉄筋結束ロボット100の制御ユニット126は、鉄筋結束機2を下降させる際には、昇降モータ148を順方向に回転させ、下限検知センサ154がオンとなると、昇降モータ148を停止する。なお、制御ユニット126は、鉄筋結束機2を下降させる際に、鉄筋結束機2が一次鉄筋R1、二次鉄筋R2またはその他の障害物に衝突して、昇降モータ148の負荷が急激に増加した場合にも、昇降モータ148を停止する。昇降モータ148の負荷は、例えば昇降モータ148の電流値から特定することができる。また、制御ユニット126は、鉄筋結束機2を上昇させる際には、昇降モータ148を逆方向に回転させ、上限検知センサ152がオンとなると、昇降モータ148を停止する。
図9、図10に示すように、本実施例の鉄筋結束ロボット100では、鉄筋結束機2を下降させる際に、一次鉄筋R1および二次鉄筋R2が、上側カールガイド30の側ではなく、下側カールガイド32の側から鉄筋結束機2に近づく。このため、鉄筋結束機2を下降させる際に、一次鉄筋R1および二次鉄筋R2が上側カールガイド30に衝突してしまうことを抑制することができる。また、本実施例の鉄筋結束ロボット100では、鉄筋結束機2を上昇させる際に、一次鉄筋R1および二次鉄筋R2が、上側カールガイド30の側ではなく、下側カールガイド32の側に遠ざかっていく。このため、鉄筋結束機2を上昇させる際に、一次鉄筋R1および二次鉄筋R2が上側カールガイド30に引っ掛かってしまうことを抑制することができる。
図8に示すように、把持機構132は、第1支持プレート162と、第2支持プレート164と、連結シャフト166,168と、回動ピン170と、捩りバネ172と、支持ピン174と、リンク176と、プランジャ178と、アクチュエータ180と、捩りバネ182を備えている。第1支持プレート162は、鉄筋結束機2の把持部6の一方の外面(例えば、鉄筋結束機2から見て右側の外面)に対向して配置されている。第2支持プレート164は、鉄筋結束機2の把持部6の他方の外面(例えば、鉄筋結束機2から見て左側の外面)に対向して配置されている。第1支持プレート162と第2支持プレート164は、鉄筋結束機2の把持部6を挟持した状態で、連結シャフト166,168を介して互いに固定されている。第1支持プレート162の把持部6に対向する面と、第2支持プレート164の把持部6に対向する面には、それぞれ、鉄筋結束機2の把持部6の外面に形成された複数の凹部6a(図2参照)に嵌合する複数の突出部(図示せず)が形成されている。このため、鉄筋結束機2の把持部6は、第1支持プレート162と第2支持プレート164に対して、位置が固定される。
第1支持プレート162は、回動ピン170を介して昇降機構130の昇降台142に連結している。回動ピン170の一端は、昇降台142に固定されている。回動ピン170の他端は、第1支持プレート162に回動可能に保持されている。このため、第1支持プレート162および第2支持プレート164によって保持された鉄筋結束機2は、昇降台142の昇降に応じて昇降するとともに、昇降台142に対して回動ピン170周りに回動可能である。支持ピン174は、昇降台142に固定されており、昇降台142から第1支持プレート162に向けて延びている。第1支持プレート162には、支持ピン174が挿入される長孔162aと、昇降台142に向けて突出する突出部162bが形成されている。長孔162aは、鉄筋結束機2が回動ピン170周りに回動する際の回動範囲を規定する。捩りバネ172は、回動ピン170の外側に配置されており、突出部162bが支持ピン174から離れる方向に、突出部162bを支持ピン174に対して付勢する(すなわち、第1支持プレート162を昇降台142に対して付勢する)。仮に、鉄筋結束機2が昇降台142に対して回動不能な構成とすると、鉄筋結束機2に障害物が衝突した場合に、操作ユニット104に大きな衝撃が作用する。上記のように、鉄筋結束機2を昇降台142に対して回動可能な構成とすることで、鉄筋結束機2が障害物に衝突した場合であっても、操作ユニット104に大きな衝撃が作用することを抑制することができる。
リンク176は、第2支持プレート164に保持されている。リンク176は、第2支持プレート164に対して左右方向に沿った回動軸周りに回動可能である。リンク176は、押圧部176aと、操作部176bを備えている。押圧部176aは、鉄筋結束機2のトリガ84に対向して配置されている。操作部176bは、プランジャ178を介してアクチュエータ180に連結されている。アクチュエータ180は、例えばソレノイドである。アクチュエータ180の動作は、鉄筋結束ロボット100の制御ユニット126によって制御される。捩りバネ182は、押圧部176aがトリガ84から離れる方向に、リンク176を第2支持プレート164に対して付勢する。アクチュエータ180がオフの場合には、捩りバネ182の付勢力によって、押圧部176aはトリガ84から離反している。アクチュエータ180がオンになると、操作部176bがアクチュエータ180に近づく方向にリンク176が回動することで、押圧部176aがトリガ84を押圧する。これによって、鉄筋結束機2のトリガ84に対する引き操作が行われる。
(搬送ユニット106の構成)
図11に示すように、搬送ユニット106は、車台190と、右側クローラ192と、左側クローラ194と、サイドステッパ196と、前側三次元距離センサ198と、後側三次元距離センサ200と,中央三次元距離センサ202を備えている。
車台190は、ベースプレート204と、右側フレーム206と、左側フレーム208と、右側プレート210と、左側プレート212と、前側フレーム214と、後側フレーム216を備えている。ベースプレート204は、前後方向および左右方向に沿って配置されている。図1に示すように、電源ユニット102は、ハウジング110をベースプレート204の上面に固定することで、搬送ユニット106に保持されている。ベースプレート204には、貫通孔204aが形成されている。図11に示すように、操作ユニット104は、貫通孔204aの縁に下側ベース部材134を固定することで、搬送ユニット106に保持されている。操作ユニット104が鉄筋結束機2を昇降させる際には、鉄筋結束機2は貫通孔204aを通過する。
右側フレーム206と左側フレーム208は、ベースプレート204の下面に固定されている。右側フレーム206は、ベースプレート204の右端において、前後方向に延びている。左側フレーム208は、ベースプレート204の左端において、前後方向に伸びている。前後方向に関して、右側フレーム206の前端と、左側フレーム208の前端は、ベースプレート204の前端と同じ位置にあり、右側フレーム206の後端と、左側フレーム208の後端は、ベースプレート204の後端と同じ位置にある。右側プレート210は、右側フレーム206の右面に固定されている。右側プレート210は、前後方向および上下方向に沿って配置されている。左側プレート212は、左側フレーム208の左面に固定されている。左側プレート212は、前後方向および上下方向に沿って配置されている。上下方向に関して、右側プレート210の上端と、左側プレート212の上端は、ベースプレート204の上面と同じ位置にある。前後方向に関して、右側プレート210の前端と、左側プレート212の前端は、ベースプレート204の前端よりも前方に突出しており、右側プレート210の後端と、左側プレート212の後端は、ベースプレート204の後端よりも後方に突出している。前側フレーム214は、ベースプレート204の前端よりも前方で、右側プレート210の前端近傍と左側プレート212の前端近傍を連結している。後側フレーム216は、ベースプレート204の後端よりも後方で、右側プレート210の後端近傍と左側プレート212の後端近傍を連結している。前側フレーム214と後側フレーム216は、左右方向に延びている。上下方向に関して、前側フレーム214と後側フレーム216は、右側フレーム206と左側フレーム208よりも下方に配置されている。
右側クローラ192は、前側プーリ218と、後側プーリ220と、複数の補助プーリ222と、テンショナプーリ224と、ゴムベルト226と、右側クローラモータ228と、ギヤボックス230を備えている。前側プーリ218の外面と、後側プーリ220の外面と、複数の補助プーリ222の外面には、それぞれ、ゴムベルト226と噛み合う歯形が形成されている。ゴムベルト226は、前側プーリ218と、後側プーリ220と、複数の補助プーリ222と、テンショナプーリ224に掛け渡されている。前側プーリ218は、右側プレート210の前端近傍において、ベアリング232を介して右側プレート210に回転可能に支持されている。後側プーリ220は、右側プレート210の後端近傍において、ベアリング234を介して右側プレート210に回転可能に支持されている。複数の補助プーリ222は、前側プーリ218と後側プーリ220の間で、対応するベアリング236を介して右側プレート210に回転可能に支持されている。複数の補助プーリ222は、前後方向に並んで配置されている。前側プーリ218の外径と後側プーリ220の外径は略同じであり、複数の補助プーリ222の外径は、前側プーリ218および後側プーリ220の外径よりも小さい。上下方向に関して、前側プーリ218の下端と、後側プーリ220の下端と、複数の補助プーリ222の下端は、略同じ位置にある。
図12に示すように、テンショナプーリ224は、可動ベアリング237に回転可能に支持されている。可動ベアリング237は、上下方向に移動可能に、右側プレート210に支持されている。なお、可動ベアリング237の近傍においては、可動ベアリング237と干渉しないように、ベースプレート204と右側フレーム206は切り欠かれている。可動ベアリング237の下方には、調節ボルト238と、ナット240と、ボルト支持部材242が設けられている。ボルト支持部材242は、右側プレート210に固定されている。ボルト支持部材242には、調節ボルト238の軸部238aが貫通する貫通孔242aが形成されている。貫通孔242aの内面には、軸部238aの雄ネジに対応する雌ネジが形成されている。ナット240は、ボルト支持部材242の下方に配置されている。調節ボルト238の頭部238bは、ナット240よりも下方に配置されており、調節ボルト238の軸部238aは、ナット240に螺合するとともに、ボルト支持部材242の貫通孔242aに螺合している。このため、いわゆるダブルナットの要領で、調節ボルト238の上下方向の位置が固定される。調節ボルト238の軸部238aの上端は、可動ベアリング237の下面に当接している。ゴムベルト226がテンショナプーリ224に掛け渡されている状態で、調節ボルト238の上下方向の位置を調整することで、可動ベアリング237の右側プレート210に対する上下方向の位置を調整することができる。これによって、ゴムベルト226の張り具合いを調整することができる。
図11に示すように、右側クローラモータ228は、ベアリング232と、ギヤボックス230を介して、右側プレート210に支持されている。右側クローラモータ228は、例えば直流ブラシレスモータである。右側クローラモータ228は、ギヤボックス230に内蔵された減速ギヤ(図示せず)を介して、前側プーリ218に連結されている。右側クローラモータ228が順方向または逆方向に回転すると、前側プーリ218が順方向または逆方向に回転し、それによってゴムベルト226が前側プーリ218と、後側プーリ220と、複数の補助プーリ222と、テンショナプーリ224の外側で順方向または逆方向に回転する。
左側クローラ194は、前側プーリ244と、後側プーリ246と、複数の補助プーリ248と、テンショナプーリ250と、ゴムベルト252と、左側クローラモータ254と、ギヤボックス256を備えている。前側プーリ244の外面と、後側プーリ246の外面と、複数の補助プーリ248の外面には、それぞれ、ゴムベルト252と噛み合う歯形が形成されている。ゴムベルト252は、前側プーリ244と、後側プーリ246と、複数の補助プーリ248と、テンショナプーリ250に掛け渡されている。前側プーリ244は、左側プレート212の前端近傍において、ベアリング258を介して左側プレート212に回転可能に支持されている。後側プーリ246は、左側プレート212の後端近傍において、ベアリング260を介して左側プレート212に回転可能に支持されている。複数の補助プーリ248は、前側プーリ244と後側プーリ246の間で、対応するベアリング262を介して左側プレート212に回転可能に支持されている。複数の補助プーリ248は、前後方向に並んで配置されている。前側プーリ244の外径と後側プーリ246の外径は略同じであり、複数の補助プーリ248の外径は、前側プーリ244および後側プーリ246の外径よりも小さい。上下方向に関して、前側プーリ244の下端と、後側プーリ246の下端と、複数の補助プーリ248の下端は、略同じ位置にある。
図12に示すように、テンショナプーリ250は、可動ベアリング264に回転可能に支持されている。可動ベアリング264は、上下方向に移動可能に、左側プレート212に支持されている。なお、可動ベアリング264の近傍においては、可動ベアリング264と干渉しないように、ベースプレート204と左側フレーム208は切り欠かれている。可動ベアリング264の下方には、調節ボルト266と、ナット268と、ボルト支持部材270が設けられている。ボルト支持部材270は、左側プレート212に固定されている。ボルト支持部材270には、調節ボルト266の軸部266aが貫通する貫通孔270aが形成されている。貫通孔270aの内面には、軸部266aの雄ネジに対応する雌ネジが形成されている。ナット268は、ボルト支持部材270の下方に配置されている。調節ボルト266の頭部266bは、ナット268よりも下方に配置されており、調節ボルト266の軸部266aは、ナット268に螺合するとともに、ボルト支持部材270の貫通孔270aに螺合している。このため、いわゆるダブルナットの要領で、調節ボルト266の上下方向の位置が固定される。調節ボルト266の軸部266aの上端は、可動ベアリング264の下面に当接している。ゴムベルト252がテンショナプーリ250に掛け渡されている状態で、調節ボルト266の上下方向の位置を調整することで、可動ベアリング264の左側プレート212に対する上下方向の位置を調整することができる。これによって、ゴムベルト252の張り具合いを調整することができる。
図11に示すように、左側クローラモータ254は、ベアリング258と、ギヤボックス256を介して、左側プレート212に支持されている。左側クローラモータ254は、例えば直流ブラシレスモータである。左側クローラモータ254は、ギヤボックス256に内蔵された減速ギヤ(図示せず)を介して、前側プーリ244に連結されている。左側クローラモータ254が順方向または逆方向に回転すると、前側プーリ244が順方向または逆方向に回転し、それによってゴムベルト252が前側プーリ244と、後側プーリ246と、複数の補助プーリ248と、テンショナプーリ250の外側で順方向または逆方向に回転する。
図13に示すように、サイドステッパ196は、ステップバー272,274と、前側クランク機構276と、後側クランク機構277と、ステッパモータ279と、ギヤボックス281と、ウォームギヤケース283と、回転伝達シャフト285を備えている。ステップバー272,274は、断面が略矩形の棒状部材であって、前後方向に延びている。図11に示すように、左右方向に関して、ステップバー272はベースプレート204の中央と右端の間に配置されており、ステップバー274はベースプレート204の中央と左端の間に配置されている。
図13,図14に示すように、前側クランク機構276は、支持プレート278と、プーリ280,282と、ベルト284と、クランクアーム286,288と、クランクピン290,292(図15参照)と、クランクプレート294と、ローラ296,298と、ガイドプレート300を備えている。支持プレート278は、ベースプレート204の前端近傍で、ベースプレート204の下面に固定されている。支持プレート278は、左右方向および上下方向に沿って配置されている。プーリ280は、支持プレート278の右端近傍で、支持プレート278よりも後方に配置されている。プーリ282は、支持プレート278の左端近傍で、支持プレート278よりも後方に配置されている。プーリ280,282は、それぞれ、支持プレート278に回転可能に支持されている。プーリ280の径は、プーリ282の径と略同じである。ベルト284は、プーリ280,282に掛け渡されている。このため、プーリ280,282は、一方が順方向または逆方向に回転した時に、他方も順方向または逆方向に略同じ回転数で回転する。
クランクアーム286,288と、クランクピン290,292と、クランクプレート294と、ローラ296,298と、ガイドプレート300は、支持プレート278よりも前方に配置されている。図15に示すように、クランクアーム286,288は、プーリ280,282の軸280a,282aが嵌め込まれる嵌合孔286a,288aと、クランクアーム286,288の長手方向に延びる長孔286b,288bを備えている。クランクアーム286,288は、プーリ280,282が回転する時に、軸280a,282aを中心としてプーリ280,282と一体となって回転する。長孔286b,288bには、クランクピン290,292が摺動可能に挿入されている。クランクピン290,292は、クランクプレート294を貫通した状態で、クランクプレート294に固定されている。クランクプレート294は、クランクアーム286,288よりも前方側に配置されている。クランクプレート294は、左右方向および上下方向に沿って延びている。ローラ296,298(図14参照)は、クランクプレート294よりも前方側で、クランクピン290,292に取り付けられている。図14に示すように、ローラ296,298は、ガイドプレート300の後面に形成されたガイド溝302,304に入り込んでいる。ガイドプレート300は、クランクプレート294よりも前方で、ベースプレート204の下面に固定されている。ガイドプレート300は、左右方向および上下方向に沿って延びている。図15に示すように、ガイドプレート300のガイド溝302,304は、角部が丸められた略矩形の形状に形成されている。ガイド溝302,304は、図15に破線で示すサイドステップ軌道Sを規定している。サイドステップ軌道Sは、角部が丸められた略矩形の形状を有しており、左右方向に沿った上辺および下辺と、上下方向に沿った右辺および左辺を有する。
前側クランク機構276において、プーリ280,282が回転すると、クランクアーム286,288の回転によって、クランクピン290,292がクランクアーム286,288の回転方向に移動する。この際に、ローラ296,298がガイド溝302,304に入り込んでいるため、クランクピン290,292は、長孔286b,288bの内部を摺動しつつ、ガイド溝302,304によって規定されるサイドステップ軌道Sに沿って移動する。これによって、クランクピン290,292が固定されたクランクプレート294も、ガイド溝302,304によって規定されるサイドステップ軌道Sに沿って移動する。
図16に示すように、後側クランク機構277は、支持プレート306と、プーリ308,310と、ベルト312と、クランクアーム314,316と、クランクピン318,320(図15参照)と、クランクプレート322と、ローラ324,326と、ガイドプレート328を備えている。支持プレート306は、ベースプレート204の後端近傍で、ベースプレート204の下面に固定されている。支持プレート306は、左右方向および上下方向に沿って配置されている。プーリ308は、支持プレート306の右端近傍で、支持プレート306よりも前方に配置されている。プーリ310は、支持プレート306の左端近傍で、支持プレート306よりも前方に配置されている。プーリ308,310は、それぞれ、支持プレート306に回転可能に支持されている。プーリ308の径は、プーリ310の径と略同じであり、前側クランク機構276のプーリ280,282の径と略同じである。ベルト312は、プーリ308,310に掛け渡されている。このため、プーリ308,310は、一方が順方向または逆方向に回転した時に、他方も順方向または逆方向に略同じ回転数で回転する。
クランクアーム314,316と、クランクピン318,320と、クランクプレート322と、ローラ324,326と、ガイドプレート328は、支持プレート306よりも後方に配置されている。図15に示すように、クランクアーム314,316は、プーリ308,310の軸308a,310aが嵌め込まれる嵌合孔314a,316aと、クランクアーム314,316の長手方向に延びる長孔314b,316bを備えている。クランクアーム314,316は、プーリ308,310が回転する時に、軸308a,310aを中心としてプーリ308,310と一体となって回転する。長孔314b,316bには、クランクピン318,320が摺動可能に挿入されている。クランクピン318,320は、クランクプレート322を貫通した状態で、クランクプレート322に固定されている。クランクプレート322は、クランクアーム314,316よりも後方側に配置されている。クランクプレート322は、左右方向および上下方向に沿って延びている。ローラ324,326(図16参照)は、クランクプレート322よりも後方側で、クランクピン318,320に取り付けられている。図16に示すように、ローラ324,326は、ガイドプレート328の前面に形成されたガイド溝330,332に入り込んでいる。ガイドプレート328は、クランクプレート322よりも後方で、ベースプレート204の下面に固定されている。ガイドプレート328は、左右方向および上下方向に沿って延びている。図15に示すように、ガイドプレート328のガイド溝330,332は、角部が丸められた略矩形の形状に形成されている。ガイド溝330,332は、図15に破線で示すサイドステップ軌道Sを規定している。サイドステップ軌道Sは、角部が丸められた略矩形の形状を有しており、左右方向に沿った上辺および下辺と、上下方向に沿った右辺および左辺を有する。ガイド溝330,332によって規定されるサイドステップ軌道Sは、ガイド溝302,304によって規定されるサイドステップ軌道Sと同一である。
後側クランク機構277において、プーリ308,310が回転すると、クランクアーム314,316の回転によって、クランクピン318,320がクランクアーム314,316の回転方向に移動する。この際に、ローラ324,326がガイド溝330,332に入り込んでいるため、クランクピン318,320は、長孔314b,316bの内部を摺動しつつ、ガイド溝330,332によって規定されるサイドステップ軌道Sに沿って移動する。これによって、クランクピン318,320が固定されたクランクプレート322も、ガイド溝330,332によって規定されるサイドステップ軌道Sに沿って移動する。
図13に示すように、ステップバー272,274は、それぞれ、前端が前側クランク機構276のクランクプレート294に固定されており、後端が後側クランク機構277のクランクプレート322に固定されている。また、前側クランク機構276のプーリ280と、後側クランク機構277のプーリ308は、回転伝達シャフト285によって連結されている。このため、前側クランク機構276のプーリ280,282と後側クランク機構277のプーリ308,310は、互いに同期して回転するとともに、前側クランク機構276のクランクプレート294と後側クランク機構277のクランクプレート322は、互いに同期して動作する。なお、前側クランク機構276および後側クランク機構277の一方(例えば前側クランク機構276)には、ゼロ点検知センサ(図示せず)が設けられている。ゼロ点検知センサは、例えば、クランクプレート294に固定された永久磁石(図示せず)と、ガイドプレート300に固定されたホール素子(図示せず)を備えている。ゼロ点検知センサは、サイドステップ軌道Sの上辺の左右方向の中央をゼロ点位置として、クランクプレート294,322がゼロ点位置にあるか否かを検出することができる。
図13に示すように、ウォームギヤケース283は、前側クランク機構276のプーリ282よりも後方に配置されている。ウォームギヤケース283は、前側クランク機構276の支持プレート278に固定されている。ギヤボックス281は、ウォームギヤケース283よりも右側に配置されており、ウォームギヤケース283に固定されている。ステッパモータ279は、ギヤボックス281よりも右側に配置されており、ギヤボックス281に保持されている。ステッパモータ279は、例えば直流ブラシ付きモータである。ステッパモータ279は、ギヤボックス281に内蔵された減速ギヤ(図示せず)と、ウォームギヤケース283に内蔵されたウォームギヤ(図示せず)を介して、プーリ282に連結されている。ステッパモータ279が順方向または逆方向に回転すると、プーリ280,282,308,310が順方向または逆方向に回転し、それによってクランクプレート294,322がサイドステップ軌道Sに沿って右回りまたは左回りに移動し、ステップバー272,274もサイドステップ軌道Sに沿って右回りまたは左回りに移動する。なお、図1に示すように、ベースプレート204には、ステッパモータ279、ギヤボックス281、ウォームギヤケース283との干渉を回避するための貫通孔204bが形成されている。
図17に示すように、クランクプレート294,322がサイドステップ軌道S(図15参照)の上辺にあり、ステップバー272,274が上方に移動している状態では、クランクプレート294,322やステップバー272,274は、一次鉄筋R1や二次鉄筋R2から離反している。この状態では、右側クローラ192と左側クローラ194が、一次鉄筋R1や二次鉄筋R2に当接しているので、鉄筋結束ロボット100は、右側クローラ192と左側クローラ194を駆動して、前後方向への移動を行うことができる。
図17に示す状態から、ステッパモータ279を回転させると、クランクプレート294,322がサイドステップ軌道S(図15参照)に沿って移動し、それに伴ってステップバー272,274が下方に移動することで、クランクプレート294,322とステップバー272,274が二次鉄筋R2に当接する。この状態からさらにステッパモータ279を回転させると、クランクプレート294,322とステップバー272,274がさらに下方に移動することで、図18に示すように、右側クローラ192と左側クローラ194は二次鉄筋R2から離反する。そのままステッパモータ279を回転させることで、サイドステップ軌道Sの左右方向の幅に相当するステップ幅だけ、鉄筋結束ロボット100が右方向または左方向に移動した後、クランクプレート294,322とステップバー272,274が上方に向けて移動し、右側クローラ192と左側クローラ194が再び一次鉄筋R1や二次鉄筋R2に当接するとともに、クランクプレート294,322とステップバー272,274が二次鉄筋R2から離反する。クランクプレート294,322がゼロ点位置まで移動したことがゼロ点検知センサによって検知されると、ステッパモータ279の回転が停止する。上記のように、サイドステッパ196を駆動することによって、鉄筋結束ロボット100は、右方向または左方向に、所定のステップ幅だけ移動することができる。
なお、ガイド溝302,304,330,332によって規定されるサイドステップ軌道Sは、上記のような略矩形の形状に限らず、種々の形状とすることができる。サイドステップ軌道Sは、ステップバー272,274がサイドステップ軌道Sに沿って移動する際に、ステップバー272,274の下端が右側クローラ192および左側クローラ194の下端よりも下方に移動し、その後にステップバー272,274の下端が左右方向に移動し、その後にステップバー272,274の下端が右側クローラ192および左側クローラ194の下端よりも上方に移動するものであれば、どのような形状であってもよい。例えば、サイドステップ軌道Sは、円形状としてもよいし、楕円形状としてもよいし、下方に底辺を有する三角形状としてもよいし、五角形以上の多角形状としてもよい。
図11に示すように、前側三次元距離センサ198は、前側フレーム214の左右方向の中央近傍で、前側フレーム214の前面に設けられている。後側三次元距離センサ200は、後側フレーム216の左右方向の中央近傍で、後側フレーム216の後面に設けられている。中央三次元距離センサ202は、ベースプレート204の左端の前後方向の中央近傍で、ベースプレート204の下面に設けられている。前側三次元距離センサ198と後側三次元距離センサ200は、それぞれ、下を向くように配置されている。中央三次元距離センサ202は、斜め右下を向くように配置されている。前側三次元距離センサ198,後側三次元距離センサ200,中央三次元距離センサ202は、例えば視野内の被写体の三次元位置を点群により表した点群データを出力可能なTOF(Time-of Flight)センサである。鉄筋結束ロボット100の制御ユニット126は、前側三次元距離センサ198,後側三次元距離センサ200,中央三次元距離センサ202で取得される点群データに基づいて、前側三次元距離センサ198,後側三次元距離センサ200,中央三次元距離センサ202のそれぞれに対する、一次鉄筋R1や二次鉄筋R2の相対的な配置を特定することができる。前側三次元距離センサ198の視野は、中央三次元距離センサ202の視野よりも前方に配置されており、後側三次元距離センサ200の視野は、中央三次元距離センサ202の視野よりも後方に配置されている。なお、前側三次元距離センサ198,後側三次元距離センサ200,中央三次元距離センサ202としては、TOFセンサの代わりに、ステレオビジョン方式やパターンプロジェクション方式の三次元距離センサを用いてもよい。
(鉄筋結束ロボット100の動作)
ユーザが動作実行ボタン122を操作して、鉄筋結束ロボット100の動作の実行が指示されると、制御ユニット126は、図19、図20に示す処理を実行する。
図19に示すように、S2では、制御ユニット126は、複数の一次鉄筋R1のうち、結束作業の対象とする一次鉄筋R1’上に到達するまで、サイドステップ処理(図28参照)を実行する。サイドステップ処理の詳細については後述する。
S4では、制御ユニット126は、鉄筋結束ロボット100から見た一次鉄筋R1’の位置および角度を直線でモデル化した一次鉄筋モデルを生成する。一次鉄筋モデルの生成処理の詳細については後述する。
S6では、制御ユニット126は、一次鉄筋R1’の左右方向の位置が、基準位置から第1所定位置範囲内にあるか否かを判断する。ここでいう基準位置とは、操作ユニット104が鉄筋結束機2を下降させて結束作業を行う際に、一次鉄筋R1’と二次鉄筋R2の交差箇所が存在すべき位置のことをいう。例えば、基準位置は、前後方向および左右方向に関して、ベースプレート204の前後方向および左右方向の中央に位置する。また、ここでいう一次鉄筋R1’の左右方向の位置とは、基準位置と同じ前後方向の位置における、一次鉄筋R1’の左右方向の位置のことをいう。一次鉄筋R1’の左右方向の位置は、一次鉄筋モデルに基づいて算出することができる。さらに、ここでいう第1所定位置範囲とは、一次鉄筋R1’の左右方向の位置がその範囲内にあれば、鉄筋結束機2による結束作業を実行可能な範囲である。一次鉄筋R1’の左右方向の位置が、第1所定位置範囲内にない場合(NOの場合)、処理はS10へ進む。一次鉄筋R1’の左右方向の位置が、第1所定位置範囲にある場合(YESの場合)、処理はS8へ進む。
S8では、制御ユニット126は、一次鉄筋R1’の角度が、基準角度から所定角度範囲内にあるか否かを判断する。ここでいう基準角度とは、操作ユニット104が鉄筋結束機2を下降させて結束作業を行う際に、一次鉄筋R1’と二次鉄筋R2の交差箇所において、鉄筋結束ロボット100の前後方向に対して一次鉄筋R1’が取るべき角度のことをいう。例えば、基準角度は、ゼロ度である。一次鉄筋R1’の角度は、一次鉄筋モデルに基づいて算出することができる。また、ここでいう所定角度範囲は、一次鉄筋R1’の角度がその範囲内にあれば、鉄筋結束機2による結束作業を実行可能な範囲である。一次鉄筋R1’の角度が、所定角度範囲内にない場合(NOの場合)、処理はS10へ進む。一次鉄筋R1の角度が所定角度範囲内にある場合(YESの場合)、処理はS22(図20参照)へ進む。
S10では、制御ユニット126は、鉄筋トレース制御を開始する。鉄筋トレース制御では、制御ユニット126は、右側クローラ192と左側クローラ194に速度差を与えた状態で鉄筋結束ロボット100を前進または後退させて、一次鉄筋R1’の左右方向の位置および角度を、基準位置および基準角度に近付けていく。鉄筋トレース制御の詳細については、後述する。
S12では、制御ユニット126は、鉄筋結束ロボット100の移動に伴って一次鉄筋モデルを更新するために、S4と同様の処理によって、一次鉄筋R1’に関する一次鉄筋モデルを生成する。
S14では、制御ユニット126は、一次鉄筋R1’の左右方向の位置が、基準位置から第1所定位置範囲内にあるか否かを判断する。一次鉄筋R1’の左右方向の位置が、第1所定位置範囲内にない場合(NOの場合)、処理はS12へ戻る。一次鉄筋R1’の左右方向の位置が、第1所定範囲にある場合(YESの場合)、処理はS16へ進む。
S16では、制御ユニット126は、一次鉄筋R1’の角度が、基準角度から所定角度範囲内にあるか否かを判断する。一次鉄筋R1’の角度が、所定角度範囲内にない場合(NOの場合)、処理はS12へ戻る。一次鉄筋R1’の角度が所定角度範囲内にある場合(YESの場合)、処理はS18へ進む。
S18では、制御ユニット126は、鉄筋トレース制御を終了する。S10からS18までの処理を行うことによって、図21に示すように、一次鉄筋R1’の左右方向の位置と角度が、基準位置と基準角度に一致するように、鉄筋結束ロボット100が移動する。なお、図21-図24においては、鉄筋結束ロボット100の基準位置と基準角度を、十字カーソルCで表している。
図19に示すように、S20では、制御ユニット126は、復帰処理を行う。復帰処理では、制御ユニット126は、直前のS10からS18までの処理において鉄筋結束ロボット100が進行した方向とは逆の方向に、鉄筋結束ロボット100を進行させる。この際に、制御ユニット126は、直前のS10からS18までの処理で第1所定位置範囲内および所定角度範囲内に収まった一次鉄筋R1’の左右方向の位置および角度が、第1所定位置範囲および所定角度範囲から外れないように、右側クローラ192と左側クローラ194に速度差を与えながら、鉄筋結束ロボット100を進行させる。制御ユニット126は、S10で鉄筋トレース制御を開始してからS18で鉄筋トレース制御を終了するまでの、鉄筋結束ロボット100の前方または後方への移動距離を計測しておいて、S20の復帰処理で、同じ移動距離だけ鉄筋結束ロボット100を逆方向に進行させる。S20の復帰処理を行うことによって、図22に示すように、一次鉄筋R1’の左右方向の位置と角度を基準位置と基準角度に一致させた状態のまま、鉄筋結束ロボット100が逆方向に進行する。
図20に示すように、S22では、制御ユニット126は、S10(図19参照)と同様に、鉄筋トレース制御を開始する。これによって、鉄筋結束ロボット100が、一次鉄筋R1’に沿った前進または後退を開始する。
S24では、制御ユニット126は、鉄筋結束ロボット100の移動に伴って一次鉄筋モデルを更新するために、S4と同様の処理によって、一次鉄筋R1’に関する一次鉄筋モデルを生成する。
S26では、制御ユニット126は、一次鉄筋R1’と二次鉄筋R2の交差箇所の位置を特定する。交差箇所の位置特定処理の詳細については後述する。
S28では、制御ユニット126は、一次鉄筋R1’と二次鉄筋R2の交差箇所の位置が、基準位置から第2位置範囲内にあるか否かを判断する。ここでいう第2位置範囲は、一次鉄筋R1’と二次鉄筋R2の交差箇所の位置がその範囲内にあれば、鉄筋結束機2による結束作業が実行可能な範囲である。交差箇所の位置が第2位置範囲内にない場合(NOの場合)、処理はS24へ戻る。交差箇所の位置が第2位置範囲内にある場合(YESの場合)、処理はS30へ進む。
S30では、制御ユニット126は、鉄筋トレース制御を終了する。これによって、鉄筋結束ロボット100が、一次鉄筋R1’に沿った前進または後退を停止する。
S32では、制御ユニット126は、鉄筋結束処理を行う。鉄筋結束処理では、制御ユニット126は、昇降機構130を駆動して鉄筋結束機2を下降させて、一次鉄筋R1’と二次鉄筋R2の交差箇所に鉄筋結束機2をセットし、把持機構132を駆動して鉄筋結束機2による一次鉄筋R1’と二次鉄筋R2の結束作業を行う。その後、制御ユニット126は、昇降機構130を駆動して鉄筋結束機2を上昇させる。S32の後、処理はS34へ進む。
S34では、制御ユニット126は、S32で行った結束作業が正常に完了したか否かを判断する。結束作業が正常に完了していないと判断される場合(NOの場合)、処理はS32へ戻る。結束作業が正常に完了したと判断される場合(YESの場合)、処理はS36へ進む。
S36では、制御ユニット126は、一次鉄筋R1’についての結束作業が全て終了したか否かを判断する。まだ終了していないと判断される場合(NOの場合)、処理はS22へ戻る。S22からS36までの処理を繰り返し行うことによって、図23に示すように、鉄筋結束ロボット100は、一次鉄筋R1’に沿って移動しながら、一次鉄筋R1’と二次鉄筋R2の交差箇所の結束作業を繰り返し実行する。
図20に示すように、S36で、一次鉄筋R1’についての結束作業が全て終了したと判断されると(YESとなると)、処理はS38へ進む。
S38では、制御ユニット126は、全ての一次鉄筋R1について結束作業が終了したか否かを判断する。まだ終了していないと判断される場合(NOの場合)、処理はS40へ進む。
S40では、制御ユニット126は、結束作業の対象とする一次鉄筋R1’を、未だ結束作業が終了していない別の一次鉄筋R1に変更する。S40の後、処理はS2(図19参照)へ戻る。
S38で、全ての一次鉄筋R1について結束作業が終了したと判断される場合(YESの場合)、図19、図20の処理は終了する。
なお、図19、図20の処理において、鉄筋結束ロボット100が、一次鉄筋R1’と二次鉄筋R2の交差箇所の結束作業を繰り返し実行する際に、一次鉄筋R1’と二次鉄筋R2の交差箇所を1つとばしに結束してもよい。この場合、最終的に、隣接する交差箇所のうち少なくとも一方が結束されるように、鉄筋結束ロボット100が結束作業の対象とする交差箇所を選択してもよい。
(鉄筋トレース制御)
鉄筋結束ロボット100を移動させる際には、制御ユニット126は、右側クローラ192の進行速度vR(t)と、左側クローラ194の進行速度vL(t)をそれぞれ決定し、右側クローラ192の進行速度vR(t)に応じた回転速度で右側クローラモータ228を回転させるとともに、左側クローラ194の進行速度vL(t)に応じた回転速度で左側クローラモータ254を回転させる。図24に示すように、この場合に実現される、鉄筋結束ロボット100の前方への移動速度v(t)と、上下方向周りの回転の角速度ω(t)は、それぞれ以下の式で与えられる。
v(t)=(vR(t)+vL(t))/2 (1)
ω(t)=(vR(t)-vL(t))/2l (2)
ここで、2lは右側クローラ192と左側クローラ194の間の距離である。
図19、図20の処理で行っている鉄筋トレース制御では、鉄筋結束ロボット100の基準位置と基準角度が、一次鉄筋R1’の左右方向の位置と角度に近づいていくように、制御ユニット126は、vR(t)とvL(t)を決定する。具体的には、制御ユニット126は、vR(t)とvL(t)を、それぞれ以下の式で算出する。
vR(t)=vconst+Δv(t) (3)
vL(t)=vconst-Δv(t) (4)
ここで、vconstは一定値であり、Δv(t)は、鉄筋結束ロボット100の基準位置と基準角度を、一次鉄筋R1’の左右方向の位置と角度に近づけていくための補正量である。
上記の式(3)、(4)によってvR(t)とvL(t)を与えた場合、鉄筋結束ロボット100が実現する速度v(t)と角速度ω(t)は以下の式となる。
v(t)=vconst (5)
ω(t)=Δv(t)/l (6)
図24に示すように、一次鉄筋R1’の左右方向の位置(基準位置からのずれ量)をe(t)とし、一次鉄筋R1’の角度(基準角度からのずれ量)をθ(t)とした場合、制御ユニット126は、補正量Δv(t)を次式によって算出する。
Δv(t)=k1×e(t)+k2×e’(t)+k3×θ(t)+k4×θ’(t) (7)
ここで、e’(t)は、e(t)の時間微分値であり、θ’(t)はθ(t)の時間微分値であり、k1,k2,k3,k4は、いずれも正の定数である。
図24からも明らかなように、鉄筋結束ロボット100が速度vで前進する際に、角速度ω(t)(=Δv(t)/l)が与えられていると、鉄筋結束ロボット100の前進に伴って、e(t)、θ(t)はいずれもゼロに近づいていく。このため、上記の式(7)のように補正量Δv(t)を与えることによって、鉄筋結束ロボット100の基準位置と基準角度を、一次鉄筋R1’の左右方向の位置と角度に近付けていくことができる。
図25は、例として、鉄筋結束ロボット100の基準位置と一次鉄筋R1’の左右方向の位置の間に所定のずれ量が存在する場合の、鉄筋トレース制御によって鉄筋結束ロボット100が前方へ移動する際の軌道を示している。なお、図25-図27においては、d1[mm]は一次鉄筋R1’に沿った方向の位置を示しており、d2[mm]は一次鉄筋R1’に沿った方向に直交する方向の位置を示している。図25に示すように、鉄筋トレース制御を行うことによって、鉄筋結束ロボット100の基準位置と一次鉄筋R1’の左右方向の位置との間のずれ量が解消されて、鉄筋結束ロボット100は一次鉄筋R1’に沿って移動することができる。
図26は、別の例として、右側クローラ192が正常に動作し、左側クローラ194が滑りを生じる場合の、鉄筋結束ロボット100が前方へ移動する際の軌道を示している。左側クローラ194が滑りを生じる場合、左側クローラ194の実際の進行速度が遅くなるため、図26に示すように、鉄筋トレース制御を行わない場合には、鉄筋結束ロボット100は前方への移動に伴って一次鉄筋R1’から徐々に左側に逸れて行ってしまう。これとは異なり、鉄筋トレース制御を行う場合には、左側クローラ194が滑りを生じる場合であっても、鉄筋結束ロボット100の基準位置と基準角度を、一次鉄筋R1’の左右方向の位置と角度に近付けるように補正量Δv(t)が与えられるので、鉄筋結束ロボット100は一次鉄筋R1’から離れていくことがなく、一次鉄筋R1’に沿って前方へ移動することができる。
なお、上記の式(3)、(4)でvR(t)、vL(t)を与える場合、vR(t)、vL(t)はvconstを超える値となることがある。このため、右側クローラモータ228や左側クローラモータ254として、高回転数での動作が可能なものを用意する必要があり、右側クローラモータ228や左側クローラモータ254のサイズや重量の増大を招くおそれがある。
そこで、上記の式(3)、(4)の代わりに、以下のようにしてvR(t)、vL(t)を与えてもよい。すなわち、上記の式(7)によってΔvを算出した後、Δv≧0の場合には、
vR(t)=vconst (8)
vL(t)=vconst-2Δv(t) (9)
とし、Δv<0の場合には、
vR(t)=vconst+2Δv(t) (10)
vL(t)=vconst (11)
としてもよい。
上記の式(8)、(9)、(10)、(11)によってvR(t)、vL(t)を与える場合、vR(t)、vL(t)がvconstを超えることは無いので、右側クローラモータ228や左側クローラモータ254として、vconstでの回転が可能なものを用意すればよく、右側クローラモータ228や左側クローラモータ254のサイズや重量が増大することを抑制することができる。
上記の式(8)、(9)、(10)、(11)でvR(t)とvL(t)を与えた場合、鉄筋結束ロボット100が実現する速度v(t)と角速度ω(t)は、次の式となる。
v(t)=vconst-|Δv| (12)
ω(t)=Δv(t)/l (13)
すなわち、上記の式(8)、(9)、(10)、(11)でvR(t)とvL(t)を決定する場合、鉄筋結束ロボット100の前方への移動速度v(t)は、vconstよりも|Δv|だけ減少する。このため、仮に|Δv|がvconstよりも大きくなると、鉄筋結束ロボット100は前進せず、後退してしまう。
そこで、本実施例では、Δv(t)に次式のように上下限を設定する。
|Δv(t)|<k×vconst (14)
ここで、0<k≦1である。
図27に、式(3)、(4)でvR(t)、vL(t)を与える場合(図27では、増速+減速と表記)と、式(8)、(9)、(10)、(11)、(14)でvR(t)とvL(t)を与える場合(図27では、減速のみと表記)の、鉄筋結束ロボット100の軌道を示している。図27に示すように、式(8)、(9)、(10)、(11)、(14)でvR(t)とvL(t)を与える場合、式(14)のkの値を大きくするほど、鉄筋結束ロボット100の軌道は一次鉄筋R1’に速やかに近付いていく。しかしながら、kの値が大きくなり過ぎると、オーバーシュートが生じて、鉄筋結束ロボット100の軌道の収束が遅くなってしまう。このため、式(8)、(9)、(10)、(11)、(14)でvR(t)とvL(t)を与える場合には、例えば、k=0.8程度に設定することで、鉄筋結束ロボット100の軌道を一次鉄筋R1’に速やかに近づけることができる。
(サイドステップ処理)
図19のS2に示すサイドステップ処理では、制御ユニット126は、図28に示す処理を実行する。なお、以下の説明では、鉄筋結束ロボット100を基準として、右方向をX方向、前方向をY方向、上方向をZ方向とし、鉄筋結束ロボット100の基準位置をX0、Y0、Z0で表す。
S52では、制御ユニット126は、前側三次元距離センサ198から点群データを取得する。なお、以下の説明では、前側三次元距離センサ198から取得される点群データを、前側点群データともいう。
S54では、制御ユニット126は、前側点群データに含まれる点群の中から、一次鉄筋R1’や二次鉄筋R2に対応するZ方向の位置にある点群を抽出する。具体的には、制御ユニット126は、前側点群データに含まれる点群の中から、Z方向の位置が所定の鉄筋深さ範囲(例えば、右側クローラ192および左側クローラ194の下面のZ方向位置を上端とし、上端から一次鉄筋R1の直径と二次鉄筋R2の直径の和だけ下方のZ方向位置を下端とする範囲)内にある点群を抽出する。S52で取得される前側点群データには、一次鉄筋R1’や二次鉄筋R2に対応する点群や、一次鉄筋R1’や二次鉄筋R2よりも下方にある地面等に対応する点群が混在している。S54の処理を行うことによって、地面等に対応する点群を除外して、一次鉄筋R1’や二次鉄筋R2に対応する可能性が高い点群のみを抽出することができる。
S56では、制御ユニット126は、S54で抽出された点群をクラスタリングして、点群の個数が最大のクラスタを鉄筋クラスタとして特定し、鉄筋クラスタに含まれる点群を抽出する。点群のクラスタリングは、例えば、点と点の間の距離が所定値以下に含まれる場合に、それらの点が同じクラスタに含まれるように、点群に含まれる点と点を互いに関連付けていくことで行われる。
S58では、制御ユニット126は、S56で特定された鉄筋クラスタに含まれる点群の中から、所定の判定範囲内にある点群のみを抽出する。判定範囲は、例えば、X方向に関して、鉄筋結束ロボット100の基準位置X0から所定距離離れた位置までの範囲(例えば、ΔX0を一次鉄筋R1’の直径の1.5倍としたときに、X0+ΔX0からX0-ΔX0の範囲)が設定される。これによって、図29に示すように、鉄筋クラスタに含まれる点群PG1から、判定範囲内にある点群PG2のみが抽出される(図30参照)。なお、図29、図30、図33、図34、図35、図36、図38、図39においては、点群をハッチを付した領域で図示しており、点群を構成する個々の点を図示していないことに留意されたい。
図28に示すように、S60では、制御ユニット126は、S58で抽出された点群に関して、確認範囲内にある点群の個数が所定のしきい値以上であるか否かを判断する。図30に示すように、確認範囲DRは、例えば、X方向に関してはS58で使用した判定範囲と同じ範囲であり、Y方向に関しては所定の長さ(例えば1mm)を有する範囲である。図30に示すように、本実施例では、X方向の位置が異なる複数の確認範囲DRが設定されている。図28に示すように、S60において、確認範囲内の点群の個数がしきい値に満たない場合(NOの場合)、制御ユニット126は、鉄筋結束ロボット100の前部が一次鉄筋R1’上に位置していないと判断し、処理はS72へ進む。確認範囲内の点群の個数がしきい値以上の場合(YESの場合)、制御ユニット126は、鉄筋結束ロボット100の前部が一次鉄筋R1’上に位置していると判断し、処理はS62へ進む。
S62では、制御ユニット126は、後側三次元距離センサ200から点群データを取得する。なお、以下の説明では、後側三次元距離センサ200から取得される点群データを、後側点群データともいう。
S64では、S54と同様に、制御ユニット126は、後側点群データに含まれる点群の中から、Z方向の位置が所定の鉄筋深さ範囲内にある点群を抽出する。
S66では、S56と同様に、制御ユニット126は、S64で抽出された点群をクラスタリングして、点群の個数が最大のクラスタを鉄筋クラスタとして特定し、鉄筋クラスタに含まれる点群を抽出する。
S68では、S58と同様に、制御ユニット126は、S56で特定された鉄筋クラスタに含まれる点群の中から、所定の判定範囲内にある点群のみを抽出する。
S70では、S60と同様に、制御ユニット126は、S58で抽出された点群に関して、確認範囲内にある点群の個数が所定のしきい値以上であるか否かを判断する。確認範囲内の点群の個数がしきい値に満たない場合(NOの場合)、制御ユニット126は、鉄筋結束ロボット100の後部が一次鉄筋R1’上に位置していないと判断し、処理はS72へ進む。
S72では、制御ユニット126は、サイドステッパ196を駆動して、鉄筋結束ロボット100を右方向または左方向へ移動させる。S72の後、処理はS52へ戻る。
S70において、確認範囲内の点群の個数がしきい値以上の場合(YESの場合)、制御ユニット126は、鉄筋結束ロボット100の前部が一次鉄筋R1’上に位置していると判断する。この場合、鉄筋結束ロボット100の前部と後部の両方が、一次鉄筋R1’上に位置しており、鉄筋結束ロボット100を左右方向へ移動させる必要はないから、制御ユニット126は、図28の処理を終了する。
図28の処理によれば、制御ユニット126は、演算負荷が比較的小さい処理によって、鉄筋結束ロボット100のサイドステップ移動が完了したか否かを判断することができる。
(制御ユニット126が行う一次鉄筋モデルの生成処理)
図19のS4、S12、図20のS24に示す一次鉄筋モデル生成処理では、制御ユニット126は、図31、図32に示す処理を実行する。
図31に示すように、S82では、制御ユニット126は、前側三次元距離センサ198から前側点群データを取得する。
S84では、制御ユニット126は、前側点群データに含まれる点群の中から、Z方向の位置が所定の鉄筋深さ範囲内にある点群を抽出する。
S86では、制御ユニット126は、S84で抽出された点群をクラスタリングして、点群の個数が最大のクラスタを鉄筋クラスタとして特定し、鉄筋クラスタに含まれる点群を抽出する。
S88では、制御ユニット126は、S86で特定された鉄筋クラスタに含まれる点群に関して、X方向の位置の最大値Xmaxと最小値Xminをそれぞれ特定する。
S90では、制御ユニット126は、S88で特定されたXmaxとXminの差が所定値(例えば、一次鉄筋R1’の直径の3倍)以上であるか否かを判断する。XmaxとXminの差が所定値に満たない場合(NOの場合)、制御ユニット126は、S86で特定された鉄筋クラスタに、二次鉄筋R2に対応する点群が含まれていないと判断して、処理はS102に進む。XmaxとXminの差が所定値以上の場合(YESの場合)、制御ユニット126は、S86で特定された鉄筋クラスタに、二次鉄筋R2に対応する点群が含まれていると判断して、処理はS92に進む。
S92では、制御ユニット126は、S86で特定された鉄筋クラスタに含まれる点群のうち、X方向の位置がXmax近傍にあるものに関して、Y方向の位置の最大値Ymax1と最小値Ymin1をそれぞれ特定する。
S94では、制御ユニット126は、S86で特定された鉄筋クラスタに含まれる点群のうち、X方向の位置がXmin近傍にあるものに関して、Y方向の位置の最大値Ymax2と最小値Ymin2をそれぞれ特定する。
S96では、制御ユニット126は、S86で特定された鉄筋クラスタに含まれる点群の中から、所定の二次鉄筋候補範囲内にある点群のみを抽出する。二次鉄筋候補範囲は、例えば、X方向に関しては、XmaxからXminまでの範囲であり、かつY方向に関しては、Ymax1とYmax2のうち大きい方からYmin1とYmin2のうち小さい方までの範囲が設定される。これによって、図33に示すように、鉄筋クラスタに含まれる点群PG1から、二次鉄筋候補範囲内にある点群PG2のみが抽出される(図34参照)。
S98では、制御ユニット126は、S96で抽出された点群に基づいて、RANSAC(Random Sample Consensus)法によって、鉄筋結束ロボット100から見た二次鉄筋R2の位置および角度を直線でモデル化した二次鉄筋モデルを生成する。RANSAC法による鉄筋モデルの生成の詳細については後述する。これによって、図34に示すように、二次鉄筋候補範囲内にある点群PG2に基づいて、二次鉄筋モデルRM2が生成される。
S100では、制御ユニット126は、S86で特定された鉄筋クラスタに含まれる点群から、S98で生成された二次鉄筋モデルの近傍にある点群を除去して、それ以外の点群を抽出する。ここでいう二次鉄筋モデルの近傍にある点群とは、例えば、二次鉄筋モデルに直交する方向に関して、二次鉄筋モデルとの距離が所定値(例えば、二次鉄筋R2の直径の1倍)よりも小さい点群である。これによって、図35に示すように、鉄筋クラスタに含まれる点群PG1から、二次鉄筋モデルRM2の近傍にある点群を取り除いた点群PG3が抽出される(図36参照)。
S102では、制御ユニット126は、S100で抽出された点群(あるいは、S90でNOの場合には、S86で特定された鉄筋クラスタに含まれる点群)に基づいて、RANSAC法によって暫定的な一次鉄筋モデルを生成する。これによって、図36に示すように、点群PG3から、暫定的な一次鉄筋モデルTRM1が生成される。
S104では、制御ユニット126は、S100で抽出された点群のうち、S102において暫定的な一次鉄筋モデルTRM1の生成に使用された点群(すなわち、RANSAC法において外れ値とされなかった点群)を、一次鉄筋R1’の候補となる点群として抽出する。なお、S104で抽出された点群を、以下では前側一次鉄筋候補点群ともいう。
次いで、図32に示すように、S106では、制御ユニット126は、後側三次元距離センサ200から後側点群データを取得する。
後側点群データに関して実行されるS108からS128までの処理は、前側点群データに関して実行されるS84からS104までの処理と同様であるので、説明を省略する。S128で抽出された点群を、以下では後側一次鉄筋候補点群ともいう。
S130では、S104で得られた前側一次鉄筋候補点群と、S128で得られた後側一次鉄筋候補点群に基づいて、最小二乗法により、一次鉄筋モデルを生成する。S130で一次鉄筋モデルが生成されると、図28、図29の処理は終了する。
なお、S130の処理において、最小二乗法ではなく、RANSAC法によって、一次鉄筋モデルを生成してもよい。しかしながら、RANSAC法を用いる場合、前側一次鉄筋候補点群の個数と後側一次鉄筋候補点群の個数に差がある場合、個数が少ない方の一次鉄筋候補点群が外れ値として扱われて、一次鉄筋モデルの生成に使用されなくなるおそれがある。上記のように、最小二乗法により一次鉄筋モデルを生成することで、より正確な一次鉄筋モデルを得ることができる。
(制御ユニット126が行う交差箇所の位置特定処理)
図20のS26に示す交差箇所の位置特定処理では、制御ユニット126は、図37に示す処理を実行する。
S142では、制御ユニット126は、中央三次元距離センサ202から点群データを取得する。なお、以下の説明では、中央三次元距離センサ202から取得される点群データを、中央点群データともいう。
S144では、制御ユニット126は、中央点群データに含まれる点群の中から、Z方向の位置が所定の鉄筋深さ範囲内にある点群を抽出する。
S146では、制御ユニット126は、S144で抽出された点群をクラスタリングして、点群の個数が最大のクラスタを鉄筋クラスタとして特定し、鉄筋クラスタに含まれる点群を抽出する。
S148では、制御ユニット126は、S146で特定された鉄筋クラスタに含まれる点群から、S24(図20参照)で生成された一次鉄筋モデルの近傍にある点群を除去して、それ以外の点群を抽出する。ここでいう一次鉄筋モデルの近傍にある点群とは、例えば、一次鉄筋モデルに直交する方向に関して、一次鉄筋モデルとの距離が所定値(例えば、一次鉄筋R1’の直径の1倍)よりも小さい点群である。これによって、図38に示すように、鉄筋クラスタに含まれる点群PG1から、一次鉄筋モデルRM1の近傍にある点群を取り除いた点群PG2が抽出される(図39参照)。
S150では、制御ユニット126は、S148で抽出された点群の個数が所定値以上であるか否かを判断する。点群の個数が所定値に満たない場合(NOの場合)、制御ユニット126は、中央三次元距離センサ202の視野内に一次鉄筋R1’と二次鉄筋R2の交差箇所が存在しないと判断する。この場合、制御ユニット126が交差箇所の位置を特定することなく、図30の処理は終了する。S150において、点群の個数が所定値以上の場合(YESの場合)、処理はS152へ進む。
S152では、制御ユニット126は、S148で抽出された点群に基づいて、一次鉄筋R1’と二次鉄筋R2の交差箇所のY方向位置であるYcを特定する。例えば、Ycは、S148で抽出された点群のY方向位置の平均値Ymeanとして算出される。
S154では、制御ユニット126は、S24(図20参照)で生成された一次鉄筋モデルと、S152で特定されたYcに基づいて、一次鉄筋R1’と二次鉄筋R2の交差箇所のX方向位置であるXcを特定する。例えば、Xcは、一次鉄筋モデル上において、Y方向位置がYcとなる点のX方向位置として特定される。これによって、図39に示すように、一次鉄筋R1’と二次鉄筋R2の交差箇所の位置Xc,Ycが特定される。S154の後、図30の処理は終了する。
なお、S152の処理において、Y方向位置の平均値Ymeanを算出する代わりに、最小二乗法により、Ycを特定してもよい。この場合、一次鉄筋モデルが表す直線に対して直交する直線を二次鉄筋モデルと仮定し、S150で抽出された点群に基づいて、一次鉄筋モデルと二次鉄筋モデルの交点を最小二乗法により求めることで、Ycを特定することができる。しかしながら、上記のように、Y方向位置の平均値Ymeanを算出してYcを特定することで、制御ユニット126が行う処理の負荷を軽減することができる。
(RANSAC法による鉄筋モデルの生成)
本実施例では、制御ユニット126は、以下で説明するように、ロバスト推定アルゴリズムの1つであるRANSAC法を用いて、外れ値を含む点群から、正しい直線モデル(暫定的な一次鉄筋モデル、二次鉄筋モデル等)の推定を行う。
まず、図40に示すように、制御ユニット126は、点群の中から、2個以上の点(例えばP1、P2)をモデル化基準点としてランダムに抽出する。
次いで、図41に示すように、制御ユニット126は、抽出されたモデル化基準点P1,P2に基づいて、例えば最小二乗法により、直線モデル(例えばL1)を推定する。そして、制御ユニット126は、推定された直線モデルL1を元の点群に適用したときの外れ値の個数を計数する。図41に示す例では、元の点群において、推定された直線モデルL1からの距離が所定値以上である点(図中、ハッチが掛かっている範囲にある点)の個数が、外れ値の個数として計数される。
そして、図42に示すように、制御ユニット126は、上記したモデル化基準点のランダムな抽出と直線モデルの推定を繰り返し行い、正しい直線モデルの候補を選定する。図42に示す例では、直線モデルL1,L2は外れ値の個数が多いため候補から除外され、直線モデルL3,L4は外れ値の個数が少ないため候補として選定される。そして、制御ユニット126は、正しい直線モデルの候補L3,L4の中から、元の点群(外れ値を除く)に対する誤差が少ないものを、正しい直線モデルとして推定する。図42に示す例では、直線モデルL3,L4のうち、外れ値を除いた元の点群に対する誤差が少ない直線モデルL4が、正しい直線モデルとして推定される。
(変形例)
上記の実施例では、鉄筋結束機2にリール10が取り付けられており、鉄筋結束機2がリール10から供給されるワイヤWを用いて鉄筋Rを結束する構成について説明した。これとは異なり、大型のリール(図示せず)を備えるワイヤ供給ユニット(図示せず)を鉄筋結束ロボット100の搬送ユニット106に搭載して、鉄筋結束機2がワイヤ供給ユニットから供給されるワイヤWを用いて鉄筋Rを結束する構成としてもよい。
上記の実施例では、鉄筋結束ロボット100に、市販の鉄筋結束機2(例えば、株式会社マキタが販売しているTR180D)が着脱可能に取り付けられる場合について説明した。これとは異なり、鉄筋結束ロボット100は、専用の鉄筋結束ユニット(図示せず)が着脱不能に取り付けられた構成としてもよい。この場合、鉄筋結束ユニットは、操作ユニット104と一体的に構成されていてもよい。
上記の実施例において、鉄筋結束ロボット100に(例えば、電源ユニット102のハウジング110に)、鉄筋結束ロボット100の動作をユーザが緊急停止させるための緊急停止ボタン(図示せず)を設けてもよい。この場合、緊急停止ボタンがユーザによって押されると、制御ユニット126は、右側クローラモータ228、左側クローラモータ254、ステッパモータ279、昇降モータ148を停止し、アクチュエータ180をオフにする。ユーザが、危険を取り除いた後に、再び動作実行ボタン122を押すと、制御ユニット126は、まずステッパモータ279を駆動して前側クランク機構276と後側クランク機構277をゼロ点位置まで戻し、かつ昇降モータ148を駆動して昇降機構130を上限位置まで戻す。その後、制御ユニット126は、通常通りの制御を行って、鉄筋結束ロボット100を動作させる。なお、緊急停止ボタンは、緊急時にユーザが押しやすいように、鉄筋結束ロボット100の外周近傍、例えば前後方向や左右方向の端部近傍に設けてもよい。また、緊急停止ボタンは、複数個設けてもよい。
上記の実施例において、鉄筋結束ロボット100に(例えば、電源ユニット102のハウジング110に)、鉄筋結束ロボット100の動作状態を表示する動作表示インジケータ(図示せず)を設けてもよい。この場合、動作表示インジケータは、鉄筋結束ロボット100が行う結束作業の状態をユーザに表示してもよい。結束作業の状態は、例えば、一次鉄筋R1と二次鉄筋R2の交差箇所を全て結束する状態や、一次鉄筋R1と二次鉄筋R2の交差箇所を1つとばしに結束する状態を含んでいてもよい。あるいは、動作表示インジケータは、鉄筋結束ロボット100が異常停止した状態をユーザに表示してもよい。動作表示インジケータは、例えば1またはそれ以上の発光部の発光色、点滅のパターン、またはこれらの組み合わせによって、鉄筋結束ロボット100の動作状態を表示してもよい。なお、動作表示インジケータをハウジング110に設ける場合、遠くからでも見やすいように、動作表示インジケータを高い位置に配置してもよい。
上記の実施例では、鉄筋結束ロボット100の搬送ユニット106が、鉄筋結束ロボット100を前後方向に移動させることが可能な縦方向移動機構として、右側クローラ192および左側クローラ194を備える構成について説明した。これとは異なり、鉄筋結束ロボット100の搬送ユニット106は、他の種類の縦方向移動機構を備えていてもよい。
上記の実施例では、鉄筋結束ロボット100の搬送ユニット106が、鉄筋結束ロボット100を左右方向に移動させることが可能な横方向移動機構として、サイドステッパ196を備える構成について説明した。これとは異なり、鉄筋結束ロボット100の搬送ユニット106は、他の種類の横方向移動機構を備えていてもよい。
以上のように、1つまたはそれ以上の実施形態において、鉄筋結束ロボット100は、複数の一次鉄筋R1と、複数の一次鉄筋R1と交差する複数の二次鉄筋R2について、複数の一次鉄筋R1が延びる方向に複数の一次鉄筋R1と複数の二次鉄筋R2の上を移動する動作と、複数の一次鉄筋R1と複数の二次鉄筋R2が交差する箇所を結束する動作を交互に繰り返し実行可能である。鉄筋結束ロボット100は、鉄筋結束機2(鉄筋結束ユニットの例)と、鉄筋結束機2を搬送する搬送ユニット106と、搬送ユニット106の動作を制御する制御ユニット126を備えている。搬送ユニット106は、鉄筋結束ロボット100を前後方向に移動させることが可能な右側クローラ192および左側クローラ194(縦方向移動機構の例)と、第1視野内の被写体の三次元位置を点群により表した中央点群データ(第1点群データの例)を出力する中央三次元距離センサ202(第1三次元距離センサの例)を備えている。制御ユニット126は、中央点群データに含まれる点群から、上下方向の位置が所定の鉄筋深さ範囲内にある点群を抽出する第1鉄筋抽出処理(図37のS142、S144参照)と、第1鉄筋抽出処理により抽出された点群に基づいて、一次鉄筋R1と二次鉄筋R2が交差する位置を特定する交差位置特定処理(図37のS152、S154参照)を実行可能に構成されている。
1つまたはそれ以上の実施形態において、交差位置特定処理は、一次鉄筋R1を直線によりモデル化した一次鉄筋モデルを生成する一次鉄筋モデル生成処理(図32のS130参照)と、第1鉄筋抽出処理により抽出された点群から、一次鉄筋モデルの近傍の範囲に含まれない点群をさらに抽出する一次鉄筋除外処理(図37のS148参照)と、一次鉄筋除外処理によって抽出された点群と、一次鉄筋モデルに基づいて、一次鉄筋R1と二次鉄筋R2が交差する位置を算出する交差位置算出処理(図37のS152、S154参照)を含んでいる。
1つまたはそれ以上の実施形態において、交差位置算出処理は、一次鉄筋除外処理によって抽出された点群の前後方向の位置の平均値を算出する平均値算出処理(図37のS152参照)と、平均値算出処理で算出された平均値を一次鉄筋モデルに適用する平均値適用処理(図37のS154参照)を含んでいる。
1つまたはそれ以上の実施形態において、搬送ユニット106は、第1視野よりも前方の第2視野内の被写体の三次元位置を点群により表した前側点群データ(第2点群データの例)を出力する前側三次元距離センサ198(第2三次元距離センサの例)と、第1視野よりも後方の第3視野内の被写体の三次元位置を点群により表した後側点群データ(第3点群データの例)を出力する後側三次元距離センサ200(第3三次元距離センサの例)をさらに備えている。制御ユニット126は、前側点群データに含まれる点群から、上下方向の位置が鉄筋深さ範囲内にある点群を抽出する第2鉄筋抽出処理(図31のS82、S84参照)と、後側点群データに含まれる点群から、上下方向の位置が鉄筋深さ範囲内にある点群を抽出する第3鉄筋抽出処理(図32のS106、S108参照)をさらに実行可能に構成されている。一次鉄筋モデル生成処理において、一次鉄筋モデルは、第2鉄筋抽出処理によって抽出された点群と、第3鉄筋抽出処理によって抽出された点群に基づいて生成される(図32のS130参照)。
1つまたはそれ以上の実施形態において、前側三次元距離センサ198と後側三次元距離センサ200は、下向きに配置されている。
1つまたはそれ以上の実施形態において、制御ユニット126は、第1鉄筋抽出処理によって抽出された点群から、最大のクラスタに含まれる点群をさらに抽出するクラスタ抽出処理(図37のS146参照)をさらに実行可能に構成されている。交差位置特定処理は、クラスタ抽出処理により抽出された点群に基づく(図37のS152、S154参照)。
1つまたはそれ以上の実施形態において、中央三次元距離センサ202は、鉄筋結束ロボット100の左右方向の中央から左右方向の一方にオフセットして配置されており、左右方向の他方に向けて斜め下向きに配置されている。