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

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

▶ カシオ計算機株式会社の特許一覧

特許7275518ロボット制御装置、ロボット、ロボット制御方法およびプログラム
<>
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図1
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図2
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図3
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図4
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図5
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図6
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図7
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図8
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図9
  • 特許-ロボット制御装置、ロボット、ロボット制御方法およびプログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-05-10
(45)【発行日】2023-05-18
(54)【発明の名称】ロボット制御装置、ロボット、ロボット制御方法およびプログラム
(51)【国際特許分類】
   B25J 13/00 20060101AFI20230511BHJP
   B25J 19/06 20060101ALI20230511BHJP
   A63H 11/00 20060101ALI20230511BHJP
【FI】
B25J13/00 Z
B25J19/06
A63H11/00 Z
【請求項の数】 13
(21)【出願番号】P 2018187039
(22)【出願日】2018-10-02
(65)【公開番号】P2020055066
(43)【公開日】2020-04-09
【審査請求日】2021-09-17
【前置審査】
(73)【特許権者】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(72)【発明者】
【氏名】前田 茉紀
【審査官】松浦 陽
(56)【参考文献】
【文献】特開2018-051701(JP,A)
【文献】特開2017-061026(JP,A)
【文献】国際公開第2017/199619(WO,A1)
【文献】特開2006-088276(JP,A)
【文献】特開2018-144147(JP,A)
【文献】特開2009-205226(JP,A)
【文献】特開2013-097339(JP,A)
【文献】特開2005-335001(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
A63H 11/00
(57)【特許請求の範囲】
【請求項1】
可動部を駆動して所定動作を実行するように構成されたロボットを制御するための制御装置であって、
前記ロボットと当該ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得する位置情報取得手段と、
前記取得された位置情報に基づいて、前記障害物に前記可動部を接触させずに前記所定動作を実行することができる確率を表す安全率を算出する安全率算出手段と、
前記安全率算出手段により算出された安全率が基準値以上であるか否かを前記所定動作ごとに判定することで、前記障害物に前記可動部を接触させずに前記所定動作を実行することができるか否かを判定する判定手段と、
前記判定手段により前記障害物に前記可動部を接触させずに前記所定動作を実行することができないと判定した場合には、前記所定動作の一部を変更した動作計画を生成する動作計画生成手段と、
前記動作計画生成手段が生成した前記動作計画に基づいて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御する制御手段と、を備える、
ことを特徴とするロボット制御装置。
【請求項2】
前記動作計画生成手段は、前記所定動作の一部を変更した変更後の動作計画を複数生成し、
前記安全率算出手段は、前記変更後の動作計画ごとに前記安全率を算出し、
当該ロボット制御装置は、前記変更後の動作計画ごとに、前記変更後の動作計画で規定される動作が前記所定動作と適合する比率を表す適合率を算出する適合率算出手段をさらに備え、
前記制御手段は、算出した前記安全率と前記適合率とに基づいて、複数生成された前記変更後の動作計画から実行の基準となる動作計画を決定し、決定した前記動作計画に基づいて前記所定動作を実行させるように前記ロボットを制御する、
ことを特徴とする請求項1に記載のロボット制御装置。
【請求項3】
前記位置情報と前記安全率との関係を表す環境地図情報を取得する環境地図情報取得手段と、
前記ロボットの位置を推定する位置推定手段と、をさらに備え、
前記安全率算出手段は、前記環境地図情報取得手段が取得した前記環境地図情報と、前記位置推定手段が推定した前記ロボットの位置と、に基づいて前記安全率を算出する、
ことを特徴とする請求項1又は2に記載のロボット制御装置。
【請求項4】
可動部を駆動して所定動作を実行するように構成されたロボットを制御するための制御装置であって、
前記ロボットと当該ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得する位置情報取得手段と、
前記取得された位置情報に応じて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御する制御手段と、を備え、
前記可動部は第1可動部と第2可動部とを含み、
前記制御手段は、前記所定動作として、前記第1可動部を駆動する第1所定動作、及び、前記第2可動部を駆動する第2所定動作をそれぞれ実行したと仮定した場合に、前記第2可動部が前記障害物に接触する可能性が、前記第1可動部が前記障害物に接触する可能性よりも低く、かつ、前記第1所定動作の意味に前記第2所定動作の意味が整合するときには、前記第2所定動作を実行させるように、前記ロボットを制御する、
ことを特徴とするロボット制御装置。
【請求項5】
前記制御手段は、前記所定動作として、前記第1所定動作及び前記第2所定動作をそれぞれ実行したと仮定した場合に、前記第2所定動作の意味が前記第1所定動作の意味と整合しないときには、前記障害物への前記第1可動部の接触を回避しながら前記第1所定動作を実行させるように、前記ロボットを制御することを特徴とする、
請求項4に記載のロボット制御装置。
【請求項6】
前記位置情報に基づいて、前記障害物に前記可動部を接触させずに前記所定動作を実行することができないと判定した場合には、前記所定動作の一部を変更した動作計画を生成する動作計画生成手段を更に備えることを特徴とする請求項4又は5に記載のロボット制御装置。
【請求項7】
前記位置情報に基づいて、前記障害物に前記可動部を接触させずに前記所定動作を実行することができる確率を表す安全率を算出する安全率算出手段を更に備え、
前記動作計画生成手段は、前記安全率算出手段により算出された安全率が基準値以上であるか否かを前記所定動作ごとに判定することで、前記障害物に前記可動部を接触させずに前記所定動作を実行することができるか否かを判定することを特徴とする請求項6に記載のロボット制御装置。
【請求項8】
前記動作計画生成手段は、前記所定動作の一部を変更した変更後の動作計画を複数生成し、
前記安全率算出手段は、前記変更後の動作計画ごとに前記安全率を算出し、
当該ロボット制御装置は、前記変更後の動作計画ごとに、前記変更後の動作計画で規定される動作が前記所定動作と適合する比率を表す適合率を算出する適合率算出手段をさらに備え、
前記制御手段は、算出した前記安全率と前記適合率とに基づいて、複数生成された前記変更後の動作計画から実行の基準となる動作計画を決定し、決定した前記動作計画に基づいて前記所定動作を実行させるように前記ロボットを制御する、
ことを特徴とする請求項に記載のロボット制御装置。
【請求項9】
請求項1から8のいずれか1項に記載のロボット制御装置を備える、
ロボット。
【請求項10】
可動部を駆動して所定動作を実行するように構成されたロボットを制御するロボット制御装置が行うロボット制御方法であって、
前記ロボットと当該ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得し、
前記取得された位置情報に基づいて、前記障害物に前記可動部を接触させずに前記所定動作を実行することができる確率を表す安全率を算出し、
前記算出された前記安全率が基準値以上であるか否かを前記所定動作ごとに判定することで、前記障害物に前記可動部を接触させずに前記所定動作を実行することができるか否かを判定し、
前記障害物に前記可動部を接触させずに前記所定動作を実行することができないと判定した場合には、前記所定動作の一部を変更した動作計画を生成し、
前記生成された動作計画に基づいて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御する、
ことを特徴とするロボット制御方法。
【請求項11】
第1可動部と第2可動部とを含む可動部を駆動して所定動作を実行するように構成されたロボットを制御するロボット制御装置が行うロボット制御方法であって、
前記ロボットと当該ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得し、
当該取得した位置情報に応じて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御し、
前記所定動作として、前記第1可動部を駆動する第1所定動作、及び、前記第2可動部を駆動する第2所定動作をそれぞれ実行したと仮定した場合に、前記第2可動部が前記障害物に接触する可能性が、前記第1可動部が前記障害物に接触する可能性よりも低く、かつ、前記第1所定動作の意味に前記第2所定動作の意味が整合するときには、前記第2所定動作を実行させるように、前記ロボットを制御する、
ことを特徴とするロボット制御方法。
【請求項12】
可動部を駆動して所定動作を実行するように構成されたロボットを制御するための制御装置が有するコンピュータが実行するプログラムであって、
前記ロボットと前記ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得し、
前記取得された位置情報に基づいて、前記障害物に前記可動部を接触させずに前記所定動作を実行することができる確率を表す安全率を算出し、
前記算出された前記安全率が基準値以上であるか否かを前記所定動作ごとに判定することで、前記障害物に前記可動部を接触させずに前記所定動作を実行することができるか否かを判定し、
前記障害物に前記可動部を接触させずに前記所定動作を実行することができないと判定した場合には、前記所定動作の一部を変更した動作計画を生成し、
前記生成された動作計画に基づいて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御するためのプログラム。
【請求項13】
第1可動部と第2可動部とを含む可動部を駆動して所定動作を実行するように構成されたロボットを制御するための制御装置が有するコンピュータが実行するプログラムであって、
前記ロボットと前記ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得し、
前記取得した位置情報に応じて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御し、
前記所定動作として、前記第1可動部を駆動する第1所定動作、及び、前記第2可動部を駆動する第2所定動作をそれぞれ実行したと仮定した場合に、前記第2可動部が前記障害物に接触する可能性が、前記第1可動部が前記障害物に接触する可能性よりも低く、かつ、前記第1所定動作の意味に前記第2所定動作の意味が整合するときには、前記第2所定動作を実行させるように、前記ロボットを制御するためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット制御装置、ロボット、ロボット制御方法およびプログラムに関する。
【背景技術】
【0002】
作動可能な左右のアームを備えるロボットが開発されている。例えば、特許文献1は、対象物がロボット本体の左側に位置する場合には左アームを、右側に位置する場合には右アームをそれぞれ選択し、選択されたアームを用いて対象物を操作する制御装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2006-167902号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方、左右の可動部を用いて自己を表現する動作を実行するロボットが知られている。例えば、握手のような自己を表現する動作を右手で行った場合と左手で行った場合とで、その意味合いは異なる。これに対して、特許文献1に記載の制御装置では、ロボット本体と操作する対象物との位置関係に応じて、作動させるアームとして左右のアームの一方を選択しているにすぎず、左右の可動部の各々で動作を実行した場合のそれぞれの意味合いや、作動したアームに接触するような障害物の存在を考慮していないので、ロボットの動作を適切に制御することができない。
【0005】
本発明は、上記実情に鑑みてなされたものであり、可動部を用いたロボットの動作を適切に実行させることができるロボット制御装置、ロボット、ロボット制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明のロボット制御装置は、
可動部を駆動して所定動作を実行するように構成されたロボットを制御するための制御装置であって、
前記ロボットと当該ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得する位置情報取得手段と、
前記取得された位置情報に基づいて、前記障害物に前記可動部を接触させずに前記所定動作を実行することができる確率を表す安全率を算出する安全率算出手段と、
前記安全率算出手段により算出された安全率が基準値以上であるか否かを前記所定動作ごとに判定することで、前記障害物に前記可動部を接触させずに前記所定動作を実行することができるか否かを判定する判定手段と、
前記判定手段により前記障害物に前記可動部を接触させずに前記所定動作を実行することができないと判定した場合には、前記所定動作の一部を変更した動作計画を生成する動作計画生成手段と、
前記動作計画生成手段が生成した前記動作計画に基づいて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御する制御手段と、を備える。
【発明の効果】
【0007】
本発明によれば、可動部を用いたロボットの動作を適切に実行させることができる。
【図面の簡単な説明】
【0008】
図1】本発明の実施形態1に係るロボットの外観図である。
図2】本発明の実施形態1に係るロボット制御装置のハードウェア構成図である。
図3】本発明の実施形態1に係る動作種別情報の一例を表す図である。
図4】本発明の実施形態1に係る動作決定処理のフローチャートである。
図5】本発明の実施形態1に係るロボットと障害物の一例を表す図である。
図6】本発明の実施形態1に係るロボットの規範動作の一例を表す図である。
図7】本発明の実施形態1に係るロボットの規範動作の一部を変更した動作の一例を表す図である。
図8】本発明の実施形態1に係るロボットの規範動作の左右のアームを反転した動作の一例を表す図である。
図9】本発明の実施形態2に係る環境地図情報の一例を表す図である。
図10】本発明の実施形態2に係る環境地図情報に基準となる安全率が付与された一例を表す図である。
【発明を実施するための形態】
【0009】
(実施形態1)
以下、本発明をコミュニケーション用のロボットの自己表現の動作に適用した実施の形態について、図面を参照して説明する。
【0010】
本実施形態に係るロボット1は、図1に示すように、人型のロボットである。ロボット1は、駆動系を制御するロボット制御装置10と、人の左腕に相当する右アーム11と、人の右腕に相当する左アーム12と、人の両足に相当する脚13と、ロボット1からロボット1の周囲の物体までの距離を測定する距離センサ14と、を備える。
【0011】
ロボット1は、所定動作として、「手を上げる」、「手を振る」、「握手をする」等の自己表現の動作を行う。本実施形態において、自己表現とは、ロボット1を擬人化して、気持ち、感情等をさまざまな動作により表すことを意味する。自己表現の内容は、気持ち、感情等に限らず、ロボット1がユーザに対して伝える内容を広く表すものである。
【0012】
ロボット制御装置10は、右アーム11、左アーム12、脚13および距離センサ14と通信可能に接続されている。そして、ロボット制御装置10は、右アーム11、左アーム12、脚13および距離センサ14を制御する。具体的には、ロボット制御装置10は、自己表現の動作を表す動作計画を作成する。そして、ロボット制御装置10は、作成した動作計画に沿って右アーム11と左アーム12とを駆動する。また、ロボット制御装置10は、脚13を制御して、ロボット1を移動させる。さらに、ロボット制御装置10は、距離センサ14を制御して、ロボット1からロボット1の周囲の物体までの距離を距離センサ14から取得する。
【0013】
右アーム11および左アーム12は、可動部であり、右アーム11を第1可動部、左アーム12を第2可動部とする。右アーム11および左アーム12は、人の関節に相当するアクチュエータに連結されている。右アーム11および左アーム12の各々は、対応するアクチュエータにロボット制御装置10からの制御信号が入力されることによって、この制御信号に基づく角度、速度等で駆動される。
【0014】
脚13は、ロボット1を支えるとともに、ロボット1が移動するための部材である。脚13は、車輪、無限軌道、脚等を備える。脚13は、ロボット制御装置10からの指示に基づいて動作することによって、ロボット1を移動させる。
【0015】
距離センサ14は、超音波、レーザー光、赤外線等を照射し、反射波を取得することによって、距離センサ14から周囲の物体までの距離を測定する。そして、距離センサ14は、測定した距離を表すデジタル信号をロボット制御装置10に送信する。
【0016】
次に、ロボット制御装置10のハードウェア構成について、図2を参照して説明する。ロボット制御装置10は、プロセッサ101とメモリ102とインタフェース103とを備える。
【0017】
プロセッサ101は、CPU(Central Processing Unit)、中央処理装置、演算装置等を備え、メモリ102に格納されたプログラムを読み出して実行することによって、後述する各種の処理を実行する。
【0018】
メモリ102は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、等の不揮発性または揮発性のメモリ、磁気ディスク、フレキシブルディスク、光ディスク等の記録媒体を備える。メモリ102は、各種情報、制御プログラム、BIOS(Basic Input Output System)等が格納される。
【0019】
インタフェース103は、シリアルポート、ネットワークアダプタ等の通信デバイスである。インタフェース103は、右アーム11、左アーム12、脚13および距離センサ14と通信可能に接続されている。
【0020】
次に、メモリ102に格納されている情報について、図3を参照して説明する。メモリ102には、動作種別情報が格納されている。動作種別情報は、後述する処理に必要な設定情報である。動作種別情報は、ロボット1の「手を上げる」、「手を振る」等の自己表現の動作種別ごとの左右反転許容係数と、規範動作計画とを含む情報である。
【0021】
左右反転許容係数は、それぞれの動作が左右反転を許容する程度を表す係数である。左右反転許容係数は、0から1までの数値であって、数値が大きいほど左右反転を許容できる動作であることを表す。例えば、図3に示すように、動作種別「手を上げる」の左右反転許容係数は0.9であって、動作種別「握手をする」の左右反転許容係数である0.1よりも大きいため、「手を上げる」動作は、「握手をする」動作よりも左右反転を許容できる動作であることを表す。このことは、「手を上げる」動作は、「握手をする」動作と比較して、左右を反転しても動作の意味が損なわないことを意味する設定である。
【0022】
また、規範動作計画は、動作種別ごとの規範となる動作の計画を表すデータである。具体的には、規範動作計画は、右アーム11のアクチュエータ及び左アーム12のアクチュエータのいずれかを特定して、特定したアクチュエータの回転する角度(=アームの回転角度)とその作動時間の組み合わせを表すデータであり、一部の動作については、これらのデータが時系列的に並べられている。アクチュエータは、回転する方向によって、プラス方向とマイナス方向が指定されている。例えば、図3に示す「手を振る」動作の例では、最初に1.5秒間かけてアクチュエータAがプラス方向に140度回転する。次に、1.0秒間かけてアクチュエータAがマイナス方向に30度回転する。次に、1.0秒間かけてアクチュエータAがプラス方向に30度回転する。続いて、1.0秒間かけてアクチュエータAが、再びマイナス方向に30度回転する。このように、規範動作計画は、アクチュエータを用いた一連の動作を具体的に規定したデータである。
【0023】
次に、ロボット制御装置10がロボット1の動作を決定する動作決定処理について、図面を参照して説明する。
【0024】
前提として、メモリ102には図3に示す動作種別情報と、基準安全率Ptを表すデータが格納されている。基準安全率Ptは、ロボット制御装置10がある自己表現の動作を実行しても良いと判定するための基準となる安全率の閾値である。この安全率は、ロボット1の左右のアーム11、12を障害物に接触させずに前記所定動作(自己表現の動作)を実行することができる確率を表す。また、メモリ102には、ロボット1に固定された距離センサ14の位置の情報も格納されている。距離センサ14の位置の情報とは、具体的にはロボット1のどの部分のどの位置に距離センサ14が取り付けられているかを表す情報である。
【0025】
ロボット制御装置10は、所定の自律的な行動決定処理の結果、またはユーザの指示に応じて、自己表現の動作を開始する。具体的には、ロボット制御装置10は、メモリ102に格納された動作種別情報を取得する。そして、ロボット制御装置10は、自律的な行動決定処理の結果、またはユーザの指示に応じて、動作種別情報に規定された複数の自己表現の動作種別のいずれか1つを選択して、動作決定処理を開始する。
【0026】
動作決定処理を開始すると、プロセッサ101は、図4に示すように、位置情報を取得する(ステップS101)。具体的には、プロセッサ101は、距離センサ14から距離データを取得する。そして、プロセッサ101は、メモリ102に格納されたロボット1に固定された距離センサ14の位置の情報と、取得した距離を表す距離データと、に基づいて、ロボット1と周囲の物体との3次元的な位置関係を表す位置情報を取得する。例えば、図5に示すように、ロボット1の近くに障害物2がある場合、プロセッサ101は、距離センサ14と障害物2の外周部分との間の距離を取得する。このステップS101の処理を実行するプロセッサ101は、特許請求の範囲に記載された位置情報取得手段の一例である。なお、ロボット1から見て障害物2の裏側の部分の位置情報は、ロボット1が障害物2に衝突するか否かには関係がないため、取得しなくても良い。
【0027】
次に、プロセッサ101は、前述したようにして選択された動作種別の規範動作計画Srを取得する。そして、プロセッサ101は、取得した規範動作計画Srの安全率Prを算出する(ステップS102)。具体的には、プロセッサ101は、ロボット1が現在位置で規範動作計画Srに規定された動作(以下、規範動作と呼ぶ)を実行した場合の右アーム11または左アーム12の動作領域を算出する。そして、プロセッサ101は、算出した動作領域と、ステップS101で取得したロボット1に対する障害物2の相対的な位置情報とを比較して、右アーム11または左アーム12を障害物2に接触させずに規範動作を実行することができる確率、すなわち安全率Prを算出する。例えば、図6に示すように、規範動作が、左アーム12を上げる自己表現の動作(例えば「手を上げる動作」)であるとする。そして、ロボット1の現在位置において、障害物2が左アーム12の動作領域に重なっているとする。例えば、図5に示す例では、規範動作における左アーム12の動作領域は、現在の左アーム12の位置と、手を上げた時の左アーム12の位置との間の領域(点線1001で図示)であって、障害物2と重なっている。この場合、プロセッサ101は、安全率Prとして比較的低い値、例えば10%のような値を算出する。
【0028】
次に、図4に戻り、プロセッサ101は、ステップS102で算出した安全率Prが、メモリ102に格納された基準安全率Pt未満であるか否かを判定する(ステップS103)。そして、プロセッサ101は、安全率Prが基準安全率Pt未満であると判定すると(ステップS103:Yes)、ステップS105の処理に進む。一方、プロセッサ101は、安全率Prが基準安全率Pt未満でないと判定すると(ステップS103:No)、実行する動作を規範動作に決定して(ステップS104)、処理を終了する。前述のように安全率Prが10%の場合、例えば基準安全率Ptが70%であるとすると、Pr<Ptとなるため、ステップS105の処理に進む。
【0029】
ステップS103に続くステップS105の処理において、プロセッサ101は、右アーム11及び左アーム12のうちの規範動作と同じアームの一部の動きを変更した動作計画Saを生成し、生成した動作計画Saの安全率Paを算出する。具体的には、プロセッサ101は、動作計画Saとして、規範動作計画Srに規定されたアクチュエータの回転角度(=アームの回転角度)を小さくして動作領域を限定した動作計画を生成する。そして、ステップS102にて安全率Prを算出した処理と同様に、Saの安全率Paを算出する。例えば、前述のケースでは、図7に示すように、プロセッサ101は、左アーム12を途中まで上げた動作を表す動作計画を、動作計画Saとして生成する。より具体的には、規範動作計画Srに含まれる「アクチュエータA:+140度,2.0秒」の部分を、アクチュエータの回転角度を小さくした動作「アクチュエータA:+70度,2.0秒」に変えた計画を動作計画Saとして生成する。そして、プロセッサ101は、Saの安全率Paを、障害物2の位置情報に基づいて、例えば80%であると算出する。
【0030】
次に、図4に戻り、プロセッサ101は、ステップS105で算出した安全率Paが、メモリ102に格納された基準安全率Pt未満であるか否かを判定する(ステップS106)。そして、プロセッサ101は、安全率Paが基準安全率Pt未満でないと判定すると(ステップS106:No)、ステップS107の処理に進む。一方、プロセッサ101は、安全率Paが基準安全率Pt未満であると判定すると(ステップS106:Yes)、ステップS105の処理に戻り、動作の一部をさらに制限した計画を動作計画Saとして生成する。例えば、前述のケースでは、プロセッサ101は、ステップS105において安全率Paが70%であると算出したため、ステップS106においてPa<Ptではない(Pa≧Pt)と判定し、ステップS107の処理に進む。
【0031】
ステップS106に続くステップS107の処理において、プロセッサ101は、左右のアームを反転した動作計画Sbを生成し、生成した動作計画Sbの安全率Pbを算出する。例えば、前述のケースでは、図8に示すように、プロセッサ101は、左アーム12の代わりに右アーム11を上げた動作を表す動作計画を、動作計画Sbとして生成する。なお、規範動作が特許請求の範囲に記載された第1所定動作の一例であり、動作計画Sbが表す動作が第2所定動作の一例である。より具体的には、規範動作計画Srの動作種別「手を上げる」に含まれる「アクチュエータA:+140度,2.0秒」の部分を、右アーム11のアクチュエータCに変更した動作「アクチュエータC:+140度,2.0秒」に変えた動作計画を、動作計画Sbとして生成する。そして、プロセッサ101は、Sbの安全率Pbを、障害物2の位置情報に基づいて、例えば100%であると算出する。
【0032】
図4に戻り、プロセッサ101は、ステップS107で算出した安全率Pbが、基準安全率Pt未満であるか否かを判定する(ステップS108)。そして、プロセッサ101は、安全率Pbが基準安全率Pt未満でないと判定すると(ステップS108:No)、ステップS110の処理に進む。一方、プロセッサ101は、安全率Pbが基準安全率Pt未満であると判定すると(ステップS108:Yes)、動作計画Sbの一部の動きを変更して、変更した動作計画Sbの安全率Pbを算出する(ステップS109)。そして、プロセッサ101は、再度ステップS108の判定を実行する。
【0033】
ステップS102、ステップS105またはステップS107の処理を実行するプロセッサ101は、特許請求の範囲に記載された安全率算出手段の一例である。ステップS105またはステップS107の処理を実行するプロセッサ101は、特許請求の範囲に記載された動作計画生成手段の一例である。ステップS103、ステップS106またはステップS108の処理を実行するプロセッサ101は、特許請求の範囲に記載された判定手段の一例である。そして、ステップS110の処理を実行するプロセッサ101は、特許請求の範囲に記載された適合率算出手段の一例である。
【0034】
次に、プロセッサ101は、ステップS110の処理として、ステップS105で生成された動作計画Saの適合率Raと、ステップS107又はステップS109で生成された動作計画Sbの適合率Rbと、をそれぞれ算出する(ステップS110)。適合率RaおよびRbは、それぞれの対応する動作計画SaまたはSbで規定されるアームの動作が規範動作計画Srで規定される規範動作と適合する比率を表す。すなわち、それぞれの動作計画SaまたはSbで規定される動作と規範動作との違いが小さいほど、対応する適合率RaまたはRbが大きくなる。具体的に、プロセッサ101は、規範動作計画Srと、動作計画SaおよびSbの各々との差異について、アクチュエータの動作回数の違い、回転角度の違い、動作するアクチュエータの違い等を評価して、適合率RaおよびRbを算出する。また、プロセッサ101は、適合率Rbを算出する際に、対応する動作種別の左右反転許容係数(図3参照)を掛ける。
【0035】
例えば、プロセッサ101は、図7に示すような動作計画Saで左アーム12を動作させる場合の適合率Raを算出する場合、規範動作における左アーム12の動作(点線1002で図示)と、動作計画Saにおける左アーム12の動作(実線で図示)との違いにおけるアクチュエータAの回転角度、右アーム11の動作に違いが無いこと等を評価して、適合率Raを80%と算出する。一方、プロセッサ101は、図8に示すような動作計画Sbで右アーム11を動作させる場合の適合率Rbを算出する場合、規範動作における左アーム12の動作(点線1004で図示)と、動作計画Saにおける左アーム12の動作(実線で図示)との違いにおけるアクチュエータAの回転角度、規範動作における右アーム11の動作(点線1003で図示)と、動作計画Sbにおける右アーム11の動作(実線で図示)に違いがあること等を評価する。さらに、対応する動作種別「手を上げる」の左右反転許容係数0.9を掛けて、プロセッサ101は適合率Rbを例えば50%と算出する。ステップS110の処理を実行するプロセッサ101は、特許請求の範囲に記載された適合率算出手段の一例である。
【0036】
続いて、プロセッサ101は、安全率と適合率を総合的に評価して、動作計画Saと動作計画Sbのいずれで規定される動作を実行するかを判定する。具体的には、プロセッサ101は、(1-m)×安全率Pa+m×適合率Raが(1-m)×安全率Pb+m×適合率Rbより大きいか否かを判定する(ステップS111)。ここで、mは安全率と適合率とのどちらを重視するかを表す係数であり、0以上1以下の範囲でメモリ102にあらかじめ設定される。具体的には、設定されたmの値が大きいほど、適合率を重視することとなる。例えば、前述のケースで、Pa=80、Ra=80、Pb=100、Rb=50であったため、m=0.5と設定されていた場合には、(1-m)×Pa+m×Ra=(1-0.5)×80+0.5×80=80、(1-m)×Pb+m×Rb=(1-0.5)×100+0.5×50=75となる。したがって、プロセッサ101は、(1-m)×安全率Pa+m×適合率Raが(1-m)×安全率Pb+m×適合率Rbより大きいと判定する。一方、m=0.3と設定されていた場合には、(1-m)×Pa+m×Ra=(1-0.3)×80+0.3×80=80、(1-m)×Pb+m×Rb=(1-0.3)×100+0.3×50=85となる。したがって、プロセッサ101は、1-m)×安全率Pa+m×適合率Raが(1-m)×安全率Pb+m×適合率Rb以下であると判定する。
【0037】
プロセッサ101は、(1-m)×安全率Pa+m×適合率Raが(1-m)×安全率Pb+m×適合率Rbより大きいと判定すると(ステップS111:Yes)、実行する動作を動作計画Saの動作に決定する(ステップS112)。一方、プロセッサ101は、(1-m)×安全率Pa+m×適合率Raが(1-m)×安全率Pb+m×適合率Rb以下であると判定すると(ステップS111:No)、実行する動作を動作計画Sbの動作に決定する(ステップS113)。
【0038】
前述のケースでは、m=0.5と設定されていた場合には、プロセッサ101は、(1-m)×安全率Pa+m×適合率Raが(1-m)×安全率Pb+m×適合率Rbより大きいと判定し、実行する動作を動作計画Saの動作に決定する。一方、m=0.3と設定されていた場合には、(1-m)×安全率Pa+m×適合率Raが(1-m)×安全率Pb+m×適合率Rb以下であると判定し、実行する動作を動作計画Sbの動作に決定する。
【0039】
以上のように、プロセッサ101は、実行する動作を決定して、動作決定処理を終了する。そして、プロセッサ101は、決定した動作の実行を制御して、左アーム12または右アーム11を駆動する。この処理を実行するプロセッサ101は、特許請求の範囲に記載された制御手段の一例である。
【0040】
本実施形態に係るロボット制御装置10は、動作決定処理において、基準安全率Pt以上の安全率である動作計画を実行する動作の候補とすることによって、障害物2への接触を回避することができる。そして、ロボット制御装置10は、適合率を基準に動作を決定することによって規範動作に近い動作を選択し、適合率の算出において左右反転許容係数を用いることによって、左右反転によって動作の意味が損なわれるのを抑えることができる。
【0041】
本実施形態に係るロボット制御装置10は、規範動作の安全率を算出して、算出した安全率が基準安全率Pt以上でない場合には、規範動作の代わりの動作の候補となる複数の動作計画を生成し、それぞれの動作計画に対して安全率を算出する。そして、安全率が基準安全率Pt以上である動作を実行対象とすることによって、障害物へのロボット1の可動部の接触を回避することができる。
【0042】
また、本実施形態に係るロボット制御装置10は、複数の動作計画に対して規範動作との適合率を算出する。そして、算出した適合率に基づいて実行対象の動作を選択することによって、規範動作の意味が損なわれるのを抑えることができる。また、適合率の算出において左右反転許容係数を用いることによって、左右反転によって動作の意味が損なわれるのを抑えることができる。
【0043】
このように、本実施形態に係るロボット制御装置10は、障害物へのロボット1の可動部の接触を回避するとともに、規範動作の意味が損なわれるのを抑えることによって、可動部を用いたロボット1の動作を適切に実行させることができる。
【0044】
また、本実施形態に係るロボット制御装置10は、左アーム12を駆動する規範動作(第1所定動作)についての安全率が基準安全率Pt未満であり、左右反転した動作として右アーム11を駆動する動作(第2所定動作)の安全率が基準安全率Pt以上であることを、第2所定動作を実行対象の動作とするための条件の1つとしている。このことは、前記第2可動部が前記障害物に接触する可能性が、前記第1可動部が前記障害物に接触する可能性よりも低いことが、第2所定動作を実行対象の動作とするための条件の1つであることを意味する。また、本実施形態に係るロボット制御装置10は、第2所定動作の適合率にも基づいて、第2所定動作を実行対象の動作とするか否かを決定する。このことは、第1所定動作の意味に第2所定動作の意味が整合することも、第2所定動作を実行対象の動作とするための条件の1つであることを意味する。これらの条件によって、ロボット1は自己表現の意味を損なわずに、規範動作における可動部とは別の可動部を駆動することができ、より柔軟に動作をすることができる。
【0045】
また、本実施形態に係るロボット制御装置10は、安全率と適合率に基づいて、第1所定動作の一部を変更した動作計画Saに規定された動作と第2所定動作とを比較する。そして、動作計画Saに規定された動作の方がより適切な動作であると判断した場合には、動作計画Saに規定された動作を実行対象とすることができる。このことは、第2所定動作の意味が第1所定動作の意味と整合しないときに、障害物への第1可動部の接触を回避しながら第1所定動作を実行させることを意味する。これによって、ロボット1は、さらに柔軟な動作を行うことができる。
【0046】
動作の意味が損なわれるのを抑えるための係数は、左右反転に限らず、どのような設定でも良い。例えば、規範動作計画Srに規定された内容ごとに重み付けをして、重要な内容ほど変更した場合の適合率を低くするようにしても良い。すなわち、動作するアクチュエータが重要である場合は、アクチュエータの変更によって適合率が低くなり、回転角度が重要である場合は、回転角度の変更によって適合率が低くなるように設定しても良い。
【0047】
上述した適合率の算出においては、障害物への接触回避のために動作が変更されることで動作の最後の形が規範動作と異なる例を示した。しかし、動作の最後の形が規範動作と同じであっても、動作の途中の形が異なる場合に意味が損なわれる場合も想定される。この点、動作するアクチュエータの違い、回転角度等に基づいて適合率を算出すれば、途中の形の違いにも対応できる。
【0048】
上述した実施の形態においては、距離センサ14によって周囲の障害物の位置情報を取得する例を示した。他に、接触センサによる検知、カメラが取得した画像に対する画像処理等によって障害物の位置情報を取得しても良い。
【0049】
(実施形態2)
実施形態1においては、ロボット1が距離センサ14を備え、距離センサ14が安全率の算出基準となる障害物2との距離を測定する例を示した。本実施形態においては、ロボット制御装置10が、ロボット1の位置情報と安全率との関係を表す環境地図情報に基づいて安全率を算出する例を示す。本実施形態については、実施形態1と異なる部分を中心に説明する。
【0050】
本実施形態に係るロボット制御装置10のメモリ102には、地図上の領域ごとに安全率が付与された環境地図情報が格納されている。図9に示すように、環境地図情報20は、可動範囲を表す枠21と、障害物を表す枠22とを含む2次元(上下左右)の環境地図を表す情報である。枠21の内側の領域のうちの枠22の外側の領域が、障害物に接触せずに動作可能なロボット1の可動範囲を表している。
【0051】
そして、安全率は動作種別(図3参照)ごとに付与される。安全率が付与された環境地図情報20は、図10に示すように、環境地図情報20の可動範囲を複数の領域に区切り、区切られたそれぞれの領域に安全率が付与されたデータである。この安全率は、対象の動作種別の動作を過去に行った際の実績として、動作を中断した比率である動作中断率と動作を中断した際に行った動作の達成率である動作達成率とに基づいて、あらかじめ付与しておく。なお、過去の実績が不十分で、安全率が不明な領域がある場合には、周囲の領域から取得した安全率から補間しても良い。
【0052】
また、本実施形態に係るロボット1の脚13は車輪を備える。そして、脚13は、車輪の回転数と回転角度を表す信号をロボット制御装置10に送信する。ロボット制御装置10のプロセッサ101は、いわゆるオドメトリと呼ばれる方法によって、脚13から受信した信号に基づいて移動量を算出し、ロボット1の自己位置を推定する処理を繰り返し実行する。この処理を実行するプロセッサ101は、特許請求の範囲に記載された位置推定手段の一例である。これによって、ロボット制御装置10は、ロボット1の位置を表す自己位置情報をメモリ102に格納し、これを定期的に更新する。
【0053】
本実施形態に係るロボット制御装置10のプロセッサ101は、図4に示す動作決定処理のステップS101において、環境地図情報20をメモリ102から読み出して取得する。すなわち、このステップS101の処理を実行するプロセッサ101は、特許請求の範囲に記載された環境地図情報取得手段の一例である。そして、プロセッサ101は、動作決定処理のステップS102、S105、S107およびS108において、上述のようにして作成された環境地図情報20に付与された安全率に基づいて算出する。具体的には、プロセッサ101は、メモリ102に格納された自己位置情報を読み出して、環境地図情報20における自己位置に該当する領域を特定する。そして、プロセッサ101は、特定した領域の安全率を取得する。さらに、プロセッサ101は、ロボット1の向き、動作の大きさ等を考慮して、安全率を増減して調整しても良い。
【0054】
本実施形態に係るロボット制御装置10は、距離センサ14から位置情報を取得しなくても、過去の実績に基づいて安全率を算出することができる。したがって、ロボット1の特定の構成要素に限定されないため、幅広く適用可能である。
【0055】
本実施形態に係るロボット制御装置10はメモリ102に格納された環境地図情報20に基づいて安全率を算出する。ここで、ロボット制御装置10は、距離センサ14から取得する位置情報に代えて環境地図情報20を用いても良いし、距離センサ14から取得する位置情報と、環境地図情報20と、をともに用いても良い。例えば、環境地図情報20をベースとして、距離センサ14から位置情報を取得した範囲においては距離センサ14から取得した情報を用いることによって、周囲の状況に応じてより柔軟に安全率を算出することができる。
【0056】
本実施形態に係るロボット制御装置10は、いわゆるオドメトリによって自己位置を推定する例を示した。しかし、本発明の範囲はこれに限られず、ロボット制御装置10がSLAM(Simultaneous Localization and Mapping)法によって自己位置推定とともに環境地図情報20を更新しても良い。その場合、ロボット制御装置10は、変更された領域の安全率は、周囲の安全率から補間して算出すれば良い。また、ロボット1が図示しないカメラを備え、ロボット制御装置10がカメラによって撮影された画像を解析することによって自己位置推定を行っても良い。この場合も、いわゆるVSLAM(Visual Simultaneous Localization and Mapping)法によって、ロボット制御装置10が自己位置推定とともに環境地図情報20を更新しても良い。
【0057】
本実施形態では、メモリ102に環境地図情報20が格納されている例を示した。しかし、ロボット制御装置10は、ロボット制御装置10の外部のサーバ、クラウド等に格納された環境地図情報20を通信によって取得しても良い。
【0058】
(変形例)
本発明は、上述した実施の形態に限定されるわけではなく、その他の種々の変更が可能である。
【0059】
上述したハードウェア構成、ソフトウェア構成等は、発明の実施形態の理解を容易にするための例示であり、発明を限定するものではない。
【0060】
上述の実施形態においては、「手を上げる」という単純な動作についての例を示した。左右のアーム12、11を同時に使う動作、複数の障害物への接触を考慮する場合の動作等の複雑な事例についても、上述の処理を組み合わせることによって適用可能である。また、移動しながら動作する場合も同様である。
【0061】
上述の実施形態においては、動作計画Saと動作計画Sbという2つの候補となる動作計画を生成して比較する例を示した。候補となる動作計画を多数生成しても良い。例えば、基準安全率Ptが60%である場合、動作計画SaまたはSbとして、安全率60%、70%、80%、90%および100%のそれぞれ5つの動作計画を候補として生成しても良い。このように候補となる動作計画が多いほど、より適切な動作を選択可能となるが、情報処理の負荷が大きくなるため、両者のトレードオフを考慮して候補となる動作計画の生成数を決めても良い。
【0062】
上述の実施形態においては、左右反転許容係数があらかじめ設定されている例を示した。左右反転許容係数をユーザに合わせて更新するようにしても良い。例えば、ロボット制御装置10は、「握手をする」という動作を左アーム12で実行した際に、ユーザが驚いたり戸惑ったりした場合、ユーザの反応から右アーム11で実行した方が良いと判定することによって、左右反転許容係数の数値を小さく変更しても良い。このように、ロボット制御装置10がユーザの反応から学習することによって、ロボット1はユーザの好みに応じた動作が可能となる。
【0063】
上述の実施形態における左右反転許容係数は、左右の動作のいずれかを規範として、反転した場合の動作が許容される程度を表すことによって、動作種別ごとに左右反転した場合に動作の意味が損なわれるか否かを決める機能を果たす。この機能を果たすならば、左右反転許容係数に限らず、どのような設定であっても良い。例えば、左右両方の動作をともに規範動作計画として保持し、それぞれの規範動作計画に、優先して実行する動作を決定するための優先度のような指標を割り当てても良い。
【0064】
上述した実施形態において、可動部が左アーム12および右アーム11である例を示した。本発明の可動部はこれに限られず、どのような可動部であっても良い。例えば、人型ロボットの脚、目、指等にも適用可能である。また、人型ロボット以外にもペットロボットなどの動物型ロボットにも適用可能である。また、可動部は左右の対になっていなくても良い。例えば、人型ロボットの口、ペットロボットのしっぽ等にも適用可能である。すなわち、左右反転は、別の可動部で動作を行うことの例示であって、規範動作と同一の可動部において一部の動作を変更した動作と、規範動作とは別の可動部の動作と、のいずれかもしくは両方を、動作の候補とすれば良い。
【0065】
上述した実施形態において、安全率を算出する例を示した。これは例示であって、障害物を回避する動作を決定するための基準があれば良い。たとえば、安全率の代わりに障害物とロボット1との相対的な位置関係を基準として、障害物に接触するか否かを判定しても良い。
【0066】
また、上述した実施形態において、適合率を算出する例を示した。これは例示であって、動作の意味が損なわれないかどうかを決定するための基準があれば良い。たとえば、適合率の代わりに、ユーザの反応に基づいて学習することによって、動作の意味を表す基準を持ち、その基準に基づいて意味が損なわれない動作を決定しても良い。たとえば、規範動作を一部変更すると意味が損なわれるか否かを表すフラグ、規範動作の可動部を別の可動部(左右反転を含む)に変更すると意味が損なわれるか否かを表すフラグ等の情報を持ち、これらの情報に基づいて、動作の意味が損なわれるか否かを判定しても良い。
【0067】
あるいは、ロボットと障害物との相対的な位置関係を表す位置情報に応じて、所定動作の意味が損なわれるのを抑えながらロボットによる所定動作の実行に伴う障害物への可動部の接触が回避されるような動作を、実験などにより予め求めてマップ化する。そして、このマップをそのときどきの位置情報に応じて検索することにより動作を決定し、決定した動作に基づいて、所定動作の実行を制御してもよい。このマップは、前記メモリ102に記憶してもよく、あるいは、外部のメモリ(例えばクラウド)に記憶して読み出してもよい。
【0068】
ロボット制御装置10は、専用のシステムによらず、通常のコンピュータを用いて実現可能である。例えば、コンピュータに上述のいずれかを実行するためのプログラムを格納した記録媒体等から該プログラムをコンピュータにインストールすることにより、上述の処理を実行するロボット制御装置10を構成することができる。
【0069】
また、コンピュータにプログラムを供給するための手法は、任意である。例えば、通信回線、通信ネットワーク、通信システム等を介して供給してもよい。
【0070】
また、上述の機能の一部をOS(Operating System)が提供する場合には、OSが提供する機能以外の部分をプログラムで提供すればよい。
【0071】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0072】
(付記1)
可動部を駆動して所定動作を実行するように構成されたロボットを制御するための制御装置であって、
前記ロボットと当該ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得する位置情報取得手段と、
前記取得された位置情報に応じて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御する制御手段と、を備える、
ことを特徴とするロボット制御装置。
【0073】
(付記2)
前記位置情報に基づいて、前記障害物に前記可動部を接触させずに前記所定動作を実行することができる確率を表す安全率を算出する安全率算出手段と、
前記安全率が基準値以上であるか否かを前記所定動作ごとに判定する判定手段と、
前記判定手段が前記所定動作の安全率が前記基準値未満であると判定した場合には、前記所定動作の一部を変更した動作計画を生成する動作計画生成手段と、をさらに備え、
前記制御手段は、前記動作計画生成手段が生成した前記動作計画に基づいて前記所定動作を実行させるように前記ロボットを制御する、
ことを特徴とする付記1に記載のロボット制御装置。
【0074】
(付記3)
前記動作計画生成手段は、前記所定動作の一部を変更した変更後の動作計画を複数生成し、
前記安全率算出手段は、前記変更後の動作計画ごとに前記安全率を算出し、
該ロボット制御装置は、前記変更後の動作計画ごとに、前記変更後の動作計画で規定される動作が前記所定動作と適合する比率を表す適合率を算出する適合率算出手段をさらに備え、
前記制御手段は、算出した前記安全率と前記適合率とに基づいて、複数生成された前記変更後の動作計画から実行の基準となる動作計画を決定し、決定した前記動作計画に基づいて前記所定動作を実行させるように前記ロボットを制御する、
ことを特徴とする付記2に記載のロボット制御装置。
【0075】
(付記4)
前記位置情報と前記安全率との関係を表す環境地図情報を取得する環境地図情報取得手段と、
前記ロボットの位置を推定する位置推定手段と、をさらに備え、
前記安全率算出手段は、前記環境地図情報取得手段が取得した前記環境地図情報と、前記位置推定手段が推定した前記ロボットの位置と、に基づいて前記安全率を算出する、
ことを特徴とする付記2または3に記載のロボット制御装置。
【0076】
(付記5)
前記可動部は第1可動部と第2可動部とを含み、
前記制御手段は、前記所定動作として、前記第1可動部を駆動する第1所定動作、及び、前記第2可動部を駆動する第2所定動作をそれぞれ実行したと仮定した場合に、前記第2可動部が前記障害物に接触する可能性が、前記第1可動部が前記障害物に接触する可能性よりも低く、かつ、前記第1所定動作の意味に前記第2所定動作の意味が整合するときには、前記第2所定動作を実行させるように、前記ロボットを制御する、
ことを特徴とする付記1から4のいずれか1つに記載のロボット制御装置。
【0077】
(付記6)
前記制御手段は、前記所定動作として、前記第1所定動作及び前記第2所定動作をそれぞれ実行したと仮定した場合に、前記第2所定動作の意味が前記第1所定動作の意味と整合しないときには、前記障害物への前記第1可動部の接触を回避しながら前記第1所定動作を実行させるように、前記ロボットを制御することを特徴とする、
付記5に記載のロボット制御装置。
【0078】
(付記7)
付記1から6のいずれか1つに記載のロボット制御装置を備える、
ロボット。
【0079】
(付記8)
可動部を駆動して所定動作を実行するように構成されたロボットを制御するためのロボット制御方法であって、
前記ロボットと当該ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得し、
当該取得した位置情報に応じて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御する、
ことを特徴とするロボット制御方法。
【0080】
(付記9)
可動部を駆動して所定動作を実行するように構成されたロボットを制御するための制御装置が実行するプログラムであって、
前記ロボットと当該ロボットの周囲の障害物との相対的な位置関係を表す位置情報を取得し、
当該取得した位置情報に応じて、前記所定動作の意味が損なわれるのを抑えながら、前記ロボットによる前記所定動作の実行に伴う前記障害物への前記可動部の接触を回避するように、前記所定動作の実行を制御するためのプログラム。
【符号の説明】
【0081】
1…ロボット、2…障害物、10…ロボット制御装置、11…右アーム、12…左アーム、13…脚、14…距離センサ、20…環境地図情報、21,22…枠、101…プロセッサ、102…メモリ、103…インタフェース、1001,1002,1003,1004…点線
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10