(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023092695
(43)【公開日】2023-07-04
(54)【発明の名称】ロボット、並びにその制御方法及び制御プログラム
(51)【国際特許分類】
B25J 13/00 20060101AFI20230627BHJP
B25J 5/00 20060101ALI20230627BHJP
【FI】
B25J13/00 Z
B25J5/00 Z
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2021207859
(22)【出願日】2021-12-22
(71)【出願人】
【識別番号】315014671
【氏名又は名称】東京ロボティクス株式会社
(74)【代理人】
【識別番号】100098899
【弁理士】
【氏名又は名称】飯塚 信市
(74)【代理人】
【識別番号】100163865
【弁理士】
【氏名又は名称】飯塚 健
(72)【発明者】
【氏名】加藤 健太
(72)【発明者】
【氏名】大島 彩佳里
(72)【発明者】
【氏名】松尾 雄希
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS34
3C707BS11
3C707BS27
3C707CS08
3C707CS09
3C707CV07
3C707CY01
3C707HS27
3C707HT11
3C707KS03
3C707KS04
3C707KS10
3C707KT01
3C707KT04
3C707LU09
3C707LV14
3C707MT04
3C707WA16
3C707WL04
(57)【要約】
【課題】移動基体を扉のオモテ面側に移動させることができない状況において扉を閉める。
【解決手段】移動基体と、移動基体から延び姿勢を変更可能に駆動される腕部と、腕部の先端に設けられ扉に引っ掛けられる又は扉を保持するツールと、移動基体及び腕部の駆動を制御するコントローラと、を備え、扉は、閉状態において移動基体と対向する面となるオモテ面と、その背面のウラ面とを有し、コントローラは、開放された扉のウラ面側に移動基体が位置する状態において、移動基体及び/又は腕部を駆動して、ツールを扉に引っ掛ける又はツールに扉を保持させ、移動基体及び/又は腕部を駆動して、扉に引っ掛けられた又は扉を保持したツールを扉を閉じる方向に移動させて扉の開放角度を小さくし、移動基体及び/又は腕部を駆動して、開放角度が小さくされた扉のオモテ面を押す、ロボットが提供される。
【選択図】
図5
【特許請求の範囲】
【請求項1】
移動基体と、
前記移動基体から延び、姿勢を変更可能に駆動される腕部と、
前記腕部の先端に設けられ、扉に引っ掛けられる又は扉を保持するツールと、
前記移動基体及び前記腕部の駆動を制御するコントローラと、を備え、
前記扉は、閉状態において前記移動基体と対向する面となるオモテ面と、その背面のウラ面とを有し、
前記コントローラは、
開放された前記扉の前記ウラ面側に前記移動基体が位置する状態において、前記移動基体及び/又は前記腕部を駆動して、前記ツールを前記扉に引っ掛ける又は前記ツールに前記扉を保持させ、
前記移動基体及び/又は前記腕部を駆動して、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させて前記扉の開放角度を小さくし、
前記移動基体及び/又は前記腕部を駆動して、前記開放角度が小さくされた前記扉の前記オモテ面を押す、
ロボット。
【請求項2】
前記コントローラは、前記扉に引っ掛けられた又は前記扉を保持した前記ツールが前記扉から離れたときに、前記扉を閉じる方向への前記ツールの移動を停止し、前記扉の前記オモテ面を押す動作を開始する、
請求項1に記載のロボット。
【請求項3】
前記コントローラは、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させた後、前記扉の前記オモテ面を押すための前記腕部の目標位置を設定し、前記腕部を前記目標位置に移動させる前記腕部の軌道を計画できるか否かを試み、前記軌道を計画できた場合に前記扉のオモテ面を押す動作を開始する、
請求項1に記載のロボット。
【請求項4】
前記コントローラは、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させた後、前記扉の前記オモテ面を押すための前記腕部の目標位置を設定し、前記腕部の目標位置に基づいて前記移動基体の目標位置を設定し、前記移動基体の目標位置まで前記移動基体を移動させる経路の計画を試み、前記経路を計画できた場合に前記扉のオモテ面を押す動作を開始する、
請求項1に記載のロボット。
【請求項5】
移動基体と、前記移動基体から延び姿勢を変更可能に駆動される腕部と、前記腕部の先端に設けられ扉に引っ掛けられる又は扉を保持するツールと、を備えたロボットの制御方法であって、
前記扉は、閉状態において前記移動基体と対向する面となるオモテ面と、その背面のウラ面とを有し、
制御方法は、
開放された前記扉の前記ウラ面側に前記移動基体が位置する状態において、前記移動基体及び/又は前記腕部を駆動して、前記ツールを前記扉に引っ掛ける又は前記ツールに前記扉を保持させるステップと、
前記移動基体及び/又は前記腕部を駆動して、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させて前記扉の開放角度を小さくするステップと、
前記移動基体及び/又は前記腕部を駆動して、前記開放角度が小さくされた前記扉の前記オモテ面を押すステップと、
を備えた、制御方法。
【請求項6】
移動基体と、前記移動基体から延び姿勢を変更可能に駆動される腕部と、前記腕部の先端に設けられ扉に引っ掛けられる又は扉を保持するツールと、を備えたロボットの制御プログラムであって、
前記扉は、閉状態において前記移動基体と対向する面となるオモテ面と、その背面のウラ面とを有し、
制御プログラムは、
開放された前記扉の前記ウラ面側に前記移動基体が位置する状態において、前記移動基体及び/又は前記腕部を駆動して、前記ツールを前記扉に引っ掛ける又は前記ツールに前記扉を保持させるステップと、
前記移動基体及び/又は前記腕部を駆動して、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させて前記扉の開放角度を小さくするステップと、
前記移動基体及び/又は前記腕部を駆動して、前記開放角度が小さくされた前記扉の前記オモテ面を押すステップと、
を備えた、制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ロボット、並びにロボットの制御方法及び制御プログラムに関する。
【背景技術】
【0002】
ロボット技術の進展に伴い、移動型のロボットを様々な環境で活用することが検討されている。環境によっては、ロボットが扉を開閉する必要があり、扉を開閉することが可能なロボットが提案されている(非特許文献1)。
【0003】
非特許文献1に開示されたロボット(モバイルマニピュレータ)は、扉を開けるフェーズと、扉を閉めるフェーズと、を実行可能に構成されている。扉を閉めるフェーズでは、ロボットは、扉のオモテ面側に回り込んで扉をオモテ面側から押すことにより、扉を閉める。ここで、扉のオモテ面とは、扉の有する2つの面のうち、扉が閉じた状態にあるときにロボットと対向する面を意味し、ウラ面とは、オモテ面の背面を意味する。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Nagatani, Keiji, and S. Yuta. "Designing strategy and implementation of mobile manipulator control system for opening door." Proceedings of IEEE International Conference on Robotics and Automation. Vol. 3. IEEE, 1996.
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、幅の狭い通路等のロボットが通過可能な範囲が限られる環境において通過を妨げるように開いた状態の扉が存在すると、扉のオモテ面側にロボットの移動基体を回り込ませることができない場合がある。この場合、非特許文献1に開示されたロボットでは、扉をオモテ面から押すことができないため、扉を閉めることができない。
【0006】
本発明は、上述の技術的課題に解決するためになされたものであり、その目的とするところは、移動基体を扉のオモテ面側に移動させることができない状況において扉を閉めることにある。
【課題を解決するための手段】
【0007】
上述の技術的課題は、以下の構成を有するロボット等により解決することができる。
【0008】
すなわち、本発明に係るロボットは、移動基体と、前記移動基体から延び姿勢を変更可能に駆動される腕部と、前記腕部の先端に設けられ扉に引っ掛けられる又は扉を保持するツールと、前記移動基体及び前記腕部の駆動を制御するコントローラと、を備え、前記扉は、閉状態において前記移動基体と対向する面となるオモテ面と、その背面のウラ面とを有し、前記コントローラは、開放された前記扉の前記ウラ面側に前記移動基体が位置する状態において、前記移動基体及び/又は前記腕部を駆動して、前記ツールを前記扉に引っ掛ける又は前記ツールに前記扉を保持させ、前記移動基体及び/又は前記腕部を駆動して、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させて前記扉の開放角度を小さくし、前記移動基体及び/又は前記腕部を駆動して、前記開放角度が小さくされた前記扉の前記オモテ面を押す。
【0009】
このような構成によれば、扉は、開放角度が小さくされた後に押され、扉枠に達するまで回転する。すなわち、2段階の動作により扉が閉じられる。したがって、移動基体を扉のオモテ面側に移動させることができない状況において効率的に扉を閉じることができる。
【0010】
前記コントローラは、前記扉に引っ掛けられた又は前記扉を保持した前記ツールが前記扉から離れたときに、前記扉を閉じる方向への前記ツールの移動を停止し、前記扉のオモテ面を押す動作を開始してもよい。
【0011】
このような構成によれば、開閉角度を小さくする動作中にツールが扉から離れてから扉のオモテ面を押す動作に移行するまでの時間が短くなる。したがって、効率よく扉を閉じることができる。
【0012】
前記コントローラは、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させた後、前記扉の前記オモテ面を押すための前記腕部の目標位置を設定し、前記腕部を前記目標位置に移動させる前記腕部の軌道を計画できるか否かを試み、前記軌道を計画できた場合に前記扉のオモテ面を押す動作を開始し、前記軌道を計画できない場合には、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させて前記扉の開放角度を小さくする動作を再度行ってもよい。
【0013】
このような構成によれば、扉の開放角度は、扉のオモテ面を押すための腕部の目標位置に腕部を移動させることができる程度まで小さくなる。したがって、扉をより確実に閉じることができる。
【0014】
前記コントローラは、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させた後、前記扉の前記オモテ面を押すための前記腕部の目標位置を設定し、前記腕部の目標位置に基づいて前記移動基体の目標位置を設定し、前記移動基体の目標位置まで前記移動基体を移動させる経路の計画を試み、前記経路を計画できた場合に前記扉のオモテ面を押す動作を開始し、前記経路を計画できない場合には、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させて前記扉の開放角度を小さくする動作を再度行う、
してもよい。
【0015】
このような構成によれば、扉の開放角度は、扉のオモテ面を押すための移動基体の目標位置に移動基体を移動させることができる程度まで小さくなる。したがって、扉をより確実に閉じることができる。
【0016】
別の側面から見た本発明は、移動基体と、前記移動基体から延び姿勢を変更可能に駆動される腕部と、前記腕部の先端に設けられ扉に引っ掛けられる又は扉を保持するツールと、を備えたロボットの制御方法であって、前記扉は、閉状態において前記移動基体と対向する面となるオモテ面と、その背面のウラ面とを有し、制御方法は、開放された前記扉の前記ウラ面側に前記移動基体が位置する状態において、前記移動基体及び/又は前記腕部を駆動して、前記ツールを前記扉に引っ掛ける又は前記ツールに前記扉を保持させるステップと、前記移動基体及び/又は前記腕部を駆動して、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させて前記扉の開放角度を小さくするステップと、前記移動基体及び/又は前記腕部を駆動して、前記開放角度が小さくされた前記扉の前記オモテ面を押すステップと、備えている。
【0017】
別の側面から見た本発明は、移動基体と、前記移動基体から延び姿勢を変更可能に駆動される腕部と、前記腕部の先端に設けられ扉に引っ掛けられる又は扉を保持するツールと、を備えたロボットの制御プログラムであって、前記扉は、閉状態において前記移動基体と対向する面となるオモテ面と、その背面のウラ面とを有し、制御プログラムは、開放された前記扉の前記ウラ面側に前記移動基体が位置する状態において、前記移動基体及び/又は前記腕部を駆動して、前記ツールを前記扉に引っ掛ける又は前記ツールに前記扉を保持させるステップと、前記移動基体及び/又は前記腕部を駆動して、前記扉に引っ掛けられた又は前記扉を保持した前記ツールを前記扉を閉じる方向に移動させて前記扉の開放角度を小さくするステップと、前記移動基体及び/又は前記腕部を駆動して、前記開放角度が小さくされた前記扉のオモテ面を押すステップと、を備えている。
【0018】
このような構成によれば、扉は、開放角度が小さくされた後に押され、扉枠に達するまで回転する。すなわち、2段階の動作により扉が閉じられる。したがって、移動基体を扉のオモテ面側に移動させることができない状況において効率的に扉を閉じることができる。
【発明の効果】
【0019】
本発明によれば、扉は、開放角度が小さくされた後に押され、扉枠に達するまで回転する。したがって、移動基体を扉のオモテ面側に移動させることができない状況において扉を閉じることができる。
【図面の簡単な説明】
【0020】
【
図1】(a)は、本発明の実施形態に係るロボットの側面図であり、(b)は、当該ロボットの上面図である。
【
図2】
図1に示すロボットが活用される環境の例を示す平面図である。
【
図4】扉の位置及び姿勢の認識について説明するための図であり、(a)は、扉の周辺を示す平面図であり、(b)は、扉をウラ面の側から見た図である。
【
図5】本発明の第1実施形態に係る閉扉動作処理のフローチャートである。
【
図6】扉引き動作処理の詳細フローチャートである。
【
図7】(a)及び(b)は、ロボットによる扉引き動作を説明するための図であり、
図2に対応して示す。
【
図8】(a)は、扉のエッジの軌道を説明するための図であり、(b)は、本発明の第1実施形態におけるツールの軌道を説明するための図である。
【
図9】
図7(a)に示される平面図に、扉のエッジの軌道を併記した図である。
【
図10】扉押し動作処理の詳細フローチャートである。
【
図11】(a)及び(b)は、ロボットによる扉押し動作を説明するための図であり、
図2に対応して示す。
【
図12】本発明の第2実施形態におけるツールの軌道を説明するための図であり、
図8に対応して示す。
【
図13】(a)及び(b)は、本発明の第2実施形態の変形例におけるツールの軌道を説明するための図であり、
図8に対応して示す。
【
図14】本発明の第3実施形態におけるツールの軌道を説明するための図であり、
図8に対応して示す。
【
図15】本発明の第4実施形態におけるツールの軌道を説明するための図であり、
図8に対応して示す。
【
図16】本発明の第5実施形態における扉引き動作処理の詳細フローチャートである。
【
図17】(a)及び(b)は、本発明の第5実施形態においてツールを扉のエッジに引っ掛ける動作を説明するための図であり、
図4に対応して示す。
【
図18】本発明の第6実施形態における扉引き動作処理の詳細フローチャートである。
【
図19】(a)及び(b)は、本発明の第6実施形態においてツールを扉のエッジに引っ掛ける動作を説明するための図であり、
図4に対応して示す。
【
図20】本発明の第8実施形態に係る閉扉動作処理のフローチャートである。
【
図21】ツールの引っ掛け場所の変形例を示す図であり、
図4に対応して示す。
【発明を実施するための形態】
【0021】
以下、本発明の好適な実施の形態について添付の図面を参照しつつ詳細に説明する。
【0022】
(1.第1実施形態)
まず、第1実施形態として、本発明をロボットに適用した例について説明する。
図1から
図3は、第1実施形態に係るロボット100の構成例を説明する図である。ロボット100は、扉のある環境での活用が想定される。
【0023】
図1は、ロボット100の構成を説明する図であって、
図1(a)は、主にロボット100の外観例を示す側面図であり、
図1(b)は、主にロボット100の外観例を示す平面図である。図示するように、ロボット100は、略人型の形状を有しており、移動台車11と、移動台車11に支持された脚部12と、脚部12に支持された胴体部13と、胴体部13に支持された頭部40及び腕部50と、を備えている。
【0024】
移動台車11は、ロボット100が置かれた面(床面)を移動可能に形成されている。具体的には、移動台車11は、不図示の複数の駆動輪を備えている。複数の駆動輪が回転すると、移動台車11が移動する。移動台車は、例えば、全方向に移動することができるように構成された全方位移動台車であり、駆動輪は、例えばオムニホイールである。
【0025】
以下において、「上方」及び「下方」は、それぞれ、移動台車11が水平な面に配置されている状態を基準とした鉛直方向上側及び鉛直方向下側を意味する。
【0026】
脚部12は、略人型のロボット100において、人の脚に相当する構成として、移動台車11から上方に延びている。胴体部13は、略人型のロボット100において、人の胴体に相当する構成として、脚部12の上方に配置されており、略鉛直に延びる軸A1を中心に回転可能に脚部12に設けられている。
【0027】
以下において、移動台車11、脚部12及び胴体部13を合わせて「移動基体10」とも称する。
【0028】
頭部40は、略人型のロボット100において、人の頭に相当する構成として、胴体部13の上方に配置されており、胴体部13に揺動可能且つ回転可能に設けられている。頭部40は、人が見た際に顔として認識できる正面を有している。
【0029】
頭部40は、ロボット100の周辺を撮影して撮影画像を生成する画像生成手段41を備えている。画像生成手段41には、例えば、モノクロカメラ、カラーカメラ、IRカメラ、3Dカメラ及びRGBDカメラを用いることができる。
【0030】
腕部50は、略人型のロボット100において、人の腕に相当する構成として、胴体部13から延びており、姿勢を変更可能である。具体的には、腕部50は、胴体部13に設けられた第1関節部51と、第1関節部51から延びる第1リンク部52と、第1リンク部52の先端に設けられた第2関節部53と、第2関節部53から延びる第2リンク部54と、第2リンク部54の先端に設けられた第3関節部55と、を備えている。第3関節部55は、「腕部50の先端」とも称される。
【0031】
第1関節部51は、略水平な軸A2を中心に胴体部13に対して回転可能である。第1関節部51が回転すると、第1リンク部52、第2関節部53、第2リンク部54及び第3関節部55が軸A2を中心に回転する。
図1(a)及び(b)では、第1リンク部52を略水平に保持した状態が示されている。
【0032】
第1リンク部52は、略水平に保持された状態(
図1に示す状態)において第1関節部51を通る略鉛直な軸A3を中心に胴体部13に対して揺動可能である。第2リンク部54は、第1リンク部52が略水平に保持された状態(
図1に示す状態)において第2関節部53を通る略鉛直な軸A4を中心に第1リンク部52に対して揺動可能である。換言すれば、腕部50は、姿勢を変化可能である。
【0033】
このようなロボット100を扉のある環境において活用する場合、開放された扉によりロボット100の通過が妨げられることがある。
図2は、扉のある環境の例を示す平面図である。
【0034】
図2に示される環境では、一対の壁1a,1bが互いに間隔を空けて設けられており、壁1a,1bの間に通路1が形成されている。一方の壁1aには、扉2が略鉛直に延びる回転軸ADを中心に回転可能に設けられている。扉2を開放した状態では、扉2と他方の壁1bとの間隔がロボット100の移動台車11よりも狭く、扉2によりロボット100の通行が妨げられている。
【0035】
図2に示される状態では、扉2のオモテ面2aの側にロボット100を移動させることができない。そこで、ロボット100は、扉2のウラ面2bの側から扉2の開放角度αを小さくすることができるように構成されている。ここで、扉2のオモテ面2aとは、扉2の有する2つの大面積面(2a、2b)のうち、扉が閉じた状態にあるときにロボット100と対向する面を意味し、ウラ面2bとは、オモテ面2aの背面を意味する。
【0036】
図1及び
図2に示すように、ロボット100は、腕部50の第3関節部55に設けられたツール60を更に備えている。ツール60は、第1リンク部52が略水平に保持された状態(
図1に示す状態)において第3関節部55を通る略鉛直な軸A5を中心に第2リンク部54に対して揺動可能である。
【0037】
ツール60は、略L字状に形成されており、扉2のエッジに引っ掛け可能である。隅部61が扉2のエッジに近接するようにツール60を移動させることにより、ツール60が扉2のエッジに引っ掛けられる。
【0038】
図3は、ロボット100のブロック図である。
図3に示すように、ロボット100は、台車駆動手段71と、胴体部駆動手段73と、頭部駆動手段74と、腕部駆動手段75と、ツール駆動手段76と、コントローラ80と、を備える。
【0039】
台車駆動手段71は、移動台車11における不図示の駆動輪を回転させる。台車駆動手段71は、例えば、移動台車11に搭載された一又は複数のモータである。胴体部駆動手段73は、脚部12に対して胴体部13を回転させる。胴体部駆動手段73は、例えば、脚部12に搭載された一又は複数のモータである。頭部駆動手段74は、胴体部13に対して頭部40を揺動させると共に回転させる。頭部駆動手段74は、例えば、胴体部13に搭載された一又は複数のモータである。
【0040】
腕部駆動手段75は、腕部50の姿勢を変化させる。腕部駆動手段75は、例えば、胴体部13に搭載され胴体部13に対して第1関節部51を回転させる一又は複数のモータと、第1関節部51に搭載され胴体部13に対して第1リンク部52を揺動させる一又は複数のモータと、第2関節部53に搭載され第1リンク部52に対して第2リンク部54を揺動させる一又は複数のモータと、を含む。
【0041】
ツール駆動手段76は、腕部50の第2リンク部54に対してツール60を揺動させる。ツール駆動手段76は、例えば、腕部50の第3関節部55に搭載された一又は複数のモータである。
【0042】
コントローラ80は、台車駆動手段71、胴体部駆動手段73、頭部駆動手段74、腕部駆動手段75及びツール駆動手段76の駆動を制御する。コントローラ80は、周辺環境認識部81、動作決定部82及び信号出力部83等の機能部を有する。
【0043】
コントローラ80は、例えば、プロセッサとしての中央演算装置(CPU)、記憶媒体としての読み出し専用メモリ(ROM)およびランダムアクセスメモリ(RAM)、入出力インタフェース(I/Oインタフェース)等がバスを介して接続されて構成される情報処理装置である。ROMには、周辺環境認識部81、動作決定部82及び信号出力部83の機能を実行するためのプログラム(制御プログラム)が格納されている。すなわち、コントローラ80は、ROMに格納されたプログラムを実行することによって、周辺環境認識部81、動作決定部82及び信号出力部83等の各機能部の機能を実現するように構成される。
【0044】
なお、コントローラ80を構成するプロセッサおよび記憶媒体として上述した構成は例示であって、これらに加えて、或いは代えて、GPU、フラッシュメモリ、ハードディスク、ストレージ等を含んでもよい。また、上述の各機能部の機能は、必ずしもコントローラ80のみによって実現される必要はなく、機能部毎に適宜選択された複数のコントローラがそれぞれ、或いは協調することによって実現されるように構成されてもよい。
【0045】
コントローラ80の各機能部の機能について以下説明する。
【0046】
周辺環境認識部81は、ロボット100の周辺環境を認識する。具体的には、周辺環境認識部81は、画像生成手段41により生成された撮影画像の情報をロボット100の周辺環境の情報として取得し、取得した情報に基づいて、ロボット100の周辺環境を認識する。撮影画像の情報は、例えば、輝度情報、RGB値、3次元点群である。周辺環境認識部81は、画像生成手段41により生成された撮影画像に扉2(
図2参照)が写っている場合には、扉2がロボット100の周辺にあると認識すると共に、扉2の位置及び姿勢を認識する。
【0047】
図4は、扉2の位置及び姿勢の認識について説明するための図であり、
図4(a)は、扉2の周辺を示す平面図であり、
図4(b)は、扉2をウラ面2bの側から見た図である。同図から明らかな通り、本実施形態では、扉2の位置及び姿勢の認識にマーカー2cを用いる。マーカー2cは、例えば、ArUcoマーカー及びPitagマーカー等である。マーカー2cは、扉2のウラ面2bに設置される。周辺環境認識部81は、画像生成手段41により生成された撮影画像に写ったマーカー2cに基づいて、扉2の位置及び姿勢を認識する。
【0048】
なお、扉2の撮影画像の情報と、扉2における代表点の特徴量と、から代表点の位置及び姿勢を算出し、扉2の位置及び姿勢を認識してもよい。代表点の位置及び姿勢の算出には、テンプレートマッチング、及びPoint Set Registration等を用いることができる。
【0049】
また、扉2の多くは平板状であることから、3次元点群情報を用いて平面検出を行いその平面部の中心を扉2の位置として算出し、平面の法線方向から扉2の姿勢を算出してもよい。扉2の多くはウラ面2bが長方形であることから、矩形認識等を行い扉2の位置及び姿勢を算出してもよい。SSD(Single Shot Multibox Detector)及びYoLo(You Only Look Once)等の深層学習(Deep Learning)を用いて、様々な扉画像を学習させて扉2の位置及び姿勢を検出してもよい。
【0050】
図3に戻り、動作決定部82は、周辺環境認識部81により認識されたロボット100の周辺環境に基づいて、移動台車11、胴体部13、頭部40、腕部50及びツール60の動作を決定する。具体的には、動作決定部82は、扉2がロボット100の周辺にあると周辺環境認識部81が認識した場合には、認識された扉2の位置及び姿勢に基づいて、開放された扉2のウラ面2bの側に移動基体10が位置するか否かを判定する。動作決定部82は、開放された扉2のウラ面2bの側に移動基体10が位置すると判定した場合には、扉2を引いて扉2の開放角度αを小さくしその後扉2を押して扉2を閉じるように移動台車11、胴体部13、頭部40、腕部50及びツール60を動作させることを決定する。
【0051】
信号出力部83は、動作決定部82により決定された動作に基づいて、台車駆動手段71、胴体部駆動手段73、頭部駆動手段74、腕部駆動手段75及びツール駆動手段76を駆動する制御信号を出力する。台車駆動手段71、胴体部駆動手段73、頭部駆動手段74、腕部駆動手段75及びツール駆動手段76が制御信号に応じて駆動されると、移動台車11、胴体部13、頭部40、腕部50及びツール60は、動作決定部82により決定された動作を行う。
【0052】
図5は、扉2を閉じる動作の処理(以下、「閉扉動作処理」とも称する)のフローチャートである。同図から明らかな通り、閉扉動作処理が開始すると、コントローラ80は、ロボット100の周辺環境を認識する周辺環境認識処理を行う(S11)。周辺環境認識処理(S11)の後、コントローラ80は、扉2がロボット100の周辺にあるか否かを判定する(S12)。扉2がロボット100の周辺にある場合には(S12YES)、コントローラ80は、扉2の位置及び姿勢を認識する扉位置姿勢認識処理を行う(S13)。扉2がロボット100の周辺にない場合には(S12NO)、閉扉動作処理は終了する。
【0053】
扉位置姿勢認識処理(S13)では、コントローラ80は、画像生成手段41により生成された撮影画像に写ったマーカー2cに基づいて、扉2の位置及び姿勢を認識する。
【0054】
扉位置姿勢認識処理(S13)の後、コントローラ80は、認識された扉2の位置及び姿勢に基づいて、開放された扉2のウラ面2bの側に移動基体10が位置するか否かを判定する処理を行う(S14)。開放された扉2のウラ面2bの側に移動基体10が位置する場合には(S14YES)、扉2を引いて扉2の開放角度αを小さくする扉引き動作処理が行われる(S15)。開放された扉2のウラ面2bの側に移動台車11が位置しない場合には(S14NO)、閉扉動作処理は終了する。
【0055】
図6は、扉引き動作処理(S15)の詳細フローチャートである。
図7は、ロボット100による扉引き動作を説明するための図であり、
図2に対応して示す。
図6から明らかな通り、扉引き動作処理が開始すると、コントローラ80は、ツール60を扉2のエッジに引っ掛けるためのツール目標位置姿勢の情報を取得する処理を行う(S51)。ツール目標位置姿勢の情報は、ユーザーによりマーカー2cの座標系で予め表現されており、不図示の記憶部に記憶されている。
図4において、ツール目標位置姿勢が二点鎖線により示されている。動作決定部82は、マーカー2cの座標系で表現されたツール目標位置姿勢の情報を記憶部から読み出して取得する。
【0056】
ツール目標位置姿勢の情報は、ユーザーによりマーカー2cの座標系で予め表現された形態に限られない。例えば、認識した扉2の位置及び姿勢と、一般的な扉厚又はユーザー入力によって得られる扉厚と、に基づいて扉2のエッジ(突き当て面)の姿勢を推定し、ツール目標位置姿勢の情報を取得してもよい。
【0057】
ツール目標位置姿勢情報取得処理(S51)の後、コントローラ80は、ツール60を移動させてツール60を扉2のエッジに引っ掛ける処理を行う(S52)。具体的には、コントローラ80は、ツール60がツール目標位置に移動しツール60の姿勢がツール目標姿勢となるように移動台車11、胴体部13、腕部50及びツール60を駆動する。これにより、
図7(a)に示すように、ツール60が扉2に引っ掛けられる。
【0058】
図6に戻り、ツール引っ掛け処理(S52)の後、コントローラ80は、扉2を閉じる方向にツール60を移動させる処理を行う(S53)。具体的には、コントローラ80は、ツール60が扉2を閉じる方向に移動するように移動台車11、胴体部駆動手段73、腕部50及びツール60を駆動する。これにより、
図7(b)に示すように、ツール60が扉2を閉じる方向に移動する。ツール60は扉2に引っ掛けられているため、扉2は、ツール60に追随して閉じる方向に回転する。したがって、移動基体10を扉2のオモテ面2aの側に移動させることなく扉2の開放角度αを小さくすることができる。
【0059】
図8(a)は、扉2のエッジの軌道を説明するための図であり、
図8(b)は、扉2を閉じる方向に移動するツール60の軌道を説明するための図である。扉2が閉まるときには、扉2のエッジの軌道は、
図8(a)に2点鎖線で示すように回転軸ADを中心とする円弧となる。ツール60を用いて扉2を閉じる方向に回転させるためには、ツール60の軌道が回転軸ADを中心とする円弧となるようにツール60を移動させる必要がある。
【0060】
そこで、本実施形態では、扉2の幅と開放角度αに基づいて円弧軌道を算出し、算出された円弧軌道をツール60の目標軌道として設定しツール60を移動させる。そのため、ツール60は、
図8(b)に太鎖線矢印で示すように扉2のエッジの軌道に沿って移動する。したがって、ツール60を扉2のエッジに引っ掛けた状態でツール60を移動させることができ、扉2の開放角度αを小さくすることができる。
【0061】
扉2の幅の情報は、不図示の記憶部から読み出して取得されてもよいし、マーカー2cの認識により取得されてもよい。開放角度αの情報は、マーカー2cの認識により取得可能である。
【0062】
図9は、
図7(a)に示される平面図に、扉2のエッジの軌道を併記した図である。同図から明らかなように、移動基体10は、扉2が通過する領域に入っている。そのため、移動基体10を移動させずに腕部50のみを駆動してツール60を移動させると、移動基体10と扉2とが干渉することになる。
【0063】
このような理由から、扉2を閉じる方向にツール60を移動させる処理(S53)では、移動台車11を移動させることが好ましい。この場合には、
図7(b)に示すように、移動基体10は、扉2の回転に伴って扉2の通過領域から出る。したがって、移動基体10と扉2との干渉を防ぐことができ、扉2の開放角度αをより小さくすることができる。
【0064】
図8に戻り、設定された目標軌道に従って目標軌道の終点Eまでツール60を移動させると、扉2を閉じる方向にツール60を移動させる処理(S53)が終了する。以上により、扉引き動作は完了する。
【0065】
図5に戻り、扉引き動作処理(S15)が完了すると、扉2を押して扉2を閉じる扉押し動作処理が行われる(S16)。
【0066】
図10は、扉押し動作処理(S16)の詳細フローチャートである。
図11は、ロボット100による扉押し動作を説明するための図であり、
図2に対応して示す。
図10から明らかな通り、扉押し動作処理が開始すると、コントローラ80は、腕部50の先端を扉2のオモテ面2aに接触させるための腕部目標位置姿勢の情報を取得する処理を行う(S61)。腕部目標位置姿勢の情報は、マーカー2cの座標系で予め表現されており、不図示の記憶部に記憶されている。コントローラ80は、マーカー2cの座標系で表現された腕部目標位置姿勢の情報を記憶部から読み出して取得する。
【0067】
腕部目標位置姿勢情報取得処理(S61)の後、腕部50の先端を扉2のオモテ面2aに接触させる処理が行われる(S62)。具体的には、コントローラ80は、腕部50が腕部目標位置に移動し腕部50の姿勢が腕部目標姿勢となるように移動台車11、胴体部13、腕部50及びツール60駆動する。これにより、
図11(a)に示すように、腕部50の先端が扉2のオモテ面2aに接触する。
【0068】
図10に戻り、腕部50の先端を扉2のオモテ面2aに接触させる処理(S62)の後、コントローラ80は、扉2を閉じる方向に腕部50の先端を移動させる処理を行う(S63)。具体的には、コントローラ80は、腕部50の先端が扉2を閉じる方向に移動するように移動台車11、胴体部駆動手段73、腕部50及びツール60を駆動する。これにより、
図11(b)に示すように、腕部50の先端が扉2を閉じる方向に移動する。腕部50の先端は扉2のオモテ面2aに接触しているため、扉2は、腕部50の先端に押され、扉枠3に達するまで回転する。したがって、扉2を閉じることができる。
【0069】
図10に戻り、扉2を閉じる方向に腕部50の先端を移動させる処理(S63)が完了すると、扉押し動作処理(S16)は終了する。
【0070】
図11に示される例では、移動基体10を扉2のオモテ面2aの側に移動させることなく扉2を押している。扉引き動作処理(S15)の後、扉2のオモテ面2aの側に移動基体10を移動させることができる場合には、扉2のオモテ面2aの側に移動基体10を移動させて扉2を押してもよい。
【0071】
扉押し動作では、移動台車11、胴体部13及び腕部50のうちのいずれか1つのみを駆動して扉2を押してもよいし、移動台車11、胴体部13及び腕部50のうちの2つ、又は全部を駆動して扉2を押してもよい。つまり、移動台車11、胴体部13及び腕部50のうちの少なくとも1つを駆動して扉2を押せばよい。
【0072】
図5に戻り、扉押し動作処理(S16)が完了すると、扉2を閉じる動作の処理が終了する。
【0073】
(2.第2実施形態)
次に、本発明の第2実施形態について説明する。なお、以下では、第1実施形態と同一の構成については同一の符号が付与される。
【0074】
上記の第1実施形態では、閉扉方向へのツール移動処理(
図6におけるS53)において、扉2の幅と開放角度αに基づいて円弧軌道を算出し、算出された円弧軌道をツール60の目標軌道として設定する。そのため、扉2の幅及び開放角度αの情報が必要になると共に、目標軌道の設定処理が複雑になるおそれがある。
【0075】
そこで、本実施形態では、コントローラ80は、ツール60と扉2との間に仮想的な機械的インピーダンス(慣性、減衰係数及び剛性等)を設定しツール60の位置とツール60から扉2に加えられる力とを制御するインピーダンス制御によって腕部50を駆動する。
【0076】
インピーダンス制御は、例えば腕部50を柔らかく動かす制御である。具体的には、外力が腕部50に加わらないときには、ツール60が目標軌道に沿って移動するように腕部50が駆動される。外力が腕部50に加わるときには、ツール60が目標軌道から外れることになっても、その外力を小さくするように腕部50が駆動される。インピーダンス制御により駆動される腕部50の軌道を、
図12を参照して説明する。
【0077】
図12は、インピーダンス制御により駆動される腕部50の軌道の図であり、
図8に対応して示す。
図12では、扉2のエッジから扉2が閉まる方向に延びる直線軌道(太鎖線矢印参照)をツール60の目標軌道として設定した例が示されている。このような目標軌道でインピーダンス制御により腕部50が駆動されると、ツール60は、ツール60の目標軌道と扉2のエッジの軌道とが交差する点までは、扉2から反力を受けながら移動する。つまり、ツール60は、
図12に太鎖線矢印で示すように扉2のエッジの軌道に沿って移動する。
【0078】
このように、閉扉方向へのツール移動処理(
図6におけるS53)において、インピーダンス制御により腕部50を駆動することにより、扉2の幅と開放角度αに基づいて円弧軌道を算出することなく、ツール60を扉2のエッジの軌道に沿って移動させることができる。したがって、動作決定部82における処理を簡素化しつつ扉2の開放角度αを小さくすることができる。
【0079】
図12に示す例では、ツール60の目標軌道は、扉枠3と略平行に設定されているが、ツール60の目標軌道は、扉枠3と平行でなくてもよい。例えば、
図13(a)に示すように、ツール60の目標軌道は、扉枠3に近づくように扉枠3に対して傾斜して設定されてもよい。また、
図13(b)に示すように、ツール60の目標軌道は、扉枠3から離れるように扉枠3に対して傾斜して設定されてもよい。
【0080】
(3.第3実施形態)
次に、本発明の第3実施形態について説明する。なお、以下では、第1実施形態及び第2実施形態と同一の構成については同一の符号が付与される。
【0081】
上記の第2実施形態では、閉扉方向へのツール移動処理(
図6におけるS53)において、扉2のエッジから扉2が閉まる方向に延びる直線軌道(太鎖線矢印参照)をツール60の目標軌道として設定している(
図12及び
図13参照)。ツール60の目標軌道が
図13(b)に示すように扉枠3から離れるように扉枠3に対して傾斜して設定されると、扉2のエッジの軌道に沿ったツール60の移動距離が短くなる。そのため、扉2の開放角度αを1回の扉引き動作で十分に小さくすることができなくなるおそれがある。扉2の開放角度αを1回の扉引き動作で十分に小さくするためには、ツール60の目標軌道を精度よく設定しツール60を扉2のエッジの軌道に沿ってより長く移動させる必要があり、高度な技術が目標される。
【0082】
そこで、本実施形態では、
図14に太鎖線矢印で示すように、扉2の回転軸ADに向けてツール60から扉2に力Fを作用させるように腕部50をインピーダンス制御により駆動する。そのため、ツール60は、扉2が回転しても扉2の回転軸ADに向けて扉2に押付けられる。したがって、ツール60の目標軌道を精度よく設定することなくツール60を扉2のエッジの軌道に沿ってより長く移動させることができ、扉2の開放角度αを容易に小さくすることができる。
【0083】
(4.第4実施形態)
次に、本発明の第4実施形態について説明する。なお、以下では、第1実施形態及び第2実施形態と同一の構成については同一の符号が付与される。
【0084】
図15は、本実施形態におけるツール60の目標軌道を説明するための図である。
図15に示すように、本実施形態におけるコントローラ80は、第2実施形態と同様に、扉2が閉まる方向に扉2から延びる直線軌道をツール60の目標軌道として設定し、インピーダンス制御により腕部50を駆動する。ただし、第2実施形態(
図12及び
図13(a)及び(b)参照)では、目標軌道は、扉2のエッジすなわちツール60を通るように延びるのに対し、本実施形態では、
図15に示すように、目標軌道は、扉2のエッジすなわちツール60よりも扉2の回転軸ADの側を通るように延びている。そのため、扉2のエッジの軌道に沿ったツール60の移動距離は、目標軌道が扉2のエッジすなわちツール60を通る場合と比較して長くなる。したがって、ツール60の目標軌道を精度よく設定することなくツール60を扉2のエッジの軌道に沿ってより長く移動させることができ、扉2の開放角度αを容易に小さくすることができる。
【0085】
(5.第5実施形態)
次に、本発明の第5実施形態について説明する。なお、以下では、第1実施形態と同一の構成については同一の符号が付与される。
【0086】
上記の第1実施形態における扉引き動作処理(
図5のS15及び
図6に示すフローチャート)では、ツール目標位置姿勢の情報を取得し、ツール60をツール目標位置に移動させツール60の姿勢をツール目標姿勢とすることで、ツール60を扉2のエッジに引っ掛ける。本実施形態では、扉2のエッジへのツール60引っ掛けにインピーダンス制御を用いる。
【0087】
図16は、本実施形態における扉引き動作処理(
図5のS15)の詳細フローチャートである。
図17は、ツール60を扉2のエッジに引っ掛ける動作の処理を説明するための図であり、
図4に対応して示す。
図16から明らかな通り、扉引き動作処理が開始すると、動作決定部82は、ツール60を扉2のエッジに引っ掛けるためのツール準備位置の情報を取得する処理を行う(S551)。
【0088】
図17(a)及び(b)に示すように、ツール準備位置は、鉛直方向に見て扉2の回転軸ADを中心とする放射方向に扉2のエッジから離れた位置である。ツール準備位置の情報は、ユーザーによりマーカー2cの座標系で予め表現されており、不図示の記憶部に記憶されている。コントローラ80は、マーカー2cの座標系で表現されたツール準備位置の情報を記憶部から読み出して取得する。
【0089】
図16に戻って、ツール準備位置情報取得処理(S551)の後、ツール60を移動させてツール60を扉2のエッジに引っ掛ける処理が行われる(S552)。具体的には、コントローラ80は、ツール60をツール準備位置に移動させる。その後、ツール60を通り扉2の回転軸ADに向かう軌道をツール60の目標軌道として腕部50をインピーダンス制御により駆動する。これにより、ツール60は扉2のエッジに向かって移動し、扉2のエッジに接触する。その後、ツール60の移動が停止し、ツール60を扉2のエッジに引っ掛ける処理(S552)が完了する。
【0090】
ツール60が扉2のエッジに接触したか否かは、ツール60に加わる外力に基づいて判定される。具体的には、ツール60に加わる外力が閾値未満のときにはツール60が扉2のエッジに接触していないと判定し、閾値に達したときにツール60が扉2のエッジに接触したと判定する。外力の検出には、例えば、力覚センサ及びトルクセンサ等を用いることができる。
【0091】
ツール60を扉2に引っ掛ける処理(S552)の後、扉2を閉じる方向にツール60を移動させる処理が行われる(S553)。扉2を閉じる方向にツール60を移動させる処理(S553)は、第1~第4実施形態における処理とほぼ同じであるため、その詳細については省略する。
【0092】
(6.第6実施形態)
次に、本発明の第6実施形態について説明する。なお、以下では、第1実施形態と同一の構成については同一の符号が付与される。
【0093】
上記の第1実施形態における扉引き動作処理(
図5のS15及び
図6に示すフローチャート)では、マーカー2cの座標系で表現されたツール目標位置姿勢の情報を取得し、ツール60を扉2のエッジに引っ掛けている。
【0094】
本実施形態では、扉2のエッジ近傍を扉枠3の座標系の代表点2dとして認識し、代表点2dに基づいてツール目標位置を算出する。代表点2dとしては、例えば、扉2のエッジ近傍に設けたシールを用いることができる。
【0095】
図18は、本実施形態における扉引き動作処理(
図5のS15)の詳細フローチャートである。
図19は、ツール60を扉2のエッジに引っ掛ける動作の処理を説明するための図であり、
図4に対応して示す。
図18から明らかな通り、扉引き動作処理が開始すると、コントローラ80は、ツール60を扉2のエッジに引っ掛けるためのツール目標位置を算出する処理を行う(S651)。
【0096】
図19(a)及び(b)に示すように、ツール目標位置は、鉛直方向に見て扉2のエッジから離れる方向に代表点2dから離れた位置である。代表点2dに対するツール目標位置の情報は、ユーザーにより扉枠3の座標系で予め表現されており、不図示の記憶部に記憶されている。コントローラ80は、代表点2dに対するツール目標位置の情報を記憶部から読み出して取得すると共に、取得したツール目標位置の情報と認識した代表点2dの位置の情報とに基づいて、移動基体10に対するツール目標位置を算出する。
【0097】
ツール目標位置算出処理(S651)の後、コントローラ80は、ツール60を扉2のエッジに引っ掛けるためのツール目標姿勢の情報を取得する処理を行う(S652)。ツール60の目標姿勢の情報は、ユーザーにより扉枠3の座標系で予め表現されており、不図示の記憶部に記憶されている。コントローラ80は、扉枠3の座標系で表現されたツール目標姿勢の情報を記憶部から読み出して取得する
【0098】
ツール目標姿勢情報取得処理(S652)の後、ツール60を移動させてツール60を扉2のエッジに引っ掛ける処理が行われ(S653)、その後、扉2を閉じる方向にツール60を移動させる処理が行われる(S654)。ツール引っ掛け処理(S653)及び閉扉方向へのツール移動処理(S654)は、第1~第4実施形態における処理とほぼ同じであるため、その詳細については省略する。
【0099】
なお、本実施形態において、第5実施形態と同様に、扉2のエッジへのツール60引っ掛けにインピーダンス制御を用いてもよい。すなわち、ツール目標位置の算出に代えて、ツール60を扉2のエッジに引っ掛けるためのツール準備位置を算出し、算出したツール準備位置にツール60を移動させ、その後、腕部50をインピーダンス制御により駆動してツール60を扉2のエッジに引っ掛けてもよい。
【0100】
(7.第7実施形態)
次に、本発明の第7実施形態について説明する。なお、以下では、第1実施形態と同一の構成については同一の符号が付与される。
【0101】
第1実施形態では、
図5に示すように、扉引き動作処理(S15)の後、扉押し動作処理(S16)が行われる。扉引き動作処理は、
図12に示すように、設定された目標軌道に従って目標軌道の終点Eまでツール60を移動させると、終了する。
【0102】
しかしながら、ツール60は、扉引き動作において扉2のエッジから離れることがある。ツール60が扉2のエッジから離れると、ツール60が目標軌道に従って移動しても扉2は回転しない。つまり、ツール60が扉2のエッジから離れた後のツール60の移動は、扉2の回転に寄与しない。そのため、非効率である。
【0103】
そこで、本実施形態では、コントローラ80は、ツール60が扉2のエッジから離れたときに扉引き動作処理(
図5におけるS15)を終了し、扉押し動作処理(
図5におけるS16)を開始する。そのため、扉引き動作においてツール60が扉2のエッジから離れてから扉押し動作に移行するまでの時間が短くなる。したがって、効率よく扉2を閉じることができる。
【0104】
ツール60が扉2のエッジから離れたか否かは、ツール60に加えられる外力に基づいて判定可能である。具体的には、コントローラ80は、ツール60に加えられる外力が閾値以上であればツール60が扉2のエッジから離れていないと判定し、外力が閾値未満であればツール60が扉2のエッジから離れていると判定する。外力の検出には、例えば、力覚センサ、トルクセンサを用いることができる。
【0105】
本実施形態は、第2実施形態~第4実施形態のようにインピーダンス制御によって腕部50を駆動して扉2を閉じる方向に回転させる場合により好適である。
【0106】
(8.第8実施形態)
次に、本発明の第8実施形態について説明する。なお、以下では、第1実施形態と同一の構成については同一の符号が付与される。
【0107】
第1実施形態における扉押し動作では、
図11に示すように、扉引き動作後の扉2のオモテ面2aに腕部50の先端を接触させ、扉2を閉じる方向に扉2を押して扉2を閉じる。しかしながら、扉引き動作後の扉2の開放角度αの大きさによっては、扉2のオモテ面2aに腕部50の先端を接触させることが困難な場合がある。
【0108】
そこで、本実施形態では、コントローラ80は、扉引き動作後の扉2のオモテ面2aに腕部50の先端を接触させることができるか否かを判定し、接触させることができると判定した場合に、扉押し動作処理を開始する。以下、
図20を参照して、本実施形態に係る動作のフローを具体的に説明する。
【0109】
図20は、本実施形態に係る動作のフローチャートである。同図から明らかな通り、コントローラ80は、扉引き動作処理(S15)の後、扉2のオモテ面2aに腕部50の先端を接触させることができるか否かを判定する処理を行う。(S817)。扉2のオモテ面2aに腕部50の先端を接触させることができる場合には(S817YES)、扉押し動作処理(S16)が行われる。扉2のオモテ面2aに腕部50の先端を接触させることができない場合には(S817NO)、扉引き動作処理(S15)が再び行われる。
【0110】
扉2のオモテ面2aに腕部50の先端を接触させることができるか否かは、腕部50の軌道計画の結果に基づいて判定される。具体的には、コントローラ80は、まず、扉2のオモテ面2aを押すための腕部50の先端の目標位置を設定する。次に、腕部50の先端を目標位置に移動させる腕部50の軌道を計画できるか否かを試みる。軌道を計画できた場合には、扉2のオモテ面2aに腕部50の先端を接触させることができると判定し、軌道を計画できなかった場合には、扉2のオモテ面2aに腕部50の先端を接触させることができないと判定する。腕部50の軌道計画には、Rapidly exploring Random Tree(RRT)等を用いることができる。
【0111】
このように、本実施形態では、扉2のオモテ面2aに腕部50の先端を接触させることができない場合に、再び扉引き動作処理が行われる。そのため、扉2の開放角度αは、扉2のオモテ面2aに腕部50の先端を接触させることができるまで小さくなる。したがって、扉2をより確実に閉じることができる。
【0112】
(9.第9実施形態)
次に、本発明の第9実施形態について説明する。なお、以下では、第8実施形態と同一の構成については同一の符号が付与される。
【0113】
第8実施形態では、腕部50の軌道計画に基づいて、扉2のオモテ面2aに腕部50の先端を接触させることができるか否かを判定する。本実施形態では、移動基体10の経路計画に基づいて、扉2のオモテ面2aに腕部50の先端を接触させることができるか否かを判定する。
【0114】
具体的には、コントローラ80は、まず、扉2のオモテ面2aを押すための腕部50の先端の目標位置を設定する。次に、設定された目標位置から、事前に定めた距離、扉2から離れた位置を移動基体10の目標位置とする。次に、移動基体10の目標位置まで移動基体10を移動させる経路の計画を試みる。経路を計画できた場合には、移動基体10を移動させて扉2のオモテ面2aに腕部50の先端を接触させることができると判定し、軌道を計画できなかった場合には、扉2のオモテ面2aに腕部50の先端を接触させることができないと判定する。移動基体10の経路計画には、環境地図と、地図上の自己位置情報と、に基づいて、ダイクストラ法等を用いることができる。
【0115】
本実施形態においても、第8実施形態と同様に、扉2のオモテ面2aに腕部50の先端を接触させることができない場合に、再び扉引き動作処理が行われる。そのため、扉2の開放角度αは、扉2のオモテ面2aに腕部50の先端を接触させることができるまで小さくなる。したがって、扉2をより確実に閉じることができる。
【0116】
(10.変形例)
本発明は、様々に変更して実施することができる。
【0117】
(10.1 ツール引っ掛け場所の変形例)
上記実施形態では、ツール60を扉2のエッジに引っ掛けているが、ツール60を引っ掛ける場所は、扉2のエッジに限られない。例えば、
図21に示すように、扉2がドアノブ2eを有する場合には、ドアノブ2eにツール60を引っ掛けてもよい。
【0118】
図21は、ツール60を扉2のドアノブ2eに引っ掛けた状態を示す図であり、
図4に対応して示す。
図21に示すように、ツール60は、回転軸AD側からドアノブ2eに引っ掛けられる。このような場合においても、扉引き動作を行うことができ、扉2の開放角度αを小さくすることができる。
【0119】
ツール60を扉2のドアノブ2eに引っ掛けた場合において、第3実施形態のようにインピーダンス制御により腕部50を駆動するときには、扉2の回転軸ADから離れる方向にツール60から扉2に力Fを作用させることにより、ツール60は、扉2が回転しても扉2のドアノブ2eに押付けられる。したがって、ツール60の目標軌道を精度よく設定することなくツール60を扉2のエッジの軌道に沿ってより長く移動させることができ、扉2の開放角度αを容易に小さくすることができる。
【0120】
ツール60を引っ掛ける場所は、扉2のエッジ及びドアノブ2eに限られず、扉2のオモテ面2aにおける中心付近及び扉2の突起等に引っ掛けてもよい。つまり、ツール60は、扉2に引っ掛けられればよい。
【0121】
(10.2 ツールの変形例)
ツール60は、扉2に引っ掛けられる形態に限られない。ツール60としてグリッパ又はハンドを用い、扉2のエッジやドアノブ2eをつかんで扉2を保持してもよい。また、ツール60として磁石又は電磁石を用い、磁力により扉2を保持してもよい。ツール60として真空発生器に接続されたノズルを用い、真空吸着により扉2を保持してもよい。
【0122】
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。また、上記の実施形態は、矛盾が生じない範囲で適宜組み合わせ可能である。
【産業上の利用可能性】
【0123】
本発明は、少なくともロボット等を製造する産業において利用可能である。
【符号の説明】
【0124】
100 ロボット
2 扉
2a オモテ面
2b ウラ面
10 移動基体
11 移動台車
12 脚部
13 胴体部
40 頭部
41 画像生成手段
50 腕部
51 第1関節部
52 第1リンク部
53 第2関節部
54 第2リンク部
55 第3関節部
60 ツール
61 隅部
71 台車駆動手段
73 胴体部駆動手段
74 頭部駆動手段
75 腕部駆動手段
76 ツール駆動手段
80 コントローラ
81 周辺環境認識部
82 動作決定部
83 信号出力部
AD 扉の回転軸
F 力
α 開放角度