(57)【要約】  本開示によれば、ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出する検出部と、検出した前記外力に応じて前記ロボットのインタラクションを制御する駆動制御部と、を備える、ロボットの制御装置が提供される。この構成により、ロボットにユーザが触れた場合に、それに応じてロボットがインタラクションを行うことが可能となる。
2020158642.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出する検出部と、
検出した前記外力に応じて前記ロボットのインタラクションを制御する駆動制御部と、
を備える、ロボットの制御装置。
【請求項２】
前記検出部は、力の直接的なセンシングを行うことなく前記外力を検出する、請求項１に記載のロボットの制御装置。
【請求項３】
前記駆動制御部は、前記可動部に前記外力が加わる位置に応じて、前記インタラクションによる前記ロボットの反応を変化させる、請求項１に記載のロボットの制御装置。
【請求項４】
前記駆動制御部は、前記可動部に加わる前記外力の大きさに応じて、前記インタラクションによる前記ロボットの反応を変化させる、請求項１に記載のロボットの制御装置。
【請求項５】
前記駆動制御部は、前記外力が大きいほど前記反応を大きくする、請求項４に記載のロボットの制御装置。
【請求項６】
前記駆動制御部は、前記外力により前記可動部を触るユーザの属性に応じて、前記インタラクションによる前記ロボットの反応を変化させる、請求項１に記載のロボットの制御装置。
【請求項７】
前記駆動制御部は、前記ロボットによる前記ユーザの認知度が高いほど、前記反応を大きくする、請求項６に記載のロボットの制御装置。
【請求項８】
前記駆動制御部は、前記ロボットに設定された感情に応じて、前記インタラクションによる前記ロボットの反応を変化させる、請求項１に記載のロボットの制御装置。
【請求項９】
前記駆動制御部は、前記感情がネガティブなほど、前記反応を大きくする、請求項８に記載のロボットの制御装置。
【請求項１０】
前記駆動制御部は、前記外力が加わる頻度に応じて、前記インタラクションによる前記ロボットの反応を変化させる、請求項１に記載のロボットの制御装置。
【請求項１１】
前記駆動制御部は、前記外力が加わる頻度が低いほど、前記反応を大きくする、請求項１０に記載のロボットの制御装置。
【請求項１２】
前記検出部は、前記関節の角度を計測する関節角センサの計測値と、前記関節を駆動するモータの電流値と、前記関節の角度の指令値と、に基づいて前記外力を検出する、請求項１に記載のロボットの制御装置。
【請求項１３】
前記検出部は、前記計測値と前記指令値との偏差と、前記電流値とに基づいて、前記外力を推定する、請求項１２に記載のロボットの制御装置。
【請求項１４】
ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出することと、
検出した前記外力に応じて前記ロボットのインタラクションを制御することと、
を備える、ロボットの制御方法。
【請求項１５】
ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出する手段、
検出した前記外力に応じて前記ロボットのインタラクションを制御する手段、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ロボットの制御装置、ロボットの制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、下記の特許文献１には、ロボット装置及びその制御方法に関し、外部からいかなる動作指令が入力された場合であってもその動作指令に反応して、動作指令に対する動作状態をユーザに認識させることが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１５８３６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば、家庭用のロボットなどにおいて、動物型のロボットなどでは、ユーザが触れた場合に、実際の動物と同様の反応をさせることが望ましい。【０００５】
上記特許文献１に記載された技術は、ロボットが動作指令として音を検出すると、動作指令に対する動作状態をユーザに認識させることを想定している。しかしながら、ユーザが触れた場合のインタラクションによる反応については何ら考慮していなかった。【０００６】
そこで、ロボットにユーザが触れた場合に、それに応じてロボットがインタラクションを行うことが望まれていた。
【課題を解決するための手段】
【０００７】
本開示によれば、ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出する検出部と、検出した前記外力に応じて前記ロボットのインタラクションを制御する駆動制御部と、を備える、ロボットの制御装置が提供される。【０００８】
また、本開示によれば、ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出することと、検出した前記外力に応じて前記ロボットのインタラクションを制御することと、を備える、ロボットの制御方法が提供される。【０００９】
また、本開示によれば、ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出する手段、検出した前記外力に応じて前記ロボットのインタラクションを制御する手段、としてコンピュータを機能させるためのプログラムが提供される。
【図面の簡単な説明】
【００１０】
【図１】ロボット装置の外観と、関節の回転軸を示す模式図である。
【図２】ロボット装置の頭部を示す模式図である。
【図３】ロボット装置を制御する制御装置の構成を示す模式図である。
【図４】外力検出システムの構成を示す模式図である。
【図５】外力検出部の構成を示す模式図である。
【図６】触る強さに応じてインタラクションが変化する様子を示す模式図である。
【図７】触る人に応じてインタラクションが変化する様子を示す模式図である。
【図８】感情に応じてインタラクションが変化する様子を示す模式図である。
【図９】ユーザが触る頻度に応じてインタラクションが変化する様子を示す模式図である。
【図１０】制御部で行われる処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１２】
なお、説明は以下の順序で行うものとする。
１．ロボット装置の構成
２．制御装置の構成
３．外力検出システムの構成
４．制御部の構成
５．ロボット装置のインタラクションの例
５．１．触る場所に応じたインタラクション
５．２．触る強さに応じたインタラクション
５．３．触り方に応じたインタラクション
５．４．触る人に応じたインタラクション
５．５．感情に応じたインタラクション
５．６．触る頻度に応じたインタラクション
５．７．モーションの例
５．８．インタラクションの実例
５．９．ユーザとのインタラクション以外の実例
６．制御部で行われる処理
【００１３】
１．ロボット装置の構成
図１は、本開示の一実施形態に係るロボット装置１０００の外観と、関節の回転軸を示す模式図である。ロボット装置１０００は、サーボモータ等の電動モータにより駆動される４本の足１００，１１０，１２０，１３０を備える。
【００１４】
図１に示すように、ロボット装置１０００は、複数の関節部を備える。ここで、説明の便宜上、ロボット装置１０００をその動きから右前足系統、左前足系統、右後足系統、左後足系統、本体（Ｂｏｄｙ）系統、頭系統に分類することにする。右前足系統は、関節部１０２、関節部１０４、関節部１０６を有する。左前足系統は、関節部１１２、関節部１１４、関節部１１６を有する。右後足系統は、関節部１２２、関節部１２４、関節部１２６を有する。左後足系統は、関節部１３２、関節部１３４、関節部１３６を有する。また、本体系統は、関節部１４２を有する。頭系統は関節部１５２、関節部１５４、関節部１５６、関節部１５８を有する。これらの各系統は、胴体１４０に対して連結されている。なお、図１に示す各関節部は、電動モータにより駆動される主要な関節部を示している。ロボット装置１０００は、図１に示す関節部の他にも、他の関節部の動きに従って従動的に動く関節部を有する。また、ロボット装置１０００は、口、耳、尻尾などの複数の可動部を有し、これらの可動部も電動モータ等によって駆動される。
【００１５】
図１では、各関節部を円筒で示している。各関節部において、円筒の中心軸が関節部の回転軸に対応している。頭系統では、関節部１５２が設けられていることにより、ロボット装置１０００を正面から見た場合に、首を左右に傾ける動作が実現される。また、本体系統では、関節部１４２が設けられていることにより、ロボット装置１０００を上から見た場合に、腰を左右に振る動きが実現される。これにより、ロボット装置１０００による、今まで以上に多彩な動きを実現することが可能である。
【００１６】
各関節部は、サーボモータ等の電動モータ（以下、単にモータという）によって駆動される。なお、駆動源は特に限定されるものではない。各関節部のモータは、ギヤ機構、エンコーダ、及びモータを駆動するためのマイクロコントローラとともに、１つのボックス（箱）に収められている。ボックスは、樹脂材料（プラスチックなど）から構成される。モータとギヤ機構を１つのボックスの中に収納して密閉することで、ロボット装置１０００の静粛性を高めることが可能である。
【００１７】
右後足系統を例に挙げると、関節部１３２と関節部１３４のモータ、ギヤ機構、エンコーダ、マイクロコントローラは、１つのボックスに収納されており、このボックスは２軸の回転軸を構成する。一方、関節部１３６のモータ、ギヤ機構、マイクロコントローラは、１つのボックスに収納されており、このボックスは１軸の回転軸を構成する。また、頭系統では、関節部１５２、関節部１５４、関節部１５６により３軸の回転軸が構成されている。
【００１８】
なお、２軸の回転軸を１つのボックスに収納することで、球体の関節を実現することができる。また、２軸の回転軸を１つのボックスに収納することで、関節部に関わるスペースを抑制することができ、デザインを重視してロボット装置１０００の形状を決定することが可能となる。
【００１９】
上述した右前足系統などの各系統は、各関節部が備えるマイクロコンピュータによって制御される。関節部のうち、例えば頭系統の関節部１５８は、電気的にブレーキがかかるように構成されている。電源オフ時などに関節部１５８が自在に回転できるようになると、頭部が下に降りて、ユーザの手などに当たる可能性がある。関節部１５８にブレーキをかけておくことで、このような事態を回避できる。ブレーキは、電源オフ時に関節部１５８のモータの回転により生じる起電力に基づいて、モータの回転を判定し、モータが回転しようとする方向と逆方向に駆動力を生じさせる方法により実現できる。
【００２０】
図２は、ロボット装置１０００の頭部１５０、特に顔を示す模式図である。図２に示すロボット装置１０００の目３５０は、ロボット装置１０００の動作に応じて、様々な動きや表示を行うように構成されている。このため、ロボット装置１０００は、左右のそれぞれの目３５０に自発光型の表示装置（ＯＬＥＤ）を備えている。
【００２１】
２．制御装置の構成
図３は、ロボット装置１０００を制御する制御装置２０００の構成を示す模式図である。制御装置２０００は、ロボット装置１０００に搭載される。図３に示すように、この制御装置２０００は、外力検出システム２００、特徴認識部３００、状況取得部４００、制御部５００、感情・性格取得部６００、駆動部７００、を有して構成されている。
【００２２】
外力検出システム２００は、ロボット装置１０００の関節の各モータのそれぞれから、外力が加えられたか否かを示す情報（外力判定値）を検出する。特徴認識部３００は、カメラ、慣性計測装置（ＩＭＵ：Ｉｎｅｒｔｉａｌ  Ｍｅａｓｕｒｅｍｅｎｔ  Ｕｎｉｔ）等を含み、ロボット装置１０００がユーザから触られたか、撫でられたか等を認識する。特徴認識部４００は、カメラの撮像画像を画像処理することで、撮像画像の特徴を認識する。
【００２３】
状況取得部４００は、カメラ等を含み、ロボット装置１０００の周辺の状況、特にロボット装置１０００を触るユーザの特徴を取得する。図２に示すように、ロボット装置１０００の鼻には、カメラ７００が装着されており、カメラ７００は、特徴認識部３００、状況取得部４００のカメラに相当する。駆動部７００は、各関節のモータ、エンコーダ、ギヤ機構に対応する。
【００２４】
制御部５００は、外力検出システム２００から得た判定値を利用して、触る場所や触る強さなどに関する情報を得る。外力検出システム２００は各関節に設けられるため、外力検出システム２００から得られる判定値に基づき、どの部位がどのように触られたかといった情報を得ることができる。制御部５００は、外力検出システム２００による外力判定値と、特徴認識部３００による認識結果、状況取得部４００による状況取得の結果を用い、機械学習により触り方などの情報を得ることもできる。制御部５００は、触り方などの情報に基づいて、各関節の駆動部７００を制御する。
【００２５】
感情・性格取得部６００は、ロボット装置１０００の感情、性格を取得する。ロボット装置１０００は、その時々の状態に応じて、複数の感情のうちのいずれかに設定されることができる。感情・性格取得部５００は、現時点で設定されているロボット装置１０００の感情を取得する。設定される感情としては、「怒り」、「喜び」、「悲しみ」などが挙げられる。
【００２６】
また、ロボット装置１０００は、先天的または後天的に設定された性格を有している。感情・性格取得部６００は、設定されているロボット装置１０００の性格を取得する。設定される感情としては、「ワイルド」、「キュート」、「シャイ」、「甘えん坊」などが挙げられる。
【００２７】
制御部５００は、これらの感情、性格の情報に基づき、外力検出システム２００の応答に対して、ユーザへ最適なインタラクションを提供したり、ロボット装置１０００自身が最適な行動を選択する。
【００２８】
３．外力検出システムの構成
次に、外力検出システム２００の構成について説明する。図４は、外力検出システム２００の構成を示す模式図である。外力検出システム２００は、ロボット装置１０００の各関節に設けられる。図４に示すように、外力検出システム２００は、関節角センサ２０２、出力軸２０４、ギヤ機構２０６、モータ２０８、電流検出部２１０、駆動アンプ部２１２、フィードバック制御部２１４、外力検出部２１６、を有して構成されている。外力検出システム２００は、トルクセンサやタッチセンサなど力の検出を目的とする機構を用いていなくても、外部からの力を推定することを可能とする。この外力検出システム２００の出力を利用することで、ユーザがロボット装置に対して行った行為に対する表現をロボット装置１０００が表出できるようになる。
【００２９】
モータ２０８は、関節を駆動する駆動力を出力する。ギヤ機構２０６は、モータ２０８の出力を減速する機構である。出力軸２０４は、ギヤ機構２０６により減速された駆動力を出力する軸である。出力軸から出力される駆動力により、関節が駆動される。関節角センサ２０２は、上述したエンコーダに相当し、関節の角度を検出する。
【００３０】
フィードバック制御部２１４には、関節角指令値が入力される。関節角指令値は、外力検出部２１６にも入力される。駆動アンプ部２１２には、フィードバック制御部２１４から電流指令値が入力される。電流指令値は、モータ２０８の駆動量を指定する指令値である。駆動アンプ部２１２は、電流指令値を増幅して出力する。駆動アンプ部２１２により増幅された電流がモータ２０８に流れ、モータ２０８が駆動される。このとき、電流検出部２１０がモータ２０８に流れる電流（アクチュエータ電流値）を検出する。外力検出部２１６は、電流検出部２１０が検出したアクチュエータ電流値、関節角センサ２０２が計測した関節角計測値、関節角指令値に基づいて、外力を検出する。
【００３１】
図５は、外力検出部２１６の構成を示す模式図である。図５に示すように、外力検出部２１６は、サーボ偏差算出部２２０、第１の演算部２２２、シフトバッファ部２２４、第２の演算部２２６、を有して構成される。外力検出部２１６は、関節角指令値、関節角計測値、アクチュエータ電流値を時系列で取得し、対象とする関節に外力が加わったか否かを判定する。
【００３２】
サーボ偏差算出部２２０には、関節角指令値と関節角計測値が入力される。サーボ偏差算出部２２０は、関節角指令値と関節角計測値との偏差θＥｒｒｏｒを算出する。第１の演算部２２２には、偏差θＥｒｒｏｒとアクチュエータ電流値Ｉが入力される。
【００３３】
第１の演算部は、偏差θＥｒｒｏｒとアクチュエータ電流値Ｉから、以下の式（１）に基づいて出力Ｆを演算する。
Ｆ＝ａ×θＥｒｒｏｒ×Ｉ＋ｂ×θＥｒｒｏｒ＋ｃ×Ｉ＋ｄ      ・・・（１）
【００３４】
以上のように、関節角指令値と関節角計測値のズレであるサーボ偏差θＥｒｒｏｒとアクチュエータに流しているアクチュエータ電流値Ｉを第１の演算部２２２に入力し、出力Ｆを取得する。式（１）の係数ａ，ｂ，ｃ，ｄは、機械学習の手法などにより適切に決定する。
【００３５】
図５に示すように、出力Ｆはシフトバッファ部２２４に入力される。出力Ｆをシフトバッファ部２２４へ入力することで、連続したｎ個の時系列データを逐次取得する。ｎ個の時系列データは、第２の演算部２２６へ入力される。第２の演算部２２６は、ｎ個の時系列データに対して演算を行い、外力判定値として出力する。第２の演算部２２６が行う演算は、ｎ個の時系列データの平均値を演算して時間方向のノイズを除去するものであっても良い。また、第２の演算部２２６が行う演算は、フィルタを通して高周波を除く演算、ヒステリシスコンパレータを通して二値化した値などであっても良い。この場合、外力判定値が閾値以上の場合に「触られた」と判定する。また、第２の演算部２２６が行う演算は、機械学習の手法により得られた演算器を用いて行われるものであっても良い。なお、第２の演算部２２６に入力される情報は、出力Ｆの時系列情報のみならず、関節角指令値の時系列情報（関節角速度や姿勢情報）などであっても良い。
【００３６】
４．制御部の構成
図３に示すように、制御部５００は、位置判定部５０２、外力判定値取得部５０４、触り方判定部５０６、ユーザ属性取得部５０８、感情・性格判定部５１０、頻度取得部５１２、反応レベル決定部５１３、駆動制御部５１４、モーション決定部５１６、を有して構成されている。なお、制御部５００の各構成要素は、回路（ハードウェア）、またはＣＰＵなどの中央演算処理装置とこれを機能させるためのプログラム（ソフトウェア）から構成することができる。
【００３７】
位置判定部５０２は、ロボット装置１０００のどの部分にユーザが触れたかを判定する。外力判定値取得部５０４は、外力検出システム２００が検出した外力判定値を取得する。触り方判定部５０６は、特徴認識部３００が認識した情報に基づき、ユーザによるロボット装置１０００への触り方を判定する。ユーザ属性取得部５０８は、状況取得部３００が取得した情報、特に顔の画像情報に基づいて、ロボット装置１０００を触ったユーザが見知らぬ人なのか、ロボット装置１０００のオーナなのか等、ユーザの属性に関する情報を取得する。
【００３８】
感情・性格判定部５１０は、感情・性格取得部６００が取得したロボット装置１０００の感情、性格に基づいて、ロボット装置１０００の感情、性格を判定する。頻度取得部５１２は、ユーザがロボット装置１０００を触る頻度を取得する。モーション決定部５１６は、ロボット装置１０００がインタラクションを行うに当たって、ユーザが触る位置、触る際の外力の大きさ、触り方、ユーザ属性、感情、性格、触る頻度などに応じて表出させるモーションを決定する。反応レベル決定部５１３は、触る際の外力の大きさ、触り方、ユーザ属性、感情、性格、触る頻度などに応じて、インタラクションを行う際の反応のレベルを決定する。駆動制御部５１４は、ユーザが触る位置、触る際の外力の大きさ、触り方、ユーザ属性、感情、性格、触る頻度などに応じて駆動部７００を制御し、ロボット装置１０００のインタラクションを制御する。
【００３９】
５．ロボット装置のインタラクションの例
次に、ユーザがロボット装置１０００を触った際のインタラクションについて説明する。本実施形態では、ユーザがロボット装置１０００を触ったり撫でたりした場合に、その際に加わる外力を外力検出システム２００が検出し、外力判定値に応じたインタラクションを実現する。この際、触る場所、触る強さ、触り方、触る人、ロボットの感情、触る頻度、などに応じてロボット装置１０００のモーションを決定し、インタラクションを行う。
【００４０】
５．１．触る場所に応じたインタラクション
ロボット装置１０００のインタラクションは、ロボット装置１０００を複数のブロックに分けた場合に、触られたブロック毎に反応を示すように構成されている。ブロックとして、耳、頭部＋首、脚、尻尾、などが挙げられる。例えば、ユーザが尻尾を触った場合、尻尾を振るインタラクションが行われる。
【００４１】
また、インタラクションは、触る場所に応じて変化する。例えば、尻尾の場合は尻尾を振って反応を示す、頭部の場合には頭を振って反応を示すなど、実際の動物と同様の反応をロボット装置１０００に生じさせることができる。触る場所は、外力判定値の値に基づいて、外力判定値が得られた関節から求めることができる。また、腕や足、尻尾などのタッチセンサを備えている場合、タッチセンサの検出値から触る場所を判定することができる。
【００４２】
５．２．触る強さに応じたインタラクション
ロボット装置１０００のインタラクションは、触る強さに応じて変化する。図６は、触る強さに応じてインタラクションが変化する様子を示す模式図である。図６において、矢印の大きさは触る強さを示している。尻尾の先端に触る場合を例に挙げると、尻尾の先端を強く触る場合は大きく反応し、尻尾が大きく振られる。一方、尻尾の先端を弱く触った場合、反応が弱くなり、尻尾が小さく振られる。触る強さは、外力判定値から求めることができる。
【００４３】
５．３．触り方に応じたインタラクション
ロボット装置１０００のインタラクションは、触り方に応じて変化する。例えば、尻尾が動いている場合に、尻尾の動きと反対方向に無理に動かした場合は、大きく反応する。一方、尻尾が止まっている場合に尻尾を動かした場合は、弱く反応する。また、ロボット装置１０００のインタラクションは、叩き、撫でなどの触り方によっても変化する。例えば、ロボット装置１０００が叩かれた場合は大きく反応し、撫でられた場合は弱く反応する。触り方は、制御部５００の触り方判定部５０６が判定する。触り方は、外力判定値の大きさから求めることができる他、特徴認識部３００の慣性計測装置の計測値を機械学習することによって求めることもできる。
【００４４】
５．４．触る人に応じたインタラクション
ロボット装置１０００のインタラクションは、触る人に応じて変化する。図７は、触る人に応じてインタラクションが変化する様子を示す模式図である。図７に示すように、ロボット装置１０００が認識していない見知らぬ人が触った場合は、強く反応する。一方、ロボット装置１０００が良く認識している、ロボット装置１０００のオーナが触った場合は、弱く反応する。このように、ロボット装置１０００が服従していない人には強く反応し、服従しているオーナに対しては弱く反応する。触る人の属性は、制御部５００のユーザ属性取得部５０８が取得する。
【００４５】
５．５．感情に応じたインタラクション
上述したように、ロボット装置１０００には感情が設定される。ロボット装置１０００のインタラクションは、ロボット装置１０００の感情に応じて変化する。図８は、感情に応じてインタラクションが変化する様子を示す模式図である。図８に示すように、ロボット装置１０００の機嫌が悪い時は反応を大きくする。また、ロボット装置１０００が嬉しい感情の場合は、反応を小さくする。
【００４６】
５．６．触る頻度に応じたインタラクション
ロボット装置１０００のインタラクションは、ユーザが触る頻度に応じて変化する。図９は、ユーザが触る頻度に応じてインタラクションが変化する様子を示す模式図である。図９に示すように、ユーザが触る頻度が低い場合、大きく反応する。一方、ユーザが触る頻度が高い場合、反応は小さくなる。つまり、最初触ったときは嫌がるが、何度も触っているうちに徐々に反応が小さくなる動きを実現する。
【００４７】
５．７．モーションの例
インタラクションにおけるロボット装置１０００のモーションは、モーション決定部５１４が、モーション決定パラメータにより決定する。例えば、触る強さについて取得したパラメータをｂ、触る強さの重み成分をｗ２、触り方について取得したパラメータをｃ、触る強さの重み成分をｗ３、触る人について取得したパラメータをｄ、触る人の重み成分をｗ４、感情について取得したパラメータをｅ、感情の重み成分をｗ５、頻度について取得したパラメータをｆ、頻度の重み成分をｗ６、とすると、モーションの反応レベルは以下の式で表すことができる。
モーションの反応レベル＝ｂｗ２×ｃｗ３×ｄｗ４×ｅｗ５×ｆｗ６
なお、各重み成分（ｗ２〜ｗ６）は、ロボット装置の性格や個性に合わせて変更する。例えば、調教されたフレンドリーな犬などのように、誰とでも接することに慣れている場合であれば、触る人ｄに対する、重み成分ｗ４は非常に小さい値とすればよい。
以下では、モーションの６通りの例を示す。なお、以下に示す６通りの例では、先に記したものほどモーションは大きい。
・（頭部）かみつく/（尻尾）上に振り上げる、振り下げる
・（頭部）いやいやする/（尻尾）大きく２回ふる
・（頭部）力方向に早く流す/（尻尾）上下で細かく振動させる
・（頭部）力方向にゆっくり流す/（尻尾）ゆっくり１回振る
・（頭部）力方向に耐える/（尻尾）ゆっくり上げて、ぽんと落とす
【００４８】
５．８．インタラクションの実例
以上のような手法により実現されるインタラクションの実例を以下に示す。
・尻尾が軸方向に引っ張られると、尻尾を体の方に素早く引き寄せ、外力を払うように１回以上振り返す
・尻尾が軸を中心に回転させられると、回転させられた同じ方向に、力を逃がすように回転する
・尻尾が軸を中心に回転させられると、回転させられた反対方向に、力を返すように回転する
・尻尾が上げられると、下方向に素早く払うように振り返す、尻尾が下げられると、上方向に素早く払うように振り返す
・尻尾が左右方向にふられると、軸中心に戻し、上下に振動させる
・尻尾の根本を持って細かく回転させられると、尻尾を上にあげて、1回以上細かく振動させる（喜び）
・尻尾を触る人が親しい人（オーナーなど）だと、反応が小さくなる
・尻尾を触る人が見知らぬ人だと、反応が大きくなる
・尻尾を触る回数が、事前のある期間にN回以上の場合、次に触られたときの反応が小さくなる（慣れ）
・尻尾を触る回数が、事前のある期間にM回以下の場合、次に触られたときの反応が大きくなる（驚き）
・ロボットの持つ感情が高まっていると、反応が大きくなる、ロボットの持つ感情が落ち着いていると、反応が小さくなる
【００４９】
インタラクションによる反応は、触られたブロック以外のブロックで行われても良い。反応レベルが弱かった場合には、駆動部を駆動せずに、目や声で反応を示してもよい。例えば、目の表現を心地よい状態を示す表現に変更して、もっと触ってほしいと演出してもよい。例えば、「くぅーん」と甘えるような声を出して、もっと触ってほしいと演出してもよい。
【００５０】
また、ユーザが触ったブロックが頭部の場合に、頭部の反応レベルが極端に高い場合には、頭部だけでなく、脚のブロックなどにもモーションを表出し、体全体で嫌がっている動作を演出してもよい。
【００５１】
５．９．ユーザとのインタラクション以外の実例
以下では、ユーザとのインタラクション以外の実例を示す。
・ロボット装置１０００の鼻先に設けられたＴｏＦセンサが反応できないような壁際で外力を検知した場合、壁に接していると判断し、行動計画を変更する。
・オーナーの手に向かって、ロボットの手を差し出す、いわゆる「お手」の最中に、ユーザから得た外力をロボットの個性として登録し、ロボットの行動選択要素とする。例えば、やさしい「お手」をするオーナーのロボットは、「お手」に対する反応もやさしくなる。一方、強引に「お手」を触るオーナーのロボットは、「お手」に対する反応もワイルドになる。
・特徴認識部３００では判断できない、硬いもの、やわらかいものを識別する。例えば、粘土などの対象物体に対し、駆動部を押し込む動作をすることで得られた外力検出値を利用し、硬いもの、柔らかいものを識別することが可能である。同様に、床面の硬さ、柔らかさを判定することで、床面の素材判定を行うことも可能である。
【００５２】
６．制御部で行われる処理
図１０は、制御部５００で行われる処理を示すフローチャートである。図１０の処理は、所定の制御周期毎に行われる。先ず、ステップＳ１０では、外力検出システム２００から外力判定値を取得する。次のステップＳ１２では、位置判定部５０２が、ロボット装置１０００が備える複数のブロックのうち、ユーザが触ったブロックを判定する。具体的には、ステップＳ１２では、耳、頭部＋首、脚、尻尾などのブロックのいずれにユーザが触ったかを判定する。
【００５３】
次のステップＳ１４では、触り方判定部５０６が、ユーザがロボット装置１０００を触った際の触り方に関する情報を取得し、触り方を判定する。次のステップＳ１６では、ユーザ属性取得部５０８が、ロボット装置１０００を触った人の情報を取得する。次のステップＳ１８では、感情・性格判定部５１０が、ロボット装置１０００の感情を取得する。次のステップＳ２０では、頻度取得部５１２が、触られたブロックに関し、過去に触られた頻度を取得する。次のステップＳ２２では、反応レベル決定部５１３が、インタラクションにおける反応のレベルを決定する。次のステップＳ２４では、モーション決定部５１６が、表出するモーションを決定する。ステップＳ２４の後は処理を終了する。
【００５４】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【００５５】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【００５６】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）  ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出する検出部と、
検出した前記外力に応じて前記ロボットのインタラクションを制御する駆動制御部と、
を備える、ロボットの制御装置。
（２）  前記検出部は、力の直接的なセンシングを行うことなく前記外力を検出する、前記（１）に記載のロボットの制御装置。
（３）  前記駆動制御部は、前記可動部に前記外力が加わる位置に応じて、前記インタラクションによる前記ロボットの反応を変化させる、前記（１）又は（２）に記載のロボットの制御装置。
（４）  前記駆動制御部は、前記可動部に加わる前記外力の大きさに応じて、前記インタラクションによる前記ロボットの反応を変化させる、前記（１）〜（３）のいずれかに記載のロボットの制御装置。
（５）  前記駆動制御部は、前記外力が大きいほど前記反応を大きくする、前記（４）に記載のロボットの制御装置。
（６）  前記駆動制御部は、前記外力により前記可動部を触るユーザの属性に応じて、前記インタラクションによる前記ロボットの反応を変化させる、前記（１）〜（５）のいずれかに記載のロボットの制御装置。
（７）  前記駆動制御部は、前記ロボットによる前記ユーザの認知度が高いほど、前記反応を大きくする、前記（６）に記載のロボットの制御装置。
（８）  前記駆動制御部は、前記ロボットに設定された感情に応じて、前記インタラクションによる前記ロボットの反応を変化させる、前記（１）〜（７）のいずれかに記載のロボットの制御装置。
（９）  前記駆動制御部は、前記感情がネガティブなほど、前記反応を大きくする、前記（８）に記載のロボットの制御装置。
（１０）  前記駆動制御部は、前記外力が加わる頻度に応じて、前記インタラクションによる前記ロボットの反応を変化させる、前記（１）〜（９）のいずれかに記載のロボットの制御装置。
（１１）  前記駆動制御部は、前記外力が加わる頻度が低いほど、前記反応を大きくする、前記（１０）記載のロボットの制御装置。
（１２）  前記検出部は、前記関節の角度を計測する関節角センサの計測値と、前記関節を駆動するモータの電流値と、前記関節の角度の指令値と、に基づいて前記外力を検出する、前記（１）〜（１１）のいずれかに記載のロボットの制御装置。
（１３）  前記検出部は、前記計測値と前記指令値との偏差と、前記電流値とに基づいて、前記外力を推定する、前記（１２）に記載のロボットの制御装置。
（１４）  ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出することと、
検出した前記外力に応じて前記ロボットのインタラクションを制御することと、
を備える、ロボットの制御方法。
（１５）  ロボットの可動部に加わる外力を、前記可動部を駆動する関節から得られるパラメータに基づいて検出する手段、
検出した前記外力に応じて前記ロボットのインタラクションを制御する手段、
としてコンピュータを機能させるためのプログラム。
【符号の説明】
【００５７】
２００    外力検出システム
５１４    駆動制御部
１０００  ロボット装置
２０００  制御装置
【図１】
2020158642.tif 000003
【図２】
2020158642.tif 000004
【図３】
2020158642.tif 000005
【図４】
2020158642.tif 000006
【図５】
2020158642.tif 000007
【図６】
2020158642.tif 000008
【図７】
2020158642.tif 000009
【図８】
2020158642.tif 000010
【図９】
2020158642.tif 000011
【図１０】
2020158642.tif 000012
【国際調査報告】
2020158642.tif 000013
2020158642.tif 000014
2020158642.tif 000015
2020158642.tif 000016