〔実施形態1〕
以下、本発明の実施形態について、図1〜図6に基づいて詳細に説明する。本実施形態に係る通話ロボット1(ロボット)は、ユーザが発した音声を取得し、音声認識を行ったのち、当該音声に対する応答音声をスピーカから出力する、いわゆる対話機能を有する。また、通話ロボット1は、通話機能を有し、通話相手の音声である通話音声をスピーカ(ハンズフリー用音声出力部、ハンズフリー用スピーカ)またはレシーバ(ハンドセット用音声出力部、ハンドセット用スピーカ)から出力可能な構成となっている。さらに、通話ロボット1は、通話ロボット1の状態を判定し、当該判定の判定結果に基づいて、スピーカおよびレシーバのいずれかから選択した音声出力デバイスから、上記通話音声を出力する。
ここで、「通話ロボット1の状態を判定する」とは、例えば、「通話ロボット1が音声をスピーカから出力するモードとなっているか否かを判定する」、「通話ロボット1の周囲にいる人物を検知した結果、当該人物が通話音声を聞かせてもよい人物のみであるか否かを判定する」、「通話ロボット1の駆動部を駆動可能な状態か否かを判定する」、「着信時に、通話ロボット1が動作をしている状態か否かを判定する」などが挙げられる。つまり、「通話ロボット1の状態」とは、通話ロボット1自体の状態と、通話ロボット1が周囲の状況を検知した状態とを含む。
図2は、通話ロボット1の外観図である。通話ロボット1は、図2に示すように人型のロボットである。そのため、各種ハードウェアが設けられる位置などを説明する際に、人体の各部を示す文言を用いて説明する場合があるが、このような文言は、通話ロボット1における、当該各部を模した部分を指している。また、通話ロボット1は、人型に限定されるものではない。例えば、動物を模したロボットであってもよい。
ここで、図3〜図5を参照して、着信から通話開始までの通話ロボット1の動作概要について説明する。図3〜5は、通話ロボット1を用いた、着信から通話開始までの流れを示す図である。
図3は、通話ロボット1が所定の条件を満たしている場合の流れを示す図である。図3の(a)に示すように、Aさんが通話ロボット1のユーザであるBさんに電話をかけると、通話ロボット1は、「Aさんから電話だよー!ハンズフリーで通話するよ。」という、着信をユーザ(Bさん)に報知する音声(着信音声)の音声データを生成し、当該音声をスピーカから出力させる。なお、上記着信音声の内容は一例であり、この例に限定されるものではない。例えば、「Aさんから電話だよー!」のみであってもよい。これに対して、Bさんが「わかった。電話に出て」と発言すると、当該発言をトリガとして、通話ロボット1は通話を開始する。これにより、AさんとBさんとの通話が、ハンズフリー通話で開始される。具体的には、図3の(b)に示すように、通話ロボット1はAさんが発した音声である通話音声をスピーカから出力する。すなわちBさんは、通話ロボット1を把持することなく、Aさんと通話することができる。
一方、図4は、通話ロボット1が所定の条件を満たしていない場合の流れを示す図である。図4の(a)に示すように、Aさんが通話ロボット1のユーザであるBさんに電話をかけると、通話ロボット1は、両目部分に設けられた点灯部を点灯させ、Bさんに着信を報知する。これに対して、Bさんが通話を開始するための所定の操作を通話ロボット1に入力すると、AさんとBさんとの通話が、ハンドセット通話で開始される。具体的には、通話ロボット1は、Aさんの通話音声をレシーバから出力する。Bさんは、図4の(b)に示すように、通話ロボット1を把持して、レシーバを耳に近づけることで、Aさんの通話音声を聞くことができる。
なお、図5に示すように、通話ロボット1が所定の条件を満たしていない場合、すなわち、ハンドセット通話が開始される場合であっても、着信があったことの報知については、スピーカから出力してもよい。具体的には、図5の(a)に示すように、Aさんが通話ロボット1のユーザであるBさんに電話をかけると、通話ロボット1は、「Aさんから電話だよー!ハンドセットで通話するよ。」という音声の音声データを生成し、当該音声をスピーカから出力させる。これに対して、Bさんが「わかった。電話に出て」と発言すると、当該発言をトリガとして、通話ロボット1は通話を開始する。これにより、AさんとBさんとの通話が、ハンドセット通話で開始される。具体的には、通話ロボット1は、Aさんの通話音声をレシーバから出力するので、Bさんは、図5の(b)に示すように、通話ロボット1を把持して、レシーバを耳に近づける。
次に、図1および図2を参照して、通話ロボット1の要部構成について説明する。図1は、通話ロボット1の要部構成の一例を示すブロック図である。なお、通話ロボット1は、上述したように対話機能を有するため、ユーザとの対話を実現するための各種部材(例えば、入力された音声を認識する音声認識部や、応答音声を生成する応答音声生成部など)を備えているが、当該部材は本発明と関連性が薄いため、図1および図2への記載、および明細書での説明を省略する。通話ロボット1は、制御部10、通信部11、音声入力部12、音声出力部13、記憶部14、および着信報知部15を備える。なお、図2に示す撮像部16については、実施形態2にて説明する。すなわち、本実施形態に係る通話ロボット1は、撮像部16を備えない構成であってもよい。
通信部11は、外部の機器との通信を行い、各種情報を送受信する。具体的には、通信部11は、外部の電話機からの着信を示す着信信号を受信すると、その旨を制御部10に出力する。また、通信部11は、外部の電話機との通話が開始した後は、制御部10から入力された音声の音声データを、通話相手の電話機へ送信する。また、通話相手の電話機から音声データを受信すると、当該音声データを制御部10へ出力する。なお、着信信号は、発信した外部の電話機の電話番号を示す数列(以下、電話番号情報)を含んでいる。
音声入力部12は、通話ロボット1の周囲で発せられた音声を取得して、当該音声の音声データを制御部10に出力する、いわゆるマイクロフォン(以下、マイク)である。通話ロボット1は、図2に示すように、2種類の音声入力部(メインマイクおよびサブマイク)を備えているが、音声入力部12の数はこの例に限定されるものではない。メインマイクは、図2に示すように、通話ロボット1の腰部付近に設けられているが、この例に限定されるものではない。メインマイクは、通話ロボット1を従来の携帯電話機のように手で持ち、ユーザの顔に接触または近接させて通話する(いわゆるハンドセット通話を行なう)場合に、ユーザの口に近づくような位置に設けられればよい。また、サブマイクは、図2に示すように、通話ロボット1の額付近に設けられているが、ユーザが発する音声を取得できる位置であれば、この例に限定されるものではない。
音声出力部13は、音声データを音声に変換して出力する。音声出力部13は、スピーカ31(ハンズフリー用音声出力部)およびレシーバ32(ハンドセット用音声出力部)を含む。スピーカ31は、ユーザが自身の耳をスピーカ31から離した状態で、出力される音声を聞くことを想定した音声出力デバイスである。スピーカ31は、図2に示すように、通話ロボット1の胴部に設けられているが、この例に限定されるものではない。レシーバ32は、ユーザが自身の耳をレシーバ32に近接させた状態で、出力される音声を聞くことを想定した音声出力デバイスである。レシーバ32は、図2に示すように、通話ロボット1の口に設けられているが、この例に限定されるものではない。レシーバ32は、ハンドセット通話を行なう場合に、ユーザの耳に近づくような位置に設けられればよい。
着信報知部15は、着信信号を受信したことをユーザに報知する。本実施形態に係る着信報知部15は、着信信号を受信したときに点灯する点灯部であり、例えばLED(light-emitting diode)であるが、LEDに限定されるものではない。着信報知部15は、図2に示すように、通話ロボット1の両目に設けられる。換言すれば、通話ロボット1は、着信信号を受信したとき、両目が発光する構成である。なお、着信報知部15は、着信信号を受信したことをユーザに報知することができれば、点灯部に限定されない。例えば、着信信号を受信したときに、通話ロボット1を振動させる振動部などであってもよい。
制御部10は、通話ロボット1の機能を統括して制御する。制御部10は、通話制御部21、判定部22(状態判定部)、音声出力制御部23、および着信報知制御部24を含む。
通話制御部21は、通信部11を制御して通話ロボット1のユーザと、外部の電話機のユーザ(通話相手)との通話を実現する。具体的には、通話制御部21は、通信部11から着信信号を取得すると、その旨を判定部22に通知するとともに、着信信号に含まれる電話番号情報を音声出力制御部23に出力する。また、通話制御部21は、図示しない操作部から通話を開始する操作が入力されたことを示す通話開始信号が入力された場合、または、音声入力部12に通話を開始するための音声が入力された場合、通話を開始する旨を音声出力制御部23に通知し、通話を開始する。
ここで、音声入力部12に通話を開始するための音声が入力された場合の処理について具体的に説明すると、着信信号を受信した後に音声入力部12に音声が入力された場合、当該音声の音声データは、制御部10に含まれる図示しない音声認識部に出力される。音声認識部は音声認識を実行し、生成したテキストデータに、通話を開始するトリガとなる文字列(例えば、「電話に出て」など)が含まれているか否かを判定する。含まれている場合、音声認識部は、通話開始指示を通話制御部21に出力する。一方、含まれていない場合、音声認識部は処理を終了する。また、通話制御部21は、通話を開始してから、音声入力部12から、通話ロボット1のユーザが発した音声の音声データを取得すると、当該音声データを、通信部11を介して通話相手の電話機に送信する。また、通話制御部21は、通信部11を介して通話相手の音声の音声データを受信すると、当該音声データを音声出力制御部23に出力する。
判定部22は、通話ロボット1の状態を判定する。具体的には、判定部22は、通話制御部21から、着信信号を取得した旨を通知されると、記憶部14に記憶されているマナーモード設定41を参照し、マナーモード、すなわち、通話ロボット1が音声をスピーカ31から出力しないモードが有効となっているか否かを判定する。なお、マナーモード設定41は、通話ロボット1において、マナーモードが有効となっているか否かを特定できる情報であり、例えば、マナーモードが有効となっているか否かを示すフラグであるが、この例に限定されるものではない。また、判定部22は、マナーモードが有効であるか否かを判定すると、その判定結果を音声出力制御部23および着信報知制御部24に出力する。なお、マナーモード設定41は、図示しない操作部に対して入力されたユーザ操作に基づいて切り替えられる。
音声出力制御部23は、通話ロボット1の音声出力を制御する。具体的には、音声出力制御部23は、通話制御部21から電話番号情報を取得すると、記憶部14に記憶されている電話帳42を参照して、当該電話番号情報が示す電話機の所有者を示す所有者情報を特定する。なお、電話帳42は、電話番号情報と所有者情報とを対応付けて記憶しているデータベースであり、ユーザ操作に基づいて更新される(新たな人物の電話番号情報と所有者情報が登録される)。
音声出力制御部23は、所有者情報を特定すると、判定部22の判定結果(マナーモードが有効であるか否かの判定結果)を待機する状態となる。そして、音声出力制御部23は、取得した判定結果に基づいて、スピーカ31およびレシーバ32のいずれかから選択した音声出力デバイスから、通話音声を出力する。具体的には、音声出力制御部23は、取得した判定結果が、マナーモードが無効であることを示す判定結果である場合、通話音声を出力する音声出力デバイスとして選択したスピーカ31から通話相手の音声(通話音声)を出力させる。より具体的には、音声出力制御部23は、定型音声43を、記憶部14から読み出す。定型音声43は、ユーザに着信を報知するための音声の音声データであり、本実施形態では、「(所有者情報)から電話だよー!ハンズフリーで通話するよ。」という音声の音声データである。音声出力制御部23は、当該音声データの「(所有者情報)」の部分に、特定した所有者情報を追加して、音声データを完成させる。そして、音声出力制御部23は、スピーカ31を起動して、当該音声データが示す音声をスピーカ31に出力させる。そして、通話制御部21からの、通話を開始する旨の通知を待機する状態となる。なお、音声出力制御部23は、「(所有者情報)から電話だよー!ハンズフリーで通話するよ。」という音声を、当該通知を取得するまで、スピーカ31から繰り返し出力させることが好ましい。これにより、通話ロボット1のユーザが着信に気付く可能性が高くなる。この構成である場合、音声出力制御部23は、当該通知を取得すると、当該音声の出力を停止し、通話制御部21から出力される、通話相手が発話した音声の音声データを待機する状態となる。音声出力制御部23は、当該音声データを取得すると、当該音声データが示す音声をスピーカ31から出力させる。
一方、音声出力制御部23は、マナーモードが有効であることを示す判定結果を取得した場合、通話音声を出力する音声出力デバイスとして選択したレシーバ32から通話音声を出力させる。具体的には、音声出力制御部23は、通話制御部21からの、通話を開始する旨の通知を待機する状態となる。そして、当該通知を受けると、レシーバ32を起動し、通話制御部21から出力される、通話相手が発話した音声の音声データを待機する状態となる。音声出力制御部23は、当該音声データを取得すると、当該音声データが示す音声をレシーバ32から出力させる。
着信報知制御部24は、着信報知部15を制御して、着信したことを報知させる。具体的には、着信報知制御部24は、判定部22から取得した判定結果が、マナーモードが有効であることを示す判定結果であった場合、着信報知部15、すなわちLEDを点灯または点滅させる。一方、着信報知制御部24は、取得した判定結果が、マナーモードが無効であることを示す判定結果であった場合、着信報知部15を点灯させず、処理を終了する。なお、着信報知制御部24は、取得した判定結果の内容に関わらず、判定結果を取得したことをトリガとして、着信報知部15を点灯させてもよい。
記憶部14は、通話ロボット1が使用する各種データを記憶する。図1に示すように、記憶部14は、少なくともマナーモード設定41、電話帳42、および定型音声43を記憶している。なお、マナーモード設定41、電話帳42、および定型音声43の詳細については既に説明しているため、ここでの説明を省略する。
次に、図6を参照して、通話ロボット1が実行する出力方法選択処理の流れについて説明する。図6は、出力方法選択処理の流れの一例を示すフローチャートである。まず、通話ロボット1は、着信を待機している状態となっている(ステップS1、以下、「ステップ」を省略)。着信があった場合(S1でYES)、すなわち、通話制御部21が着信信号を取得した場合、通話制御部21は、その旨を判定部22に通知するとともに、着信信号に含まれる電話番号情報を音声出力制御部23に出力する。続いて、判定部22は、通話制御部21から着信信号を取得した旨の通知を受けると、マナーモードが設定されているか否かを判定する(S2、状態判定ステップ)。具体的には、判定部22は、記憶部14に記憶されているマナーモード設定41を参照し、マナーモードが有効になっているか否かを判定する。そして、判定部22は、当該判定の結果を音声出力制御部23および着信報知制御部24に出力する。
続いて、音声出力制御部23は、判定部22から取得した判定結果を特定する。判定結果が、マナーモードが設定されていないことを示す判定結果であった場合(S2でNO)、音声出力制御部23は、スピーカ31から通話相手の音声を出力させる(S4、音声出力ステップ)。具体的には、音声出力制御部23は、スピーカ31を起動して、スピーカ31から着信をユーザに報知するための音声を出力する。そして、音声出力制御部23は、ユーザが通話を開始するためのトリガ(例えば、図3に示すような通話を開始するための音声)を入力したことに基づく、通話制御部21からの通話を開始する旨の通知を受けると、着信をユーザに報知するための音声の出力を停止し、通話制御部21から出力される、通話相手が発話した音声の音声データを待機する状態となる。音声出力制御部23は、当該音声データを取得すると、当該音声データが示す音声をスピーカ31から出力させる。
一方、マナーモードが設定されていることを示す判定結果であった場合(S2でYES)、音声出力制御部23は、レシーバ32から通話相手の音声を出力させる(S3、音声出力ステップ)。具体的には、音声出力制御部23は、ユーザが通話を開始するためのトリガ(例えば、図4に示すような通話を開始するための操作)を入力したことに基づく、通話制御部21からの通話を開始する旨の通知を待機する状態となる。そして、当該通知を受けると、レシーバ32を起動し、通話制御部21から出力される、通話相手が発話した音声の音声データを待機する状態となる。音声出力制御部23は、当該音声データを取得すると、当該音声データが示す音声をレシーバ32から出力させる。以上で通話ロボット1が実行する出力方法選択処理は終了し、これ以降、通話ロボット1のユーザと通話相手との通話が行われる。
〔実施形態2〕
本発明の他の実施形態について、図2、図7および図8に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、以降の実施形態においては、前記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。所定の条件を満たしているか否かの判定の具体例は、実施形態1で説明した、マナーモードが有効となっているか否かの判定に限定されない。本実施形態では、本実施形態に係る通話ロボット1aの周囲にいる人物を検知した結果、当該人物が通話音声を聞かせてもよい人物のみであるか否かを判定する。
まず、図2および図7を参照して、通話ロボット1aの要部構成について説明する。図7は、通話ロボット1aの要部構成の一例を示すブロック図である。通話ロボット1aと、実施形態1にて説明した通話ロボット1との相違点は、制御部10a、記憶部14a、および撮像部16(検知部)を備える点である。
撮像部16は、通話ロボット1aの周囲を撮影し、撮影画像を生成する、いわゆるカメラである。撮像部16は、図2に示すように、通話ロボット1aの両目の間(眉間)に設けられているが、この例に限定されるものではない。撮像部16は、生成した撮影画像を制御部10に出力する。なお、通話ロボット1aは、図示しない駆動部を駆動させることにより、撮影範囲を広げてもよい。例えば、図2のように眉間に撮像部16が設けられている場合、通話ロボット1aの首部に設けられた駆動部を駆動させ、首部を左右に駆動させてもよい。これにより、通話ロボット1aはより多くの範囲を撮影することができる。
制御部10aは、制御部10と異なり、通話制御部21a、判定部22a、音声出力制御部23a、および着信報知制御部24a、および撮像制御部25を含む。通話制御部21aは、実施形態1で説明した通話制御部21の機能に加え、通信部11から着信信号を取得するとその旨を判定部22aだけでなく撮像制御部25に通知する。
撮像制御部25は、撮像部16を制御して、撮影画像を取得する。撮像制御部25は、撮影画像を取得すると、当該撮影画像から顔画像を抽出する。そして、抽出した顔画像を判定部22aに出力する。また、撮像制御部25は、顔画像を顔画像データベース44(以下、顔画像DB44)に登録する。顔画像DB44は、人物の顔画像を記憶しているデータベースであり、通話の内容を聞かれてもよい人物の顔画像を、予め格納しておくものである。なお、撮像制御部25は、当該顔画像が示す人物を識別する人物識別情報(例えば、当該人物の名前など)を、顔画像に対応付けて顔画像DB44に格納してもよい。また、電話帳42に顔画像を登録することが可能である場合、電話帳42と顔画像DB44とは一体となっていてもよい。
判定部22aは、通話制御部21aから着信信号を取得した旨を通知されると、顔画像の取得を待機する状態となる。判定部22aは撮像制御部25から顔画像を取得すると、顔画像DB44を参照して、撮像制御部25から取得した顔画像が登録されているか否かを判定する。判定部22aは、当該判定の結果を音声出力制御部23aおよび着信報知制御部24aに出力する。
音声出力制御部23aは、判定部22aから取得した判定結果が、撮像制御部25から取得した顔画像が登録されていることを示す判定結果である場合、スピーカ31から通話相手の音声(通話音声)を出力させる。一方、登録されていないことを示す判定結果である場合、レシーバ32から通話音声を出力させる。なお、スピーカ31から通話音声を出力させる処理の詳細、および、レシーバ32から通話音声を出力させる処理の詳細については、実施形態1にて説明したものと同様であるため、ここでの説明を省略する。
着信報知制御部24aは判定部22aから取得した判定結果が、撮像制御部25から取得した顔画像が登録されていないことを示す判定結果であった場合、着信報知部15、すなわちLEDを点灯させる。一方、着信報知制御部24aは、取得した判定結果が、撮像制御部25から取得した顔画像が登録されていることを示す判定結果であった場合、着信報知部15を点灯させず、処理を終了する。
記憶部14aは、実施形態1にて説明した記憶部14と異なり、マナーモード設定41に代えて、顔画像DB44を記憶している。なお、顔画像DB44の詳細については既に説明しているため、ここでの説明を省略する。
次に、図8を参照して、通話ロボット1aが実行する出力方法選択処理の流れについて説明する。図8は、出力方法選択処理の流れの一例を示すフローチャートである。なお、図8のステップS11は、既に説明した図6のステップS1と同様であるため、ここでの説明を省略する。判定部22aは、通話制御部21aから着信信号を取得した旨の通知を受けると、撮像制御部25から取得した顔画像が顔画像DB44に登録されているか否かを判定する(S12、状態判定ステップ)。判定部22aは、当該判定の結果を音声出力制御部23aおよび着信報知制御部24aに出力する。続いて、音声出力制御部23aは、判定部22aから取得した判定結果を特定する。判定結果が、顔画像が顔画像DB44に登録されていることを示す判定結果であった場合(S12でYES)、音声出力制御部23aは、スピーカ31から通話相手の音声を出力させる(S14、音声出力ステップ)。一方、顔画像DB44に登録されていないことを示す判定結果であった場合(S12でNO)、音声出力制御部23aは、レシーバ32から通話相手の音声を出力させる(S13、音声出力ステップ)。なお、ステップS13およびS14の処理の詳細は、既に説明した図6のステップS3およびS4とそれぞれ同様であるため、ここでの説明を省略する。以上で、通話ロボット1aが実行する出力方法選択処理は終了し、これ以降、通話ロボット1aのユーザと通話相手との通話が行われる。
次に、実施形態2の変形例について説明する。上述した通話ロボット1aは、通話の内容を聞かれてもよい人物を示す顔画像を顔画像DB44に登録していたが、この例に限定されない。例えば、通話の内容を聞かれたくない人物の顔画像を顔画像DB44に登録する構成であってもよい。ここで、顔画像DB44に顔画像が登録されている場合、音声出力制御部23aは、レシーバ32から通話相手の音声を出力させ、顔画像が登録されていない場合、音声出力制御部23aは、スピーカ31から通話相手の音声を出力させる。
また、上述した通話ロボット1aは、顔画像を用いて、通話ロボット1aの周囲にいる人物が通話の内容を聞かれたくない人物であるか否かを判定していたが、この例に限定されない。例えば、取得した音声を用いて、通話ロボット1aの周囲にいる人物が通話の内容を聞かれたくない人物であるか否かを判定してもよい。この場合、制御部10aは、撮像部16および撮像制御部25を備えなくてもよく、顔画像DB44は、人物が発した音声の音声データを記憶する音声データベースに置き換えられる。また、判定部22aは、音声入力部12に入力された音声の音声データと一致する音声データが、音声データベースに登録されているか否かを判定する。換言すれば、判定部22aは、音声による人物認証を行う。なお、音声による人物認証は、公知技術を利用することができるため、詳細な説明を省略する。
また、上述した通話ロボット1aは、撮像制御部25から取得した顔画像が顔画像DB44に登録されていない場合に、図5に示すように、着信を報知する音声をスピーカ31から出力させた上で、通話音声をレシーバ32から出力させてもよい。
〔実施形態3〕
本発明の他の実施形態について、図9および図10に基づいて説明すれば、以下のとおりである。本実施形態では、本実施形態に係る通話ロボット1bが、可動部位を動かしている状態か否か、および、可動部位の近傍に障害物がある状態か否かを判定する。
通話ロボット1bは、音声をスピーカ31から出力する場合、可動部位を動かして、当該音声に応じた動作を行う。なお、当該「音声」は、通話時に出力される通話相手の音声である通話音声と、通話ロボット1が生成し、出力する音声(例えば、着信時に着信を報知する音声)を含む。一方、通話ロボット1bは、通話音声をレシーバ32から出力する場合、可動部位は動かさない。例えば、着信時に着信を報知する音声(例えば、「Aさんから電話だよー!」)をスピーカ31から出力するときに、両手を口元にあて、ユーザに呼びかけるような動作(以下、呼びかけ動作)を行う。この場合、着信時に別の動作(例えば歩行動作)をしていると、歩行動作を中止して、上記呼びかけ動作を行うこととなるため、通話ロボット1bが転倒するおそれがある。そのため、通話ロボット1bは、可動部を動かしている状態であるか否かを判定し、動かしている状態の場合、レシーバ32から音声を出力するように決定し、現在行っている動作を途中で中止しないようにする。
また、スピーカ31から音声を出力すると、当該音声に応じて可動部位が動くため、可動部位の近傍に障害物がある場合、障害物によって可動部位が故障したり、破損したりするおそれがある。そのため、通話ロボット1bは、可動部位を動かすことができる状態であるか否か、具体的には可動部位の近傍に障害物があるか否かを判定し、障害物がある場合、レシーバ32から音声を出力するように決定し、可動部位を動かさないようにする。
次に、図9を参照して、通話ロボット1bの要部構成について説明する。図9は、通話ロボット1bの要部構成の一例を示すブロック図である。通話ロボット1bと、実施形態1にて説明した通話ロボット1との相違点は、制御部10b、記憶部14b、駆動部17、および障害検知部18を備える点である。記憶部14bは、実施形態1にて説明した記憶部14と異なり、マナーモード設定41を記憶していない。
駆動部17は、通話ロボット1bにおける頭部や腕部などの各可動部位を駆動するものであり、首部や各関節部に対応する数のサーボモータで構成される。障害検知部18は、通話ロボット1bと障害物との位置関係を検知し、検知結果を制御部10bに出力するものであり、近接センサで構成されている。近接センサは、通話ロボット1bと障害物とが近接しているか否か、すなわち、通話ロボット1bの特定の可動部位が僅かでも動けば、当該可動部位に障害物が接触してしまう状態であるか否かを検知する。近接センサとしては、静電容量式センサの他、高周波発進式センサ、または磁気式センサなどが用いられる。なお、障害検知部18は、さらに、通話ロボット1bと障害物とが接触しているか否かを検知可能なように構成されていてもよい。また、障害検知部18は、通話ロボット1bの各可動部位に設けられる。
制御部10bは、制御部10と異なり、通話制御部21b、判定部22b、音声出力制御部23b、着信報知制御部24b、および駆動制御部26を含む。通話制御部21bは、実施形態1で説明した通話制御部21の機能に加え、通信部11から着信信号を取得すると、その旨を判定部22bだけでなく駆動制御部26に通知する。また、通話制御部21bは、通話相手の音声(通話音声)に応じて駆動部17を駆動させるために、通話音声の音声データを図示しない音声認識部に出力する。
駆動制御部26は、駆動部17を制御して、可動部位を動かす。具体的には、駆動制御部26は、図示しない音声認識部から取得した音声認識結果(音声の内容を示すテキストデータ)に基づいて、駆動部17を駆動させる。例えば、取得したテキストデータが「Aさんから電話だよー!」などの、着信を報知するものであった場合、駆動制御部26は、上述した呼びかけ動作を行うように、駆動部17を制御する。また、取得したテキストデータに「うれしい」という文言が含まれている場合、両手を上に上げるような動作を行うように、駆動部17を制御する。また、取得したテキストデータに「分かった」、「オッケー」などの、肯定的な文言が含まれている場合、首を上下に動かす動作(うなづき)を行うように、駆動部17を制御する。また、取得したテキストデータに「違うよ」、「いやだよ」などの、否定的な文言が含まれている場合、首を左右に動かす動作を行うように、駆動部17を制御する。なお、ここに示した動作は一例であり、この例に限定されるものではない。
なお、駆動制御部26は、通話ロボット1bが現在動作中であること、または、通話ロボット1bは現在動作中でないが、通話ロボット1bと障害物とが近接していることを示す判定結果を判定部22bから取得した場合、当該判定結果の取得以降に音声認識部から音声認識結果を取得しても、駆動部17を駆動させない。
また、駆動制御部26は、通話制御部21bから着信信号を取得した旨を通知されると、その時点で駆動部17が駆動している、すなわち、可動部位を動かしている状態であるか否かを示す動作情報を判定部22bに出力する。また、駆動制御部26は、障害検知部18を制御する。具体的には、駆動制御部26は、通話制御部21bから着信信号を取得した旨を通知されると、障害検知部18を起動し、通話ロボット1bと障害物とが近接しているか否かの検知結果を取得する。そして、当該検知結果を判定部22bに出力する。
判定部22bは、通話制御部21bから着信信号を取得した旨を通知されると、動作情報および検知結果を待機する状態となる。判定部22bは、動作情報および検知結果を取得すると、当該動作情報が、通話ロボット1bが現在動作中であることを示しているか否かを判定する。ここで、動作中であると判定した場合、当該判定の結果を音声出力制御部23b、着信報知制御部24b、および駆動制御部26に出力する。一方、動作中でないと判定した場合、当該検知結果が、通話ロボット1bと障害物とが近接していることを示しているか否かを判定する。判定部22bは、当該判定の結果を音声出力制御部23b、着信報知制御部24b、および駆動制御部26に出力する。
音声出力制御部23bは、音声出力制御部23bは、判定部22bから取得した判定結果が、通話ロボット1bが現在動作中でないこと、および、通話ロボット1bと障害物とが近接していないことを示す判定結果である場合、スピーカ31から着信音声および通話音声を出力させる。一方、判定部22bから取得した判定結果が、通話ロボット1bが現在動作中であること、または、通話ロボット1bは現在動作中でないが、通話ロボット1bと障害物とが近接していることを示す判定結果である場合、着信音声は出力させず、レシーバ32から通話音声を出力させる。なお、スピーカ31から通話音声を出力させる処理の詳細、および、レシーバ32から通話音声を出力させる処理の詳細については、実施形態1にて説明したものと同様であるため、ここでの説明を省略する。
以上をまとめると、本実施形態に係る通話ロボット1bは、着信時に通話ロボット1bが動作中でなく、通話ロボット1bと障害物とが近接していないと判定した場合、着信音声および通話音声をスピーカ31から出力させる。このとき、通話ロボット1bの駆動制御部26は、着信音声および通話音声に合わせて駆動部17を駆動させて通話ロボット1bの可動部位を動かす。一方、着信時に通話ロボット1bが動作中、または、通話ロボット1bと障害物とが近接していると判定した場合、着信音声を出力させず、通話音声をレシーバ32から出力させる。このとき、通話ロボット1bの駆動制御部26は、着信音声および通話音声に合わせて駆動部17を駆動させない。
着信報知制御部24bは、判定部22bから取得した判定結果が、通話ロボット1bが現在動作中であること、または、通話ロボット1bは現在動作中でないが、通話ロボット1bと障害物とが近接していることを示す判定結果であった場合、着信報知部15、すなわちLEDを点灯させる。一方、着信報知制御部24bは、取得した判定結果が、通話ロボット1bが現在動作中でないこと、および、通話ロボット1bと障害物とが近接していないことを示す判定結果であった場合、着信報知部15を点灯させず、処理を終了する。
次に、図10を参照して通話ロボット1bが実行する出力方法選択処理の流れについて説明する。図10は、出力方法選択処理の流れの一例を示すフローチャートである。なお、図10のステップS21は、既に説明した図6のステップS1と同様であるため、ここでの説明を省略する。判定部22bは、通話制御部21bから着信信号を取得した旨の通知を受けると、まず、駆動部17が駆動しているか否かを判定する(S22、状態判定ステップ)。具体的には、駆動制御部26から取得した動作情報を参照し、駆動部17が駆動しているか否かを判定する。駆動部17が駆動していると判定した場合(S22でYES)、判定部22bは当該判定の結果を音声出力制御部23aおよび着信報知制御部24aに出力する。一方、駆動部17が駆動していないと判定した場合(S22でNO)、判定部22bは続いて、障害物を検知したか否かを判定する(S23、状態判定ステップ)。具体的には、駆動制御部26から取得した、障害検知部18の検知結果を参照し、通話ロボット1bと障害物とが近接しているか否かを判定する。判定部22bは当該判定の結果を音声出力制御部23aおよび着信報知制御部24aに出力する。
続いて、音声出力制御部23bは、判定部22bから取得した判定結果を特定する。判定結果が、通話ロボット1bが現在動作中でないこと、および、通話ロボット1bと障害物とが近接していないことを示す判定結果であった場合(S23でNO)、音声出力制御部23bは、スピーカ31から通話相手の音声を出力させる(S25、音声出力ステップ)。一方、判定結果が、通話ロボット1bが現在動作中であることを示す判定結果であった場合(S22でYES)、または、通話ロボット1bは現在動作中でないが、通話ロボット1bと障害物とが近接していることを示す判定結果であった場合(S23でYES)、音声出力制御部23bは、レシーバ32から通話相手の音声を出力させる(S24、音声出力ステップ)。なお、ステップS24およびS25の処理の詳細は、既に説明した図6のステップS3およびS4とそれぞれ同様であるため、ここでの説明を省略する。以上で、通話ロボット1bが実行する出力方法選択処理は終了し、これ以降、通話ロボット1bのユーザと通話相手との通話が行われる。なお、図10のステップS22とS23との順序を入れ替えてもよい。また、ステップS22の処理のみを行う構成であってもよいし、または、ステップS23の処理のみを行う構成であってもよい。
次に、実施形態3の変形例について説明する。判定部22bは、通話制御部21bから着信信号を取得した旨の通知を受けると、図示しないバッテリのバッテリ残量を判定し、駆動部17の駆動に必要なバッテリ残量を確保できているか否かを判定してもよい。例えば、着信時に、通話ロボット1bが両手を口元にあて、ユーザに呼びかけるような動作を行なうためのバッテリ残量の下限値を、現在のバッテリ残量が超えているか否かを判定してもよい。音声出力制御部23bは、当該判定結果が、上記下限値を超えていることを示す判定結果である場合、スピーカ31から通話相手の音声を出力させ、上記下限値を越えていないことを示す判定結果である場合、レシーバ32から通話相手の音声を出力させる。なお、この判定は、実施形態3にて説明した2つの判定に代えて行ってもよいし、当該2つの判定とともに、出力方法選択処理にて行われてもよい。
また、上述した通話ロボット1bは、着信音声に合わせて、可動部位を動かさない構成であってもよい。この場合、着信があったことをトリガとする動作は行わないので、着信時に駆動部17が駆動している場合であっても、スピーカ31から着信音声を出力させることができる。よって、図5に示すように、着信を報知する音声をスピーカ31から出力させた上で、通話音声をレシーバ32から出力させてもよい。
〔各実施形態に共通の変形例〕
実施形態1〜3では、いずれも、通話ロボット1、1a〜1cの状態の判定を、着信時に行う構成について説明した。しかしながら、当該判定は着信時に限定されない。具体的には、通話中に当該判定を行い、その判定結果に応じて、通話音声を出力させるデバイスを切り換えてもよい。例えば、実施形態2を例に挙げて説明すると、通話ロボット1bは、通話中も通話ロボット1bの周囲を撮影しており、通話中に顔画像DB44に登録されていない人物の顔画像を抽出した場合、通話音声を出力させるデバイスを、スピーカ31からレシーバ32に変更してもよい。
また、音声出力部13は、スピーカ31およびレシーバ32に限定されない。すなわち音声出力部13は、ユーザが自身の耳をスピーカ31から離した状態で、出力される音声を聞くことを想定した音声出力デバイスと、ユーザが自身の耳を近接させた状態で、出力される音声を聞くことを想定した音声出力デバイスであればよい。例えば、通話ロボット1、1a、1bは、レシーバ32の代わりにイヤフォンなどを備えてもよいし、または、イヤフォンなどを接続可能なコネクタ(いわゆるイヤフォンジャック)を備えてもよい。
〔ソフトウェアによる実現例〕
通話ロボット1、1a、1bの制御ブロック(特に制御部10、10a、10b)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。後者の場合、通話ロボット1、1a、1bは、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一実施態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
〔まとめ〕
本発明の態様1に係るロボット(通話ロボット1)は、通話機能を有し、通話相手の音声である通話音声を出力可能なロボットであって、上記通話音声を出力可能なハンズフリー用音声出力部(スピーカ31)と、上記通話音声を出力可能なハンドセット用音声出力部(レシーバ32)と、上記ロボットの状態を判定する状態判定部(判定部22)と、上記状態判定部の判定結果に基づいて、上記ハンズフリー用音声出力部および上記ハンドセット用音声出力部のいずれかから選択した音声出力部から、上記通話音声を出力させる音声出力制御部(音声出力制御部23)と、を備える。
上記の構成によれば、ロボットの状態の判定結果に基づいて、ハンズフリー用音声出力部およびハンドセット用音声出力部のいずれかから選択した音声出力部から、通話音声を出力させる。これにより、ロボットの状態に応じて、通話音声を出力するデバイスを切り換えることができる。よって、使用する状況に応じて、通話音声を出力するデバイスを切り換えることができる。なお、「ロボットの状態を判定する」とは、「ロボットが音声をハンズフリー用音声出力部から出力するモードとなっているか否かを判定する」、「ロボットの周囲にいる人物を検知した結果、当該人物が通話音声を聞かせてもよい人物のみであるか否かを判定する」、「ロボットの駆動部を駆動可能な状態か否かを判定する」、「着信時に、ロボットが動作をしている状態か否かを判定する」などが挙げられる。つまり、「ロボットの状態」とは、ロボット自体の状態と、ロボットが周囲の状況を検知した状態とを含む。
本発明の態様2に係るロボットは、上記態様1において、上記ロボットの可動部位に設けられる駆動部(駆動部17)と、上記ハンズフリー用音声出力部から上記通話音声が出力される場合、当該通話音声の出力に合わせて、上記駆動部を駆動させて上記可動部位を動かす駆動制御部(駆動制御部26)と、をさらに備え、上記状態判定部は、上記状態として、上記駆動部が駆動可能な状態か否かを判定し、上記音声出力制御部は、駆動可能な状態と判定された場合、上記通話音声を上記ハンズフリー用音声出力部から出力させ、駆動可能な状態でないと判定された場合、上記通話音声を上記ハンドセット用音声出力部から出力させてもよい。
上記の構成によれば、駆動部が駆動可能な状態か否か、すなわち、ハンズフリー用音声出力部から出力される通話音声に合わせて、駆動部を駆動させることができるか否かを判定し、駆動させることができない場合、通話音声をハンドセット用音声出力部から出力させる。これにより、ロボットの駆動部を無理に駆動させるという状況を防ぐことができる。なお、駆動部が駆動可能な状態でないとは、駆動部の近傍に障害物がある状態であることや、駆動部を駆動させるのに必要なバッテリの残量が確保されていない状態であることなどが挙げられる。
本発明の態様3に係るロボットは、上記態様1において、上記ロボットの可動部位に設けられる駆動部と、上記ハンズフリー用音声出力部から音声が出力される場合、当該音声の出力に合わせて、上記駆動部を駆動させて上記可動部位を動かす駆動制御部と、をさらに備え、上記状態判定部は、上記状態として、着信時に上記駆動部が上記可動部位を動かしている状態か否かを判定し、上記音声出力制御部は、上記可動部位を動かしている状態でないと判定された場合、上記通話音声を上記ハンズフリー用音声出力部から出力させ、上記可動部位を動かしている状態と判定された場合、上記通話音声を上記ハンドセット用音声出力部から出力させてもよい。
上記の構成によれば、着信時に駆動部が可動部位を動かしている場合、通話音声をハンドセット用音声出力部から出力し、通話音声に合わせて駆動部を駆動させない。これにより、ユーザがロボットを耳に近づけているときにロボットが動作することが無くなるので、通話中にユーザが不快に感じることを防ぐことができる。
本発明の態様4に係るロボットは、上記態様1において、上記状態判定部は、上記状態として、上記ロボットが音声を上記ハンズフリー用音声出力部から出力しないモードとなっているか否かを判定し、上記音声出力制御部は、上記モードとなっていないと判定された場合、上記通話音声を上記ハンズフリー用音声出力部から出力させ、上記モードとなっていると判定された場合、上記通話音声を上記ハンドセット用音声出力部から出力させてもよい。
上記の構成によれば、音声をハンズフリー用音声出力部から出力しないモードになっているか否かに応じて、通話音声を出力するデバイスを切り換える。これにより、ユーザは使用する状況に応じて当該モードを切り替えるだけで、通話音声を出力するデバイスを切り換えることができる。
本発明の態様5に係るロボットは、上記態様1において、上記ロボットの周囲にいる人物を検知する検知部(撮像部16)をさらに備え、上記状態判定部は、上記状態として、上記検知部が検知した人物が上記通話音声を聞かせてもよい人物のみであるか否かを判定し、上記音声出力制御部は、上記通話音声を聞かせてもよい人物のみが検知された状態と判定された場合、上記通話音声を上記ハンズフリー用音声出力部から出力させ、上記通話音声を聞かせてもよい人物のみが検知された状態でないと判定された場合、上記通話音声を上記ハンドセット用音声出力部から出力させてもよい。
上記の構成によれば、検知された人物が通話音声を聞かせてもよい人物のみでないと判定した場合、通話音声をハンドセット用音声出力部から出力するので、通話音声を聞かせたくない人物が周囲にいる場合、自動的に、通話音声を他人に聞かせないような通話方法とすることができる。なお、ロボットの周囲にいる人物の具体的な検知方法としては、ロボットの周囲を撮像したり、音声を取得したりする方法が挙げられる。また、検知された人物が、通話音声を聞かせてもよい人物のみであるか否かの具体的な判定方法としては、取得した人物の画像や音声が、通話音声を聞かせてもよい(または聞かせたくない)人物の画像や音声として登録されているか否かを判定する方法が挙げられる。
本発明の態様6に係るロボットの制御方法は、通話機能を有し、通話相手の音声である通話音声を出力可能なロボットの制御方法であって、上記ロボットは、上記通話音声を出力可能なハンズフリー用音声出力部と、上記通話音声を出力可能なハンドセット用音声出力部と、を備え、上記ロボットの状態を判定する状態判定ステップ(ステップS2、S12、S22、S23)と、上記状態判定ステップでの判定結果に基づいて、上記ハンズフリー用音声出力部および上記ハンドセット用音声出力部のいずれかから選択した音声出力部から、上記通話音声を出力する音声出力ステップ(ステップS3、S4、S13、S14、S24、S25)と、を含む。上記の構成によれば、態様1に係るロボットと同様の作用効果を奏する。
本発明の態様7に係るロボットは、上記態様1において、上記ロボットの可動部位に設けられる駆動部と、上記ハンズフリー用音声出力部から音声が出力される場合、当該音声の出力に合わせて、上記駆動部を駆動させて上記可動部位を動かす駆動制御部と、をさらに備え、上記状態判定部は、上記状態として、着信時に上記駆動部が上記可動部位を動かしている状態か否かを判定し、上記可動部位を動かしている状態でないと判定された場合、上記音声出力制御部は、着信をユーザに報知する着信音声および上記通話音声を上記ハンズフリー用音声出力部から出力させ、上記駆動制御部は、上記着信音声および上記通話音声に合わせて上記駆動部を駆動させて上記可動部位を動かし、上記可動部位を動かしている状態と判定された場合、上記音声出力制御部は、上記着信音声を出力させないとともに、上記通話音声を上記ハンドセット用音声出力部から出力させ、上記駆動制御部は、上記着信音声および上記通話音声に合わせて上記駆動部を駆動させなくてもよい。
上記の構成によれば、着信時に駆動部が可動部位を動かしている場合、着信音声を出力せず、当該着信音声に合わせて駆動部を駆動させない。これにより、実行している動作を続けることができる。特に、歩行動作など、動作を中止したとき転倒のおそれがあるような動作を行うロボットである場合、動作を完結することができるので、転倒することを防ぐことができる。また、上記の構成によれば、着信時に駆動部が可動部位を動かしている場合、通話音声をハンドセット用音声出力部から出力し、通話音声に合わせて駆動部を駆動させない。これにより、ユーザがロボットを耳に近づけているときにロボットが動作することが無くなるので、通話中にユーザが不快に感じることを防ぐことができる。
本発明の各態様に係るロボットは、コンピュータによって実現してもよく、この場合には、コンピュータを上記ロボットが備える各部(ソフトウェア要素)として動作させることにより上記ロボットをコンピュータにて実現させるロボットの制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。