説明

掃除機の制御装置及び制御方法、掃除機、掃除機の制御プログラム、及び、掃除機の制御用集積電子回路

【課題】掃除ロボットを操作する人がロボットの掃除方法を簡単に教示できる、操作性の良い効率的な掃除ロボットの制御を実現できる掃除機の制御装置及び制御方法、掃除機、掃除機の制御プログラム、及び、掃除機の制御用集積電子回路を提供する。
【解決手段】掃除を行う掃除機の制御装置であって、前記掃除機の掃除方法に関する情報が記録された掃除方法データベース17と、前記掃除方法の補正種別を決定する補正動作種別決定部23と、人16の力を検出する力検出部53と、掃除機の作業中に、人16の力と補正種別に応じて、掃除方法を補正する掃除動作補正部20とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、例えば家庭内で掃除を行う掃除機の掃除動作を生成及び教示するための掃除機の制御装置及び制御方法、掃除機、掃除機の制御プログラム、及び、掃除機の制御用集積電子回路に関する。
【背景技術】
【0002】
近年、家庭用又はビルなどの業務用の自動掃除ロボットが製品化されている。家庭用自動掃除ロボットとして、自動掃除ロボットのセンサからの信号により、掃除領域を確認しつつ、自動で掃除を行う掃除ロボットが開示されている(特許文献1、特許文献2を参照)。さらに、業務用としては、ビル清掃用として、光学センサ又はビジョンカメラ等を用いて、自己位置を同定し、対象とする部屋又は床面を隈なく掃除するものがある(特許文献3、特許文献4を参照)。
【0003】
さらに、特許文献5では、人が発見した汚れ部分に、無線通信機能を持つマーカを置き、掃除ロボットマーカを捜索することにより、マーカを設置した部分のみ、迅速に掃除する方法が開示されている。
【0004】
また、特許文献6では、リモコンを用いて掃除機を遠隔制御することにより、操作性の良い掃除機が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2003−323214号公報
【特許文献2】特開2004−148090号公報
【特許文献3】特開平08−106323号公報
【特許文献4】特開平08−063229号公報
【特許文献5】特開2007−82639号公報
【特許文献6】特開平4−295323号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1、特許文献2、特許文献3、特許文献4においては、ロボットが自走しながら、床面を一斉に隈なく掃除を行うものであり、人間の手を介さずに掃除ができるという特徴はあるものの、使用者が食べ物などをこぼした場合など突発的に掃除をして欲しい場合の対応ができていない。
【0007】
さらに特許文献5では、マーカを使って突発的な汚れに対応しているが、家具又は部屋の隙間などの掃除、又は、床面の材質に合った掃除、汚れの多い部分又は少ない部分を識別して掃除するなど極め細やかな掃除を行うことができない。
【0008】
また、特許文献6では、リモコン操作により掃除機の走行方向の制御は可能だが、吸引力の制御又は拭き掃除時の力のかけ具合などを直感的に操作することができない。
【0009】
本発明の目的は、このような課題に鑑みてなされたものであり、作業者が簡単で短時間に極め細やかな掃除動作を掃除機に教示することが可能な掃除機の制御を実現できる、掃除機の制御装置及び制御方法、掃除機、掃除機の制御プログラム、及び、掃除機の制御用集積電子回路を提供することにある。
【課題を解決するための手段】
【0010】
前記目的を達成するために、本発明は以下のように構成する。
【0011】
本発明の第1態様によれば、移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御装置であって、
前記掃除機に作用する人の力を検出する力検出手段と、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と前記力検出手段で検出された前記掃除機に作用する前記人の力に関する情報とをそれぞれ取得する情報取得部と、
前記情報取得部でそれぞれ取得した前記掃除動作に関する情報と前記人の力に関する情報とから前記掃除動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を補正する掃除動作補正手段とを備えるとともに、
前記掃除動作に関する情報は、前記掃除機が行う前記掃除作業に応じた、前記掃除部の前記掃除位置の情報と、前記掃除部から前記掃除面にかける力情報と、前記掃除部の吸引力の強さに関する情報と、前記掃除部の速度情報と、掃除を行わない領域に関する情報である掃除不可領域情報のうちの少なくとも1つの情報を有することを特徴とする掃除機の制御装置を提供する。
【0012】
本発明の第13態様によれば、前記移動体と、
前記移動体に取り付けられて掃除面に接触する掃除部と、
前記移動体と前記掃除部とを駆動する駆動装置と、
前記移動体と前記掃除部とを前記駆動装置で駆動制御する第1〜3,5〜11のいずれか1つの態様に記載の掃除機の制御装置と、
を備える掃除機を提供する。
【0013】
本発明の第14態様によれば、移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御方法であって、
前記掃除機に作用する人の力を力検出手段で検出し、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と前記力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する前記人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を補正動作種別決定手段で決定し、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を掃除動作補正手段で補正することを特徴とする掃除機の制御方法を提供する。
【0014】
本発明の第15態様によれば、移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御プログラムであって、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を補正動作種別決定手段で決定するステップと、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記掃除機に作用する前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を掃除動作補正手段で補正する掃除動作補正ステップとをコンピュータに実行させための掃除機の制御プログラムを提供する。
【0015】
本発明の第16態様によれば、移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御用集積電子回路であって、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記掃除機に作用する前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を補正する掃除動作補正手段とを備えることを特徴とする掃除機の制御用集積電子回路を提供する。
【発明の効果】
【0016】
以上述べたように、本発明の掃除機の制御装置、掃除機によれば、補正動作種別決定手段と、情報取得部と、力検出手段と、掃除動作補正手段とを有することにより、前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と前記力検出手段で検出された前記掃除機に作用する前記人の力に関する情報とを利用して、人の力に応じて、掃除動作を簡単に補正することができる掃除機の制御が可能となる。
【0017】
また、本発明の掃除機の制御方法、掃除機の制御プログラム、及び、掃除機の制御用集積電子回路によれば、補正動作種別決定手段と、掃除動作補正手段とを有することにより、前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と前記力検出手段で検出された前記掃除機に作用する前記人の力に関する情報とを利用して、力検出手段で検出されかつ前記情報取得部で取得された人の力に応じて、掃除動作を簡単に補正することができる掃除機の制御が可能となる。
【図面の簡単な説明】
【0018】
【図1A】本発明の実施の形態における掃除ロボットの構成の概要を示す斜視図
【図1B】本発明の前記実施の形態における前記掃除ロボットの構成の概要を示す底面図
【図1C】本発明の前記実施の形態における前記掃除ロボットの構成の概要を示す平面図
【図2】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図3】本発明の前記実施の形態における前記掃除ロボットの一例である掃除ロボットを構成する制御装置と制御対象であるロボット本体との詳細構成を示す図
【図4】前記実施の形態における前記掃除ロボットの制御装置中の掃除方法データベースの動作情報の一覧表を説明する図
【図5】前記掃除方法データベースのフラグに関する情報を説明する図
【図6】前記実施の形態における前記掃除ロボットの制御装置の補正パラメータのフラグに関する情報を説明する図
【図7】本発明の前記実施の形態における前記制御装置の制御部の構成を示すブロック図
【図8】本発明の前記実施の形態における前記掃除ロボットの掃除経路に関する図
【図9】本発明の前記実施の形態における前記掃除ロボットの制御装置の掃除方法種別決定部の閾値に関する一覧表を示す図
【図10】前記実施の形態における前記掃除ロボットの制御装置の掃除不可領域データベース情報の一覧表を説明する図
【図11】本発明の前記実施の形態における前記掃除ロボットの掃除経路に関する図
【図12A】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図12B】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す平面図
【図12C】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す平面図
【図12D】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す平面図
【図13】本発明の前記実施の形態における前記掃除ロボットの操作盤を示す図
【図14】本発明の前記実施の形態における前記掃除ロボットの制御装置の掃除方法種別決定部の動作ステップを示すフローチャート
【図15A】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図15B】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図15C】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図16A】本発明の前記実施の形態における前記掃除ロボットの動作状態を示す斜視図
【図16B】本発明の前記実施の形態における前記掃除ロボットの動作状態を示す平面図
【図16C】本発明の前記実施の形態における前記掃除ロボットの動作状態を示す平面図
【図17】本発明の前記実施の形態における前記掃除ロボットの制御装置の掃除方法種別決定部の動作ステップを示すフローチャート
【図18A】本発明の前記実施の形態における前記掃除ロボットの制御装置の操作状態を示す斜視図
【図18B】本発明の前記実施の形態における前記掃除ロボットの制御装置の操作状態を示す斜視図
【図19】本発明の前記実施の形態における前記掃除ロボットの制御装置において、人がかける力と吸引力の対応を変換表形式で示す図
【図20A】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す平面図
【図20B】本発明の前記実施の形態における前記掃除ロボットの操作状態を説明するときの吸引ノズルの拡大平面図であり、
【図21】本発明の前記実施の形態における前記掃除ロボットの周辺装置の表示部を説明する図
【図22】本発明の前記実施の形態における前記掃除ロボットの動作状態を示す斜視図
【図23】本発明の前記実施の形態における前記掃除ロボットの動作状態を示す斜視図
【図24】本発明の前記実施の形態における前記掃除ロボットの制御装置の掃除動作補正部と補正動作種別決定部と動作選択部と掃除方法記憶部と衝突検出部と掃除方法データベースと制御パラメータ管理部の動作ステップを示すフローチャート
【図25】本発明の前記実施の形態における前記掃除ロボットの制御装置の制御部の動作ステップを示すフローチャート
【図26】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す図
【図27A】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図27B】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図27C】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図28A】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図28B】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図28C】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図29A】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す斜視図
【図29B】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す平面図
【図29C】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す平面図
【図29D】本発明の前記実施の形態における前記掃除ロボットの操作状態を示す平面図
【図30A】本発明の前記実施の形態における前記掃除ロボットの動作状態を示す斜視図
【図30B】本発明の前記実施の形態における前記掃除ロボットの動作状態を示す斜視図
【発明を実施するための形態】
【0019】
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
【0020】
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
【0021】
本発明の第1態様によれば、移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御装置であって、
前記掃除機に作用する人の力を検出する力検出手段と、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と前記力検出手段で検出された前記掃除機に作用する前記人の力に関する情報とをそれぞれ取得する情報取得部と、
前記情報取得部でそれぞれ取得した前記掃除動作に関する情報と前記人の力に関する情報とから前記掃除動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を補正する掃除動作補正手段とを備えるとともに、
前記掃除動作に関する情報は、前記掃除機が行う前記掃除作業に応じた、前記掃除部の前記掃除位置の情報と、前記掃除部から前記掃除面にかける力情報と、前記掃除部の吸引力の強さに関する情報と、前記掃除部の速度情報と、掃除を行わない領域に関する情報である掃除不可領域情報のうちの少なくとも1つの情報を有することを特徴とする掃除機の制御装置を提供する。
【0022】
このような構成により、前記掃除動作に関する情報と人の力に関する情報とに応じて、掃除機の掃除動作を補正することができる。また、このような構成により、前記掃除機が行う掃除作業に応じて、それぞれの時間での、位置情報と、前記掃除機がかける力情報と、吸引力の強さに関する情報と、速度情報と、掃除をしてほしくない領域に関する情報のうちの少なくとも1つの情報を補正することができる。
【0023】
本発明の第2態様によれば、前記掃除動作に関する情報は、前記掃除機が行う前記掃除作業に応じた、前記掃除部から前記掃除面にかける力情報と、前記掃除部の吸引力の強さに関する情報とを少なくとも有し、
前記掃除動作補正手段は、前記掃除動作に関する情報に基づいて、予め設定された力を前記掃除機から前記掃除面に作用させて前記掃除動作を行なう力制御モードを前記掃除機が移動可能なxyz軸方向のそれぞれの軸別に設定して前記掃除動作を前記掃除機で行っている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、補正動作前の前記掃除動作に関する情報のうちの前記設定された力の大きさ又は方向を補正することを特徴とする第1の態様に記載の掃除機の制御装置を提供する。
【0024】
このような構成により、前記掃除動作に関する情報に基づいて、予め設定された力を前記掃除機から前記掃除面に作用させて前記掃除動作を行なう力制御モードを前記掃除機が移動可能なxyz軸方向のそれぞれの軸別に設定して前記掃除動作を前記掃除機で行っている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、補正動作前の前記掃除動作に関する情報のうちの前記設定された力の大きさ又は方向を補正することができる。
【0025】
本発明の第3態様によれば、前記掃除動作に関する情報は、前記掃除機が行う前記掃除作業に応じた、前記掃除部の前記掃除位置の情報と、前記掃除部の速度情報と、掃除を行わない領域に関する情報である掃除不可領域情報とを有し、
前記掃除動作補正手段は、前記掃除動作に関する情報に基づいて、前記掃除機の位置を制御する位置制御モードで動作している最中に、駆動停止している前記掃除機に対して前記人から前記掃除機に加わる力に応じて前記掃除機が作動するインピーダンス制御モードを前記掃除機が移動可能なxyz軸方向のそれぞれの軸別に設定して前記掃除作業を動作させている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、前記インピーダンス制御での前記掃除動作に関する情報の前記掃除動作を補正するように前記駆動装置を駆動制御することを特徴とする第1の態様に記載の掃除機の制御装置を提供する。
【0026】
このような構成により、前記掃除動作に関する情報に基づいて、前記掃除機の位置を制御する位置制御モードで動作している最中に、駆動停止している前記掃除機に対して前記人から前記掃除機に加わる力に応じて前記掃除機が作動するインピーダンス制御モードを前記掃除機が移動可能なxyz軸方向のそれぞれの軸別に設定して前記掃除作業を動作させている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、前記インピーダンス制御での前記掃除動作に関する情報の前記掃除動作を補正することができる。
【0027】
本発明の第4態様によれば、前記掃除機に加わる力を検出する衝突検出手段をさらに備え、
前記衝突検出手段で検出した前記力が閾値以上である場合に、前記掃除動作補正手段は、補正前の動作に戻すことを特徴とする第1〜3のいずれか1つの態様に記載の掃除機の制御装置を提供する。
【0028】
本発明の第5態様によれば、前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に平行な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以下であり、かつ前記掃除面に平行な方向の力成分が第2の閾値以上である場合に、前記補正動作種別決定手段により検出された前記掃除機の前記位置の前記掃除面に平行な方向の移動量が第3閾値以上である場合に、前記補正動作の種別として、掃除面の位置の移動の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に平行な方向に前記掃除機の前記位置を補正するように前記駆動装置を駆動制御することを特徴とする第1の態様に記載の掃除機の制御装置を提供する。
【0029】
本発明の第6態様によれば、前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に平行な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以上であり、かつ前記掃除面に平行な方向の力成分が第2の閾値以上である場合に、前記補正動作種別決定手段により検出された前記掃除機の前記位置の前記掃除面に平行な方向の移動量が第3閾値以上である場合に、前記補正動作の種別として、掃除面の位置の移動の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に平行な方向に前記掃除機の前記位置を補正するように前記駆動装置を駆動制御することを特徴とする第1の態様に記載の掃除機の制御装置を提供する。
【0030】
本発明の第7態様によれば、前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に垂直な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記掃除機の前記位置の前記掃除面に垂直な方向の移動量が第4の閾値より大きい場合に、前記補正動作の種別として、掃除面垂直方向の位置の移動の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に垂直な方向に前記掃除機の前記位置を補正するように前記駆動装置を駆動制御することを特徴とする第1の態様に記載の掃除機の制御装置を提供する。
【0031】
本発明の第8態様によれば、前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に垂直な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記掃除機の前記位置の前記掃除面に垂直な方向の移動量が第4の閾値以下であり、かつ、前記掃除作業が拭き掃除である場合に、前記補正動作の種別として、力のかけ具合の補正の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に垂直な方向への前記掃除機のかかる力を補正するように前記駆動装置を駆動制御することを特徴とする第1の態様に記載の掃除機の制御装置を提供する。
【0032】
本発明の第9態様によれば、前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に垂直な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記掃除機の前記位置の前記掃除面に垂直な方向の移動量が第4の閾値以下であり、かつ、前記掃除作業が吸引掃除である場合に、前記補正動作の種別として、吸引力の補正の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に垂直な方向への前記吸引力を補正するように前記駆動装置を駆動制御することを特徴とする第1の態様に記載の掃除機の制御装置を提供する。
【0033】
本発明の第10態様によれば、前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に平行な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1閾値未満であり、かつ、前記掃除面に平行な方向の力成分が第2閾値以上である場合に、前記補正動作種別決定手段により検出された前記掃除機の前記位置の前記掃除面に平行な方向の移動量が第3閾値未満である場合に、前記補正動作の種別として、速度の補正の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に平行な方向に前記掃除機の前記位置の速度を補正するように前記駆動装置を駆動制御することを特徴とする第1の態様に記載の掃除機の制御装置を提供する。
【0034】
本発明の第11態様によれば、前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に平行な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記人の手により前記掃除機にかかる力が前記掃除面に平行であり、かつ、前記補正動作種別決定手段により検出されたある一定時間の前記掃除面に平行な方向の移動量が閾値以上の場合には、前記補正動作の種別として、掃除不可領域の設定の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除機の前記位置を移動させることで、前記掃除不可領域を設定することを特徴とする第1の態様に記載の掃除機の制御装置を提供する。
【0035】
このような構成により、前記掃除不可領域を簡単に設定することができて、掃除をして欲しくない領域については、掃除機による掃除動作を不要とすることができる。
【0036】
本発明の第12態様によれば、前記補正動作種別決定手段で決定した前記補正動作の種別に基づき、前記補正動作の種別に関する情報を表示する表示手段をさらに備えることを特徴とする第1〜11のいずれか1つの態様に記載の掃除機の制御装置を提供する。
【0037】
このような構成により、補正動作の種別に関する情報を表示することができる。
【0038】
本発明の第13態様によれば、前記移動体と、
前記移動体に取り付けられて掃除面に接触する掃除部と、
前記移動体と前記掃除部とを駆動する駆動装置と、
前記移動体と前記掃除部とを前記駆動装置で駆動制御する第1〜3,5〜11のいずれか1つの態様に記載の掃除機の制御装置と、
を備える掃除機を提供する。
【0039】
本発明の第14態様によれば、移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御方法であって、
前記掃除機に作用する人の力を力検出手段で検出し、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と前記力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する前記人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を補正動作種別決定手段で決定し、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を掃除動作補正手段で補正することを特徴とする掃除機の制御方法を提供する。
【0040】
このような構成により、掃除機の掃除動作に関する情報と掃除機に作用する前記人の力に関する情報とに基づき、前記掃除動作の補正種別を決定し、人の力を検出し、前記掃除機の作業中に、前記人の力と前記補正種別に応じて、前記掃除動作を提供することができる。
【0041】
本発明の第16態様によれば、移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御プログラムであって、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を補正動作種別決定手段で決定するステップと、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記掃除機に作用する前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を掃除動作補正手段で補正する掃除動作補正ステップとをコンピュータに実行させための掃除機の制御プログラムを提供する。
【0042】
このような構成により、掃除動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を補正動作種別決定手段で決定するステップと、前記人の力と前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を掃除動作補正手段で補正する掃除動作補正ステップとを有するプログラムを提供することができる。
【0043】
本発明の第17態様によれば、移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御用集積電子回路であって、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記掃除機に作用する前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を補正する掃除動作補正手段とを備えることを特徴とする掃除機の制御用集積電子回路を提供する。
【0044】
このような構成により、掃除を行う掃除機を制御する集積電子回路であって、前記掃除機の掃除動作に関する情報が記録された掃除動作の情報と力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する人の力に関する情報とに基づき、前記掃除動作の補正種別を決定する補正動作種別決定手段と、前記掃除機の作業中に、人の力を検出する力検出手段で検出しかつ情報取得部で取得した前記人の力と前記補正種別とに応じて、前記掃除動作を補正する掃除動作補正手段とを有することを特徴とする掃除機の制御用集積電子回路を提供することができる。
【0045】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【0046】
まず、本発明の前記実施形態における掃除機の一例としての掃除ロボット1の構成について説明する。
【0047】
図1A(図1Bは図1Aの掃除ロボット1を底面から見た図、図1Cは図1Aの掃除ロボット1を上方から見た図)は、本発明の前記実施形態における掃除ロボット1の概要を示す図である。図1Aにおいて、掃除ロボット1は、床面10上に置かれており、ロボット本体5と、ロボット本体5内に内蔵されかつロボット本体5を駆動制御する制御装置とで構成されている。ロボット本体5は、移動体の一例としての胴体部19と、胴体部19の底面に取り付けられて掃除面に接触する掃除部8,18と、胴体部19と掃除部8,18とを駆動する駆動装置65,67,69とを備えて構成され、駆動装置65,67,69を前記制御装置で駆動制御して、掃除したい場所、例えば家庭内などで掃除作業を行うものである。
【0048】
胴体部19には、吸引ポンプ13と、掃除部8(の一例としての吸引ノズル)を駆動する駆動装置の一例としての吸引ポンプ13のモータ67と、吸引した塵を溜める塵袋3と、胴体部19の底面でかつ掃除部8の周囲に胴体部19の中心に対して大略均等角度間隔で配置され胴体部19を移動させるための3つの車輪6と、3つの車輪6を正逆回転駆動する車輪用駆動装置の一例としての3つのモータ65と、ボタンなどが配置された操作盤26Aなどのデータ入力IF26と、表示手段の一例としての表示部14とを備えるように構成されている。8はロボット本体5の底面の取付部に着脱可能に取り付けられた掃除部の一例としての吸引ノズル、11は吸引ノズル8内に回転可能に収納されて吸引ノズル8内の回転ブラシ用モータ69により回転駆動されて床面10の塵をかき上げる回転ブラシ、18はロボット本体1に吸引ノズル8に代えて取付部に着脱可能に取り付け可能な掃除部の別の例としての、床面10の汚れをふき取るモップである。吸引ノズル8と吸引ポンプ13と塵袋3とはロボット本体5の内側に内蔵された図示しない吸引ホースで連結されている。吸引ノズル8内の回転ブラシ用モータ69は、掃除部8の一例としての吸引ノズル8を駆動する駆動装置の一例として機能する。30は胴体部19の上部(例えば、上面の中央部)に配置されて掃除作業者の手16で把持可能な把手である。図1Cに示すように、把手30は、その長手方向が吸引ノズル8(又はモップ18)の長手方向と平行となるように配置されて、吸引ノズル8(又はモップ18)の長手方向が、胴体部19の上方からでも、掃除作業者に直感的に理解できるようにしている。掃除ロボット1は、床面10の塵などを吸引ノズル8で吸引する掃除作業、床面若しくは壁若しくは机、若しくは、車の外面などの汚れをモップ18でふき取る作業、又は、鏡若しくは靴など力を入れてモップ18で磨く作業を行う掃除ロボットである。
【0049】
掃除ロボット1の操作手順の概要を説明する。
【0050】
まず、図2において、人の手16が掃除ロボット1のロボット本体5の上部に配置されているデータ入力IF26(例えば図13の操作盤26Aの電源ボタン26aの「ON」を押すなど)により電源を入れる。
【0051】
次に、塵などを吸引する場合は、ロボット本体5の胴体部19の底面の取付部に吸引ノズル8を人の手16で取り付けるとともに、拭き掃除又は磨く作業行う場合は、ロボット本体5の胴体部19の底面の取付部にモップ18を人の手16で取り付ける。人の手16で吸引ノズル8又はモップ18を胴体部19の底面の取付部に取り付ける際には、ボタンなどのデータ入力IF26からのデータ入力(例えば図13の操作盤26Aの、係止部を開閉(係止解除及び係止)させるための開閉ボタン26bの「開」を押すなど)により、胴体部19の底面の取付部の係止部の係止解除の指示を、掃除ロボット1の後述する制御部22へ指令を出し、係止部の係止解除を行なう。その後、吸引ノズル8若しくはモップ18を取付部に取り付け、データ入力IF26からのデータ入力(例えば図13の操作盤26Aの、係止部での係止を行わせるための開閉ボタン26bの「閉」を押すなど)により、取付部の係止部で吸引ノズル8若しくはモップ18に対する係止を行なう指示を制御部22へ指令を出して、係止部で係止を行なうことにより、取付部に吸引ノズル8若しくはモップ18を着脱可能に取り付けてかつ脱落防止のために係止部で係止する。
【0052】
次に、ロボット本体5の上部に配置されているデータ入力IF26(例えば図13の操作盤26Aの掃除スイッチ26cのスタートボタンなど)を人の手16で押すことにより、ロボット本体5が作動し、後述する動作選択部29で最適な掃除動作(例えば吸引若しくは拭き掃除動作)を選択して、その選択された掃除動作に基づく掃除作業(例えば、吸引若しくは拭き掃除作業)を開始させる。
【0053】
拭き掃除動作の際には、図16A、図16B(図16Aを上方から見た図)に示すように、3個の車輪6のそれぞれの駆動により、ロボット本体5の胴体部19が床面10の掃除面(xy平面)を例えば螺旋を描くような軌跡で自走しながらモップ18が前記螺旋を描くような軌跡で拭き掃除動作を行う。また、吸引の掃除動作の際には、図16Cに示すように、3個の車輪6のそれぞれの駆動によりロボット本体5の胴体部19が床面10の掃除面を左右方向沿いに自走しながら、自走方向と同じ左右方向で吸引掃除を行う。
【0054】
なお、データ入力IF26は、ロボット本体5の上面に固定したが、遠隔操作が可能なリモコンでも良い。
【0055】
次に、人(掃除作業者)は掃除面の汚れ具合を確認し、ロボット本体5の把手30を人の手16で直接把持して、掃除動作を補正したい方向(例えば、汚れ具合のひどい領域に向けて、ロボット本体5の吸引ノズル8又はモップ18を移動させるように移動方向を変えたい方向)に力をかけることで、例えば、図12Aのように、ロボット本体5の動作を補正する。すなわち、図12A及び図12Bに示すように、胴体部19の前後方向沿いに胴体部19を例えばジグザグ方向に実線で示すように移動させて吸引ノズル8又はモップ18で掃除動作を行なっているとする。このとき、図12Cに示すように、例えば点線のジグザグ方向で示すように胴体部19を左方向にずれた位置でジグザグ方向に移動させるように、ロボット本体5の把手30に人の手16により、矢印で示すように力をかけて、ロボット本体5の吸引ノズル8又はモップ18を左方向に移動させる。このようにすることで、図12Dに示すように、吸引ノズル8又はモップ18が、図12Cでの胴体部19の前後方向沿いの中心軸沿いの位置に対して、左側の領域において、吸引ノズル8又はモップ18による掃除動作を例えばジグザグ方向に実線で示すように行なうことができる。
【0056】
図3は、掃除ロボット1を構成する制御装置の構成要素を詳細に示す図であり、制御装置本体部45と、動作を生成する動作生成装置12と、制御対象であるロボット本体5と、制御対象である胴体部19と、周辺装置47との詳細構成を示す図である。掃除ロボット1の制御装置は、制御装置本体部45と、動作生成装置12と、周辺装置47とで大略構成されている。
【0057】
制御装置本体部45及び動作生成装置12及び周辺装置47は、それぞれ、一般的なパーソナルコンピュータにより構成される。
【0058】
制御装置本体部45は、動作生成装置12の掃除動作補正手段の一例としての掃除動作補正部20と補正動作種別決定手段の一例としての補正動作種別決定部23と周辺装置47のデータ入力IF26とにそれぞれ接続された制御パラメータ管理手段の一例としての制御パラメータ管理部21と、制御パラメータ管理部21と周辺装置47の入出力IF24とに接続されたインピーダンス制御手段の一例としての制御部22と、掃除動作補正部20に接続された衝突検出手段の一例としての衝突検出部31を備えるように構成される。
【0059】
動作生成装置12は、掃除方法データベース17と、掃除不可領域データベース28と、補正種別決定方法設定部27と、掃除動作補正部20と、補正動作種別決定部23と、掃除方法記憶部15と、動作選択部29と、情報取得部100とを備えるように構成される。掃除方法記憶部15は、掃除方法データベース17と掃除不可領域データベース28と掃除動作補正部20とに接続されている。掃除方法データベース17と掃除不可領域データベース28とは、それぞれ、掃除方法記憶部15と掃除動作補正部20と動作選択部29とに接続されている。掃除動作補正部20は、掃除方法データベース17と掃除不可領域データベース28と掃除方法記憶部15と制御装置本体部45の制御パラメータ管理部21と補正動作種別決定部23と周辺装置47のデータ入力IF26とが接続されている。補正動作種別決定部23は、掃除動作補正部20と補正種別決定方法設定部27と周辺装置47のデータ入力IF26と制御装置本体部45の制御パラメータ管理部21と表示部14とに接続されている。動作選択部29は、掃除方法データベース17と掃除不可領域データベース28とデータ入力IF26と接続されている。補正種別決定方法設定部27は、データ入力IF26と補正動作種別決定部23と接続されている。
情報取得部100は、補正動作種別決定部23と、掃除方法データベース17と掃除不可領域データベース28と、制御部22の力検出部53と接続されている。よって、情報取得部100は、掃除作業における掃除部8,18の吸引力及び掃除部8,18の掃除位置を含む掃除動作に関する情報と、力検出部53で検出されたロボット本体5に作用する人の力に関する情報とをそれぞれ取得可能としている。情報取得部100で取得した情報は、補正動作種別決定手段23に入力され、情報取得部100でそれぞれ取得した掃除動作に関する情報と人の力に関する情報とから、後述するように、掃除動作を補正する補正動作の種別を補正動作種別決定手段23で決定することができる。
【0060】
周辺装置47は、補正動作種別決定部23と掃除動作補正部20と制御装置本体部45の制御パラメータ管理部21と表示部14と動作選択部29とに接続されたデータ入力IF26と、それぞれの車輪6のモータ65のそれぞれのエンコーダ64と吸引ポンプ13のエンコーダ66と回転ブラシ11のモータ69のエンコーダ68とからそれぞれの角度情報が入力されるとともに制御部22とモータドライバ25とに接続された入出力IF24と、それぞれの車輪6のモータ65と吸引ポンプ13のモータ67と回転ブラシ11のモータ69と入出力IF24とにそれぞれ接続されたモータドライバ25と、補正動作種別決定部23に接続された表示部14とを備えるように構成される。
【0061】
入出力IF24は、パーソナルコンピュータのPCIバスなどの拡張スロットに接続された、例えばD/Aボードと、A/Dボードと、カウンタボードとなどを備えるように構成されている。
【0062】
ロボット本体5の胴体部19の動作を制御する動作生成装置12と、制御装置本体部45と、周辺装置47とが、それぞれの動作を実行することにより、ロボット本体5の胴体部19の各車輪6のモータ65のエンコーダ64より出力される各車輪6の位置情報(回転角度情報)が入出力IF24を通じて制御装置本体部45に取り込まれ、制御装置本体部45は、取り込まれた各角度情報に基づき、胴体部19の各車輪6のモータ65の制御指令値を算出する。また、吸引ポンプ13のモータ67のエンコーダ66より出力される吸引力が入出力IF24を通じて制御装置本体部45に取り込まれ、制御装置本体部45は、取り込まれた吸引力に基づき、吸引ポンプ13のモータ67の制御指令値を算出する。さらに、回転ブラシ11のモータ69のエンコーダ68より出力される回転力が入出力IF24を通じて制御装置本体部45に取り込まれ、制御装置本体部45は、取り込まれた回転力に基づき、回転ブラシ11のモータ69の制御指令値を算出する。
【0063】
算出された3個の車輪6のそれぞれの制御指令値は、制御部22から入出力IF24を通じてモータドライバ25に与えられ、モータドライバ25から送られた各制御指令値に従って、各車輪6のモータ65がそれぞれ独立して駆動される。
【0064】
また、算出された吸引ポンプ13のモータ67の制御指令値は、入出力IF24を通じてモータドライバ25に与えられ、モータドライバ25から送られた制御指令値に従って、吸引ポンプ13のモータ67が駆動される。
【0065】
また、算出された回転ブラシ11のモータ69の制御指令値は、入出力IF24を通じてモータドライバ25に与えられ、モータドライバ25から送られた制御指令値に従って、回転ブラシ11のモータ69が駆動される。
【0066】
46は胴体座標系であり、あらかじめ記憶されている作業経路(例えば図8に示す掃除領域(掃除面)RA内の掃除ロボット1の作業経路)の開始点Oからの胴体部19の相対的な位置関係を示す。41は掃除部8,18の胴体座標系46対する相対的な位置関係が固定された座標系である。
【0067】
作業経路の開始点Oから見た胴体座標系46の原点位置O(x、y)を胴体位置とする。さらに、胴体座標系46から見た掃除部8,18の座標系41の原点位置O(x、y、z)をロボット本体5の掃除位置(掃除部8,18の位置)(言い換えれば、掃除部8,18の掃除位置)とし、掃除部8,18の掃除位置ベクトルをベクトルr=[x、y、z]と定義する。
【0068】
掃除部8,18の掃除位置を制御する場合には、掃除位置ベクトルrを、後述する目標軌道生成部55で生成された掃除位置の目標ベクトルrに追従させることになる。
【0069】
26はデータ入力IF(インターフェース)であり、人(掃除作業者)がボタン又はキーボード又はマウス又はマイクなどの入力装置を使用して、掃除作業の開始、又は、終了などの指令を掃除ロボット1に入力するインターフェースである。
【0070】
表示部14は、例えば胴体部19の上面に設置されたディスプレイ装置であり、後述する掃除動作又は補正するパラメータの種別などを表示部14に表示する。
【0071】
掃除方法データベース17は、ロボット本体5の胴体部19の、ある時間における位置など掃除時の動作に関する情報(掃除動作に関する情報)を記憶して保持している。ここで、掃除動作に関する情報とは、前記掃除ロボット1が行う前記掃除作業に応じた、前記掃除部8,18の前記掃除位置の情報と、前記掃除部8,18から掃除面にかける力情報と、前記掃除部8,18の掃除の方向に関する情報と、前記掃除部8,18の吸引力の強さに関する情報と、前記掃除部8,18の速度情報と、掃除を行わない領域RB(図11に図示)に関する情報である掃除不可領域情報のうちの少なくとも1つの情報を含むものである。
【0072】
掃除方法データベース17の詳細について説明する。
【0073】
掃除方法データベース17は、例えば、図4に示した掃除ロボット1の動作に関する情報で、掃除作業を識別する作業ID番号と、その作業内の個々の動作を識別する動作ID番号と、その動作における胴体部19の位置に関する情報と、掃除部8,18の掃除位置に関する情報(掃除部8,18の前記掃除位置の情報)と、ロボット本体5が掃除面にかける力に関する情報と、吸引力の強さに関する情報と、掃除部8,18の掃除位置と力と吸引力とのパラメータのうちのいずれの情報が有効か否かを示すフラグ(有効性を示すフラグ)に関する情報と、各動作が作用する時間に関する情報と、後述する掃除動作補正部20で掃除方法データベース17の動作情報を補正する際の補正すべきパラメータの種別に関する情報と、現在動作中かどうか、を示す進捗情報とを保持するように構成される。
【0074】
掃除方法データベース17の掃除作業を識別する作業ID番号は、複数種類の掃除作業がある場合に、互いに識別するために、それぞれの掃除作業に対して付された作業ID番号を表す情報である。
【0075】
掃除方法データベース17の掃除作業内の個々の動作を識別する動作ID番号は、1つの掃除作業が複数の掃除動作で構成されている場合に、1つの掃除作業内の個々の掃除動作を互いに識別するために、それぞれの掃除動作に対して付された動作ID番号を表す情報である。
【0076】
掃除方法データベース17の胴体部19の位置に関する情報は、床面10をXY平面とするときの前述した胴体部19の胴体位置の情報を表し、すなわち、作業経路の開始点Oから見た胴体座標系46の原点位置O(x、y)とし、例えば図8に示す掃除ロボット1の作業経路を表すことができる。具体的には、図8のように、掃除ロボット1が掃除面をジグザグに走行して掃除動作を行なう場合の作業経路においては、胴体部19の第1移動方向変更点(x、y)、第2移動方向変更点(x、y)、第3移動方向変更点(x、y)、第4移動方向変更点(x、y)などを記憶する。
【0077】
掃除方法データベース17の胴体部19の位置に関する情報は、掃除方法データベース17内に、予め設定しておくか、若しくは、掃除ロボット1に画像認識装置の一例としてカメラ(図示せず)を搭載して、カメラで撮像した画像を画像認識処理部で画像認識処理して、画像認識により障害物を検知するか、又は、掃除ロボット1に超音波センサなどの障害物感知センサ(図示せず)を搭載し、障害物感知センサで障害物を検知し、検知された障害物を避けるように掃除ロボット1の走行方向の経路(例えば図8の経路)を掃除方法記憶部27で生成して、時間と共に、掃除方法記憶部27に記憶する。
【0078】
掃除方法データベース17の掃除部8,18の掃除位置に関する情報は、原点位置O(x、y)からの相対位置座標として、原点位置Oから(x、y、z)と表す。
【0079】
掃除方法データベース17に記憶されているロボット本体5がかける力に関する情報は、ロボット本体5が作業をする際に対象となる物体にかける力の情報を示し、ロボット本体5のx、y、z方向にかける力をそれぞれf、f、fとする。掃除方法データベース17では、(f、f、f)と表す。例えばf=5[N]である場合は、z軸方向に5Nの力をかけて作業することを表し、床面10を拭き掃除する際に、床面10の垂直方向に力をかけて擦る場合などに使用するパラメータである。
【0080】
掃除方法データベース17の吸引力に関する情報は、ロボット本体5の掃除部8で吸引作業をする際の吸引する力を示す。ロボット本体5の掃除部8でのx、y、z方向の吸引力をそれぞれp、p、pとする。掃除方法データベース17では、(p、p、p)と表す。例えばpの値が大きくなるにつれて吸引力が大きくなり、例えば、絨毯などの場合は吸引力が大きく設定(例えば「5」の値に設定)され、畳又は床などの場合は吸引力が小さく設定(例えば「2」の値に設定)される。
【0081】
掃除方法データベース17の、掃除部8,18の掃除位置と力と吸引力とのパラメータのうちのいずれの情報が有効か否かを示すフラグ(有効性を示すフラグ)に関する情報、すなわち、図4の掃除方法データベース17のフラグの情報は、各動作IDが示す掃除部8,18の掃除位置と力と吸引力とのうちのいずれの情報が有効かを示す値であり、具体的には、図5で示した32ビットの数値で表す。図5において、それぞれのビットで位置、力、吸引力のそれぞれの値が有効の場合は「1」とし、無効の場合は「0」とする。例えば、0ビット目は位置のx座標の値が有効の場合は「1」とし、無効の場合は「0」とする。1ビット目は位置のy座標の値が有効の場合は「1」とし、無効の場合は「0」とする。2ビット目は位置のz座標の値が有効の場合は「1」とし、無効の場合は「0」とし3ビット目〜5ビット目は力のそれぞれの成分f、f、fが有効か無効かを表す。6〜8ビット目は吸引力のそれぞれの成分p、p、pが有効か無効かを示す。また、フラグは将来の拡張用に多め(32ビット)に用意しているため、この例では、9ビット目から31ビット目は使用しないので、「0」を入れておくが、9ビット目のみ、格納できる変数としても良い。図5では、0ビット目から1ビット目が「1」となり、5ビット目が「1」となっているので、動作情報のうち、位置のx、y情報と力のf情報のみが有効であることを示し、動作情報のうち、位置のz、及び、力のf以外の値、及び、吸引力のそれぞれに、どういう値が記憶されていても無効であるとする。
【0082】
掃除方法データベース17の各動作が作用する時間に関する情報、すなわち、図4の掃除方法データベース17の時間は、各動作を掃除ロボット1が実行するために必要な時間であり、この動作IDに記憶された動作を、ここで記憶された時間をかけて掃除ロボット1が動作することを表す。この時間は、絶対時刻ではなく、前の動作からの相対時間を表す。すなわち、動作IDが示す胴体部19の位置及び掃除部8,18の掃除位置に、胴体部19及び掃除部8,18がそれぞれ移動するまでの時間を表す。
【0083】
掃除方法データベース17の、掃除動作補正部20で掃除方法データベース17の動作情報を補正する際の補正すべきパラメータの種別に関する情報、すなわち、図4の補正パラメータフラグは、後述する補正動作種別決定部23で決定した種別に応じて、どのパラメータを補正するかを表す情報である。具体的には、図6に示した32ビットの数値で表す。図6において、それぞれのビットで位置、力、吸引力のそれぞれの値の補正が可能な場合は「1」とし、補正が不可能な場合は「0」とする。例えば、0ビット目は位置のx座標の値の補正が可能な場合は「1」とし、不可能な場合は「0」とする。1ビット目は位置のy座標の値の補正が可能な場合は「1」とし、不可能な場合は「0」とする。2ビット目は位置のz座標の値の補正が可能な場合は「1」とし、不可能な場合は「0」とする。同様に、3ビット目〜5ビット目は力の補正可能性を表し、6ビット目〜8ビット目は吸引力のそれぞれの成分が補正可能性を表す。また、フラグは将来の拡張用に多め(32ビット)に用意しているため、この例では、9ビット目から31ビット目は使用しないので、「0」を入れておくが、9ビット目のみ、格納できる変数としても良い。
【0084】
掃除方法データベース17の、現在動作中かどうか、を示す進捗情報は、掃除ロボット1の現在動作中の動作であるかどうか、を示す情報で、動作中の場合は「1」を記録するとともに、動作中でない場合は「0」を記録する。具体的には、人(掃除作業者)は、データ入力IF26を介して作業したい掃除作業を選択して、選択された情報がデータ入力IF26から動作選択部29に入力される。選択した作業のうちの一番目の掃除動作が掃除ロボット1で開始されると、動作選択部29により、その作業を構成する複数の動作のうち、現在動作中の動作について「1」を掃除方法データベース17に記憶するとともに、動作していない動作について「0」を掃除方法データベース17に記憶する。なお、動作中か否かの情報は、制御部22から指令した動作が終了したことの通知を、掃除動作補正部20を介して掃除方法記憶部15に入力し、掃除方法記憶部15にて掃除方法データベース17に記憶する。
【0085】
図3の動作選択部29は、掃除方法データベース17の作業一覧(例えば、図13の掃除スイッチ26cの中央に表示された「拭く」及び「吸引」というような作業表示)から最適な掃除作業を人がデータ入力IF26を介して選択するとき、選択された作業のうち、現在、動作している動作IDの進捗情報に「1」を設定して掃除方法データベース17に記憶し、その他の動作については「0」を設定して掃除方法データベース17に記憶する。
【0086】
掃除不可領域データベース28は、掃除ロボット1で掃除をしない領域に関する情報を記憶しており、具体的な情報については、図10に示す。図10において、掃除不可領域の位置(x、y)は、人(掃除作業者)が、掃除ロボット1により掃除をしてほしくない領域を表す。例えば、図11の掃除可能面Rのうち、斜線の領域を掃除不可領域RBとした場合は、その領域RBを表すのに必要な座標(この例では、矩形領域の4個の角の座標(xc1,yc1)、(xc2,yc2)、(xc3,yc3)、(xc4,yc4)を記憶する。なお、それぞれの座標は、掃除を行う掃除領域RAの作業経路のうち、掃除を開始する座標Oからの相対座標で表す。これらの掃除不可領域RBを表す座標は、後述する掃除動作補正部20で生成され、掃除不可領域データベース28に記憶される。
【0087】
補正動作種別決定部23は、後述する掃除動作補正部20にて、人がその手16によりロボット本体5(把手30)に力をかけることにより掃除動作の補正を行うことが可能な補正の種別を決定する。例えば、図12Cのように、人がその手16によりロボット本体5に横方向から力をかけると、ロボット本体5の掃除面に対する平行な方向(例えば、掃除面が水平方向沿いの場合には水平方向を意味する。以下の説明では、説明を簡単にするため、単に「水平方向」と称する。)の位置を移動することで、掃除領域RAを平行移動させることができる。この場合の補正動作の種別は、「掃除面の位置の移動」である。図27Aに示すように掃除ロボット1で床面10を拭き掃除中に、図27Bに示すように、人がその手16により掃除ロボット1の把手30の上方からロボット本体5に下向きの力をかけると、後述する掃除動作補正部20によって、図27Cのように掃除時の力のかけ具合を強めに設定することができる。この場合の補正動作の種別は、「力のかけ具合」である。このように、補正動作種別決定部23は、人の手によるロボット本体5への力のかけ具合と掃除部8,18の掃除位置などから、掃除動作の補正の種別を決定することができる。なお、詳細については後述する。
【0088】
掃除動作補正部20は、掃除方法データベース17に記憶された位置と時間との情報に基づいて掃除ロボット1が掃除動作中に、人が手16により把手30に力をかけることにより、掃除方法データベース17の掃除動作情報を補正する機能を持っている。詳細については、後述する。
【0089】
掃除方法記憶部15は、掃除動作補正部20により補正した動作情報を掃除方法データベース17若しくは掃除不可領域データベース28に記憶する。
【0090】
次に、衝突検出部31の詳細について説明する。
【0091】
衝突検出部31は、例えば接触センサー又は力センサなどのように人又は障害物にロボット本体5が接触した際にロボット本体5に作用する力を検出する。図30Aに示すように、掃除ロボット1のロボット本体5の胴体部19の側面に衝突検出部31が複数個(例えば、所定間隔毎に)配置されている。衝突検出部31で検出した力が閾値(例えば5(N))以上であると、衝突検出部31で判断する場合には、掃除動作補正部20に、検出した力を衝突検出部31から出力する。具体的には、図30Aのように、人(例えば、人の手16)が胴体部19の側面に接触した場合、又は、図30Bのように、ロボット本体5(胴体部19)が壁10Wなどに衝突した場合の力を衝突検出部31で検出する。
【0092】
次に、制御パラメータ管理部21の詳細について説明する。
【0093】
制御パラメータ管理部21は、掃除動作補正部20の動作補正指示に基づいて、掃除ロボット1のインピーダンス制御モードと、ハイブリッドインピーダンス制御モードと、力制御モードと、力ハイブリッドインピーダンス制御モードと、高剛性の位置制御モードとを切り替える設定、及び、それぞれの制御モード時の機械インピーダンス設定値の設定、及び、それぞれの制御モードで制御部22のインピーダンス計算部51で出力する掃除位置の目標補正出力rdΔの設定、及び、制御部22の目標軌道設定部55への動作情報の設定を行う。
【0094】
さらに、制御パラメータ管理部21は、掃除情報データベース17に記憶されている胴体部19の位置(作業経路の開始点Oから見た胴体座標系46の原点位置O(x、y))から、掃除不可領域データベース28の掃除不可領域RBを除いた掃除領域RAでの掃除経路を生成する。また、制御部22から掃除ロボット1の掃除部8,18の掃除位置又は力の情報などの情報を制御パラメータ管理部21で受けて、制御パラメータ管理部21から掃除動作補正部20へそれらの情報の通知を行う。
【0095】
位置制御モードは、後述する目標軌道生成部55の位置の目標ベクトル指令に基づいて、ロボット本体5が作動するモードである。
【0096】
インピーダンス制御モードは、人などからロボット本体5に加わる力に応じて、ロボット本体5が作動するモードである。
【0097】
ハイブリッドインピーダンス制御モードは、位置制御モードでロボット本体5が動作している最中に、人などからロボット本体5に加わる力に応じて、ロボット本体5が作動するモード(インピーダンス制御モード)であり、位置制御モードとインピーダンス制御モードを同時に行うモードである。例えば、掃除面の塵などを吸引する掃除作業中に、図12Bのように、人の手16でロボット本体5の把手30を直接持って、又は、人の手16で胴体部19の側面を直接押して、ロボット本体5の掃除領域RAを平行移動させるなどの補正を行うモードである。
【0098】
力制御モードは、制御部22へ予め与えられた力でロボット本体5が掃除面に対して吸引ノズル8又はモップ18を押し付けながら掃除動作する制御モードで、例えば、掃除面に対してロボット本体5が、ある力をかけて汚れをふき取る掃除動作をする際に、ロボット本体5の掃除面成分に使用する制御モードである。
【0099】
力ハイブリッドインピーダンス制御モードは、3軸の方向別にハイブリッドインピーダンス制御モードかインピーダンス制御モードかを切り替え、さらに、指定した力を作用させて動作する力制御モードで動作させる制御モードである。なお、力制御モードが設定された方向にインピーダンス制御モードを設定することはできない(力制御モードとインピーダンス制御モードは排他的な関係)。
【0100】
これらの制御モードは、掃除動作の際に、ロボット本体5の方向別に、それぞれ、以下のように、適切な制御モードを設定して動作させる。
【0101】
例えば、掃除ロボット1が、図22のように床面10の掃除面に平行に円状に動作しながら、掃除面に垂直下向きに指定した力をかけて、拭き掃除をする場合には、力ハイブリッドインピーダンス制御モードを設定する。具体的には、(x、y、z)の3軸のそれぞれに、以下の制御モードを設定する。すなわち、(x、y)成分がハイブリッドインピーダンス制御モードで動作し、z軸成分が力制御モードで動作する力ハイブリッドインピーダンス制御モードである。このように床面10と平行な方向は、ハイブリッドインピーダンス制御モードとすることで、位置制御モードで動作している最中に、人などからロボット本体5に加わる力に応じて、ロボット本体5を移動させることができる。また、z軸成分を力制御モードに設定することで、指定された力で押し付けながら拭き掃除動作することができるようになる。
【0102】
同様に、ロボット本体5が、図23のように掃除面に平行に円状に動作しながら、掃除面の塵を吸引して掃除する場合においても、力ハイブリッドインピーダンス制御モードを設定する。具体的には、(x、y)成分をハイブリッドインピーダンス制御モードで動作させ、z軸成分を力制御モードで動作させる。
【0103】
高剛性位置制御モードは、掃除作業中の位置制御モードを、さらに高剛性にしたモードで、かつ、車輪制御部48でのゲインを大きくすることで実現し、人の手16により力をロボット本体5(把手30)にかけると、ロボット本体5を容易に移動させないようにすることができ、掃除部8,18の掃除位置の変化量により、人の手16がかけた力を力検出手段の一例としての力検出部53で検出することができる。力検出部53については、後述する。
【0104】
機械インピーダンス設定値の設定パラメータとしては、慣性M、粘性D、剛性Kがある。機械インピーダンス設定値の各パラメータの設定は、補正値を使って、以下の評価式に基づいて行う。
【0105】
【数1】

【0106】
【数2】

【0107】
【数3】


前記式(1)〜(3)中のKM、KD、KKはゲインであり、それぞれ、ある定数値である。
【0108】
制御パラメータ管理部21は、前記式(1)〜(3)に基づいて計算した機械インピーダンスパラメータの慣性M、粘性D、剛性Kを制御部22へそれぞれ出力する。
【0109】
前記式(1)〜(3)により、例えば、図12Cのように、人が掃除面の領域を移動させるように補正させたい場合に、x軸及びy軸以外の位置成分(例えば、z軸の位置成分)が簡単に動くと、前記補正作業を行うことが困難になる。そこで、x軸及びy軸以外の位置成分(例えば、z軸の位置成分)についてのみ、制御パラメータ管理部21で、上述の補正値を高く(具体的には約10倍だけ高く)設定することで、粘性D及び剛性Kが大きくなるように設定されることになり、ロボット本体5の動きに抵抗感又は硬さが生じ、x軸及びy軸以外の位置成分(例えば、z軸の位置成分)について動きにくくなる。
【0110】
又は、別の方法として、後述するインピーダンス計算部51から出力される掃除位置の目標補正出力rdΔの各成分のうち、x軸及びy軸以外の値を、制御パラメータ管理部21で、全て0にする方法がある。これによって、x軸及びy軸以外は、人の手16の力で移動できなくなるため、誤操作を防ぐことができる。
【0111】
さらに、掃除動作補正部20に、掃除部8,18の掃除位置と、人のかけた力の情報(ロボット本体5(把手30)に作用する人の力に関する情報)とを制御パラメータ管理部21から通知する必要がある。そのため、制御部22から掃除部8,18の掃除位置及び力の情報を制御パラメータ管理部21が受けて、動作選択部29と、掃除方法記憶部15と、掃除動作補正部20とへ制御パラメータ管理部21から通知を行う。また、制御パラメータ管理部21は、掃除動作補正部20から入力された、位置と時間となどの動作情報を制御部22へ通知する。
【0112】
図7は制御部22のブロック図を示す。制御部22は、制御パラメータ管理部21で設定された制御モードで動作し、さらに制御モードに応じて、慣性Mと粘性Dと剛性Kとの設定値に基づき設定された車輪6の機械インピーダンス設定値に、車輪6の機械インピーダンスの値を制御する。さらに、制御部22は、吸引を行う掃除の場合には、指定された吸引力で吸引しながら、回転ブラシ11を回転させる制御を行う。さらに、制御部22は、拭き掃除の場合には、指定された力で掃除面を押し付ける制御を行う。さらに、制御部22は、胴体部19の底部に配置されたそれぞれの車輪6を制御して、胴体部19を指定された位置に移動する制御を行う。
【0113】
次に、制御部22の詳細について、図7により説明する。
【0114】
制御部22は、ロボット本体5の胴体部19の3個の車輪6のモータ65のそれぞれの駆動を制御する車輪制御部48と、吸引ポンプ13のモータ67の駆動を制御する吸引ポンプ制御部2と、回転ブラシ11のモータ69の駆動を制御する回転ブラシ制御部9とを備えるように構成される。
【0115】
制御部22は、インピーダンス計算部51と、力検出手段の一例としての力検出部53と、目標軌道生成部55とを備えて構成している。
【0116】
目標軌道生成部55は、制御パラメータ管理部21からの掃除動作の入力を受けて、目標とする掃除ロボット1の掃除動作を実現するための、掃除位置の目標ベクトルrと、力ベクトルfと、それぞれの方向別にどのパラメータが有効かを示すフラグ(有効性を示すフラグ)とが出力される。目標とするロボット本体5の動作は、目的とする掃除作業に応じて、掃除動作補正部20から、制御パラメータ管理部21を介して、それぞれの時間(t=0、t=t、t=t、・・・)でのポイントごとの掃除位置(rd0、rd1、rd2、・・・)の情報と、力(fd0、fd1、fd2、・・・)の情報と、吸引力(pd0、pd1、pd2、・・・)の情報とが目標軌道生成部55に与えられる。
【0117】
目標軌道生成部55は、多項式補間を使用し、各ポイント間の掃除位置と力と吸引力とを補間し、掃除位置の目標ベクトルr及び力ベクトルf及び吸引力pを生成する。
【0118】
力検出部53は、力検出手段の一例として機能し、人などとロボット本体5との接触によってロボット本体5に加わる外力Fextを検出する。この例では、把手30に配置されて、把手30に加わる外力Fextを検出できるようにしている。力検出部53の具体的な例としては、ひずみゲージを利用した各軸方向の力の3成分を検出する力学センサーであり、車輪6側からの信号と力検出部53の力の信号とがインピーダンス計算部51に入力される。
【0119】
インピーダンス計算部51は、車輪6の機械インピーダンス設定値に、車輪6の機械インピーダンスの値の制御を実現する機能を果たす部分であって、制御パラメータ管理部21において設定された車輪6の機械インピーダンスパラメータの慣性Mと粘性Dと剛性Kと力検出部53により計算されたロボット本体5に加わる外力Fextとから、掃除位置の目標補正出力rdΔを出力する。
【0120】
インピーダンス制御モードが指定された際には、インピーダンス計算部51から掃除位置の目標補正出力rdΔを出力する。力ハイブリッドインピーダンス制御モードに切り替えられた際には、フラグ(有効性を示すフラグ)で有効と指定された力成分が存在する場合には、制御パラメータ管理部21で設定されたインピーダンスパラメータである慣性Mと粘性Dと剛性Kと、力検出部53が検出した外力Fextと、目標軌道生成部55から出力されるfとに基づいて、前記ロボット本体5の車輪6の機械インピーダンスの値がロボット本体5の車輪6の機械インピーダンス設定値に近づくようにする制御を実現するための掃除位置の目標補正出力rdΔを、以下の式(4)によりインピーダンス計算部51で計算し、インピーダンス計算部51から車輪制御部48に出力する。
【0121】
掃除位置の目標補正出力rdΔは、目標軌道生成部55から出力する掃除位置の目標ベクトルrに、車輪制御部48で加算され、掃除位置の補正目標ベクトルrdmが生成される。例えば、z軸方向のみ、力をかけて掃除し、その他の成分は位置制御モードで動くようにするには、掃除位置の目標補正出力rdΔのz成分以外を0に車輪制御部48で設定する。
【0122】
【数4】


ただし、
【0123】
【数5】

【0124】
【数6】

【0125】
【数7】


であり、sはラプラス演算子である。
【0126】
高剛性位置制御モードが設定された際に、車輪制御部48におけるゲインを予め設定された値に大きく設定することで((具体的には、(ゲインは、車輪6の剛性を設定する値で、車輪制御部48内で使用される。)通常の位置制御モード時の2倍程度の値に設定することで)、高剛性の位置制御を実現することができる。なお、前記ゲインを各成分毎に値を変えることで、例えば、z軸方向のみ、高剛性で、その他の方向は通常の位置制御で動作するよう制御することができる。
【0127】
吸引ポンプ制御部2は、吸引を行う掃除の場合に、目標軌道生成部55から入力された吸引力に応じて、吸引ポンプ13のモータ67を駆動制御する。拭き掃除を行う掃除の場合には、吸引ポンプ13のモータ67は駆動しない。吸引ポンプ13のモータ67が駆動されると、掃除面の塵が吸引ノズル8を介して吸引ホース(図示せず)を伝って吸い込まれ、塵袋3に格納される。
【0128】
回転ブラシ制御部9は、目標軌道生成部55から入力された吸引力に応じて、回転ブラシ11のモータ69を駆動制御して、回転ブラシ11を回転させる制御を行う。
【0129】
車輪制御部48は、目標軌道計算部55から出力された掃除部8,18の位置情報である掃除位置の目標ベクトルrと、インピーダンス計算部51から出力された掃除位置の目標補正出力rdΔの和である掃除位置の補正目標ベクトルrdmを計算して、計算結果に基づき、3個の車輪6のモータ65をそれぞれ駆動制御してロボット本体5(胴体部19)を移動させるよう3個の車輪6の回転制御をそれぞれ行う。具体的には、3個の車輪6のそれぞれのモータ65の駆動を車輪制御部48によりそれぞれ独立して正逆回転制御して、ロボット本体5(胴体部19)を前進、後退、左右、中心軸周りに正逆回転方向に移動可能としている。
【0130】
以下、掃除ロボット1の制御プログラムの実際の動作ステップについて、図25のフローチャートに基づいて説明する。
【0131】
掃除動作補正部20から送信された動作情報に基づき、目標軌道計算部55は、掃除部8,18の掃除位置の目標ベクトルr及び力目標ベクトルfを計算する(ステップS54)。
【0132】
次いで、力検出部53は、ロボット本体5の外力Fextを検出する(ステップS55)。
【0133】
次いで、ステップS56では、制御パラメータ管理部21で設定された制御モードを設定する。高剛性位置制御モードのみの場合には、ステップS57に処理を進める。一方、ステップS56で、力ハイブリッドインピーダンス制御モード若しくはインピーダンス制御モード若しくはハイブリッドインピーダンス制御モードの場合には、ステップS58へ処理を進める。
【0134】
ステップS57(インピーダンス計算部51での処理)では、制御パラメータ管理部21において、高剛性位置制御モードが設定された場合には、インピーダンス計算部51で、掃除位置の目標補正出力rdΔを0ベクトルとする。その後、ステップS59に進む。
【0135】
高剛性位置制御モードが設定された場合には、ステップS57の後、ステップS59に進み、車輪制御部48で、ゲインを、ある値まで大きくすることで、高剛性の位置制御を実現する。その後、ステップS61に進む。
【0136】
一方、ステップS58では、制御パラメータ管理部21において、力ハイブリッドインピーダンス制御モード、若しくはインピーダンス制御モード若しくはハイブリッドインピーダンス制御モードが設定された場合には、制御パラメータ管理部21において設定された車輪6の機械インピーダンスパラメータの慣性Mと粘性Dと剛性Kと、力検出部53により検出されたロボット本体5に加わる等価外力Fextとから、掃除位置の目標補正出力rdΔが、インピーダンス計算部51により計算される。
【0137】
次いで、ステップS60において、車輪制御部48では、目標軌道計算部55から出力された掃除位置の目標ベクトルrと、インピーダンス計算部51から出力された掃除位置の目標補正出力rdΔの和である掃除位置の補正目標ベクトルrdmを計算する。その後、ステップS61に進む。
【0138】
ステップS61では、車輪制御部48での出力が、入出力IF24を通じて、モータドライバ25に与えられ、それぞれの車輪用のモータ65を駆動させる(2)。
【0139】
以上のステップS54〜ステップS61が制御の計算ループとして繰り返し実行されることにより、ロボット本体5の動作の制御、すなわち、ロボット本体5の車輪6の機械インピーダンスの値を、前記適切に設定された機械インピーダンスの設定値に制御する動作を実現することができる。
【0140】
次に、補正動作種別決定部23と掃除動作補正部20について詳細に説明する。
【0141】
補正動作種別決定部23は、掃除動作補正部20にて、人の手16によりロボット本体5(把手30)に力をかけることで掃除動作の補正を行うことが可能な補正の種別を決定する。以下の6種類の補正の種別がある。
【0142】
1つ目の補正の種別は、「掃除面の位置の移動」である。具体的には、図12A又は図12B(図12Aを上方から見た図)のように、ロボット本体5で位置制御モードで床面10を掃除中に、図12Cのように人の手16によりロボット本体5に横方向から力をかけると、掃除動作補正部20によって、図12Dのようにロボット本体5(胴体部19)の掃除面に対する水平方向にずれた位置にロボット本体5(胴体部19)が移動することで、掃除領域RAを平行移動することができる。
【0143】
2つ目の補正の種別は、拭き掃除時の床面10に対する「力のかけ具合」である。これは、現在動作中(掃除方法データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、力のビットが「1」となっている場合に有効である。図27Aに示すように、ロボット本体5で床面10を拭き掃除中に、図27Bのように、人の手16によりロボット本体5(例えば、把手30)に上方から下向きに力をかけると、掃除動作補正部20によって、図27Cのように拭き掃除時の力のかけ具合を強めに、逆に、人の手16によりロボット本体5(例えば、把手30)に下方から上向きに力をかけると、拭き掃除時の力のかけ具合を弱めに補正することができる。
【0144】
3つ目の補正の種別は、吸引の掃除時の床面10に対する「吸引力」である。これは、現在動作中(掃除方法データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、吸引力のビットが「1」となっている場合に有効である。図28Aに示すように、ロボット本体5で床面10を吸引掃除中に、図28Bのように、人の手16によりロボット本体5(例えば把手30)に上方から下向きに力をかけると、掃除動作補正部20によって、図28Cのように、吸引掃除時の吸引力が強く設定され、逆に、人の手16によりロボット本体5(例えば把手30)に下方から上向きに力をかけると、吸引掃除時の吸引力を弱く設定することができる。
【0145】
4つ目の補正の種別は、ロボット本体5の掃除部(掃除部8,18)の移動「速度」である。図29A又は図29B(図29Aを上方から見た図)のように、ロボット本体5で床面10を掃除中に、図29Cのように、ロボット本体5の進行方向に反する方向に人の手16によりロボット本体5(例えば把手30)に力をかけると、掃除動作補正部20によって、図29Dのように、掃除時の速度を減速させることができる。逆に、ロボット本体5で床面10を掃除中に、人の手16がロボット本体5の進行方向と同じ方向に人の手16によりロボット本体5(例えば把手30)に力をかけると、掃除動作補正部20によって、掃除時の速度を加速させることができる。
【0146】
5つ目の補正の種別は、「掃除をして欲しくない領域」である。人16Aの手16で、図26に示すように、把手30を把持して、掃除をしてほしくない領域RBの輪郭に沿って、ロボット本体5(例えば把手30)に力をかけてロボット本体5を移動させると、掃除動作補正部20によって、図26のように、掃除をしてほしくない領域RBを設定することができる。
【0147】
6つ目の補正の種別は、「掃除面垂直方向の移動」である。図15Aのように、ロボット本体5で床面10を掃除中に、図15Bのように人の手16によりロボット本体5(例えば把手30)に上方向に力をかけて、上方向にロボット本体5を移動させると、掃除動作補正部20によって、例えば、図15Cに示すように、床面10においてある台又はソファ10Sなどの上面10Saを掃除部8,18で掃除することができる。
【0148】
補正動作種別決定部23は、前記の6種類の補正の種別のうち、1種類の補正の種別を決定する。具体的には、ボタンなどのデータ入力IF26にて6種類の補正の種別のうちの1つの補正の種別を選択するか、若しくは、力検出部53で検出されて情報取得部100で取得された人の手16によりロボット本体5(例えば把手30)にかけた力と、掃除方法データベース17に記憶されて情報取得部100で取得されたロボット本体5(例えば把手30)にかけた力と、補正の種別との関係情報(例えば、力のかかる向きと大きさと補正の種別との関係情報)とにより、補正動作種別決定部23で種別を推定する。
【0149】
以下、補正の種別の推定方法の具体的な補正種別推定処理について、図14のフローチャートを使って詳細に説明する。
【0150】
掃除ロボット1の電源ボタン26aを「ON」にした状態で、人の手16でロボット本体5(例えば把手30)を把持して力をロボット本体5(例えば把手30)に加えていない場合は、ロボット本体5は動かない。人の手16によりロボット本体5(例えば把手30)に力を加えている場合は、インピーダンス制御モード(人の手16の力を検出した方向にインピーダンス制御で移動させるモード)でロボット本体5を移動させたい方向に移動させることができる。この場合、制御部22の力検出部53にて、ロボット本体5(例えば把手30)に作用する力を検出し、力検出部53で検出された力の情報が、情報取得部100を介して、補正動作種別決定部23に入力される(ステップS1)。
【0151】
次いで、ステップS2では、力検出部53で検出しかつ情報取得部100で取得された力の全ての成分(f、f、fの3成分)が、ある閾値(具体的には、図9のID「1」の(fdx、fdy、fdz))以下であるか否かを補正動作種別決定部23で判断する。力検出部53で検出しかつ情報取得部100で取得された力の全ての成分(f、f、fの3成分)が、前記ある閾値以下であると補正動作種別決定部23で判断した場合は、ステップS18に進む。
【0152】
ステップS18では、ロボット本体5は動かず、補正はせず、補正動作の種別推定方法の補正種別推定処理を終了する。その場合の制御モードは、インピーダンス制御モードである。
【0153】
ステップS2にて、力検出部53で検出しかつ情報取得部100で取得された力のいずれかの成分(f、f、fの3成分のうちのいずれかの成分)が、前記ある閾値(具体的には、図9のID「1」の(fdx、fdy、fdz))を越えると補正動作種別決定部23で判断した場合は、ステップS3に進む。
【0154】
ステップS3では、さらに、現在の掃除ロボット1が掃除方法データベース17で動作しているかどうか、を情報取得部100を介して取得した情報を基に補正動作種別決定部23で判定する。具体的には、動作選択部29にて掃除作業を選択しておらず、かつ、掃除方法データベース17の全ての作業IDについて、進捗情報が「0」となっている、と補正動作種別決定部23で判断する場合(掃除を開始していない状態)は、掃除方法データベース17で動作していないと補正動作種別決定部23で判定して、ステップS5に進む。一方、ステップS3で、動作選択部29にて掃除作業を選択して掃除を開始しており、かつ、進捗情報が「1」となっていると補正動作種別決定部23で判断している場合は、掃除方法データベース17で動作していると補正動作種別決定部23で判定して、ステップS19に進む。
【0155】
ステップS19では、掃除面に垂直な方向の力成分(例えば地面に水平に設置された床面10を掃除する場合はf)が、ある閾値(具体的には、図9のID「1」のfdz)以上で且つ、掃除面に水平な方向の力成分(例えば地面に水平に設置された床面10を掃除する場合はf、f)が前記ある閾値(具体的には、図9のID「1」のf、f)以上である場合には、ステップS8に進む。そうでない場合にはステップS4に進む。
【0156】
ステップS4では、掃除面に垂直な方向の力成分(例えば地面に水平に設置された床面10を掃除する場合はf)が、ある閾値(具体的には、図9のID「1」のfdz)以上かどうか、を補正動作種別決定部23で判定する(ステップS4)。
【0157】
ステップS4で、掃除面に垂直な方向の力成分が前記ある閾値より小さいと補正動作種別決定部23で判定された場合はステップS8に進む。
【0158】
ステップS8では、さらに掃除面に水平な方向の力成分(例えば地面に水平に設定された床面10を掃除する場合はf、fのいずれか若しくは両方)が、ある閾値(具体的には、図9のID「1」のfdx、fdy)以上であるかどうか、を補正動作種別決定部23で判定する(ステップS8)。
【0159】
ステップS8にて、掃除面に水平な方向の力成分が前記ある閾値(具体的には、図9のID「1」のf、f)未満であると補正動作種別決定部23で判断する場合は、ステップS9に進む。
【0160】
ステップS9においては、補正なし(種別なし)と決定して、補正種別推定処理を終了する。補正なしの場合は、補正を中止して掃除作業を行う。
【0161】
ステップS8にて、掃除面に水平な方向の力成分が前記ある閾値以上であると補正動作種別決定部23で判断する場合は、ステップS11に進む。
【0162】
ステップS11では、さらに補正動作種別決定部23で算出された掃除面の水平方向の移動量が、ある閾値(具体的には、図9のID「2」のg、g)以上であると補正動作種別決定部23で判断する場合は、ステップS12に進む。
【0163】
ステップS12においては、補正の種別として「掃除面の位置の移動」の種別を補正動作種別決定部23で決定して、補正種別推定処理を終了する(ステップS12)。
【0164】
なお、掃除面の水平方向の移動量を補正動作種別決定部23で算出するとき、具体的には、制御部22から制御パラメータ管理部21又は情報取得部100を介して、人の操作前の掃除部8,18の掃除位置と、人の操作中の掃除部8,18の掃除位置とを補正動作種別決定部23にそれぞれ入力し、操作中の掃除位置から操作前の掃除位置を減じた値を移動量として補正動作種別決定部23で算出することができる。また、掃除面に垂直な方向の移動量を補正動作種別決定部23で算出するとき、具体的には、制御部22から制御パラメータ管理部21又は情報取得部100を介して、人の操作前の掃除部8,18の掃除位置のz成分と、人の操作中の掃除部8,18の掃除位置のz成分とを補正動作種別決定部23にそれぞれ入力し、操作中の掃除部8,18の掃除位置のz成分から操作前の掃除部8,18の掃除位置のz成分を減じた値を移動量として補正動作種別決定部23で算出することができる。
【0165】
ステップS11にて、掃除面の水平方向の移動量が前記ある閾値(具体的には、図9のID「2」のg、g)未満であると補正動作種別決定部23で判定された場合は、ステップS13に進む。
【0166】
ステップS13においては、補正の種別として、掃除面に水平な方向の「速度」の種別を決定して、補正種別推定処理を終了する(ステップS13)。
【0167】
また、ステップS4で、掃除面に垂直な力が前記ある閾値以上であると補正動作種別決定部23で判定された場合は、ステップS10に進む。
【0168】
ステップS10においては、さらに、補正動作種別決定部23で算出された掃除面の垂直方向の移動量が、ある閾値(具体的には、図9のID「2」のg)より大きいか否かを補正動作種別決定部23で判断する(ステップS10)。
【0169】
ステップS10において、掃除面の垂直方向の移動量が、前記ある閾値(具体的には、図9のID「2」のg)より大きいと補正動作種別決定部23で判断する場合には、ステップS17に進む。
【0170】
ステップS17においては、補正の種別して「掃除面垂直方向の移動」の種別を補正動作種別決定部23で決定して、補正種別推定処理を終了する(ステップS17)。
【0171】
また、ステップS10で掃除面の垂直方向の移動量が前記ある閾値(具体的には、図9のID「2」のg)以下であると補正動作種別決定部23で判断する場合には、ステップS14に進む。
【0172】
ステップS14では、さらに、現在動作中(掃除方法データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、力のビットが「1」となっているか、吸引力のビットが「1」となっているかを補正動作種別決定部23で判断する。
【0173】
ステップS14において、現在動作中(掃除方法データベースの進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、力のビットが「1」となっていると補正動作種別決定部23で判断する場合には、拭き掃除を意味するので、ステップS15に進み、補正の種別として「力の補正」と決定し(ステップS15)、補正種別推定処理を終了する。一方、現在動作中(掃除方法データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、吸引力のビットが「1」となっていると補正動作種別決定部23で判断する場合は、吸引にて掃除をする場合を意味するので、ステップS16に進み、補正の種別として「吸引力の補正」の種別であると決定し(ステップS16)、補正種別推定処理を終了する。
【0174】
また、ステップS3において、掃除方法データベース17で動作していないと補正動作種別決定部23で判定された場合には、ステップS5に進む。
【0175】
ステップS5では、さらに、人の手16によりロボット本体5にかけている力が掃除面に水平であり、かつ、ある一定時間の水平方向の移動量が、ある閾値(具体的には、図9のID「2」のg、g)以上であるか否かを補正動作種別決定部23で判断する。
【0176】
ステップS5において、人の手16によりロボット本体5にかけている力が掃除面に水平であり、かつ、ある一定時間の水平方向の移動量が、ある閾値(具体的には、図9のID「2」のg、g)以上であると補正動作種別決定部23で判断する場合には、ステップS7に進み、補正の種別として「掃除をして欲しくない領域」の種別であると決定し(ステップS7)、補正種別推定処理を終了する。
【0177】
ステップS5で、人の手16によりロボット本体5にかけている力が掃除面に対して水平ではない場合(例えば、垂直である場合)、又は、掃除面に水平な力であっても水平方向の移動量が前記ある閾値(具体的には、図9のID「2」のg、g)未満であると補正動作種別決定部23で判断する場合は、ステップS6に進み、補正の種別として「補正なし」と決定し(ステップS6)、補正種別推定処理を終了する。
【0178】
以上により、ボタンなどのデータ入力IF26を使わずに、補正動作種別決定部23により、補正の種別を切り替えることができる。さらにステップS19を備えることにより、人16が掃除面の位置の移動をさせたい場合に、誤って垂直方向に力を加えながら、水平方向に力を加えた場合には、掃除面の位置の移動を優先させて補正することができるようになる(ステップS19でNoでかつステップS4でNoの処理を参照)。
【0179】
補正動作種別決定部23は、前記の6種類の種別のうち、1種類の種別を決定したが、2種類の補正の種別を同時に決定することもできる。
【0180】
図3の補正種別決定方法設定部27は、補正動作種別決定部23で決定する出力数を設定する。しかしながら、出力数は、データ入力IF26を使って補正動作種別決定部23で入力して、人が決定するようにしてもよい。
【0181】
補正動作種別決定部23は、補正種別決定方法設定部27で設定された出力数に従って、補正の種別を決定する。具体的には、出力数が1の場合は、図14の補正の種別の推定方法のアルゴリズムで補正の種別を決定し、出力数が「2」の値の場合は、後述する図17のアルゴリズムで補正の種別を決定する。これにより、掃除ロボット1を操作する人が操作に不慣れな場合は、出力数を1に設定することで、同時に2種類の補正ができないので、操作が簡単になる。逆に、掃除ロボット1を操作する人が操作に慣れてきて、同時に2種類の種別の補正を行いたい場合は、出力数を「2」の値に設定することで、補正を効率的に行なうことができるようになる。
【0182】
上述の補正動作種別決定部23では、1種類の種別を出力するとしたが、2種類の種別を出力して補正する例として、図18Aに示すように、拭き掃除時に掃除方法データベース17の力より強い力で、且つ、掃除面の拭き掃除を通常より高速に掃除したい場合である。この場合は、拭き掃除の力と速度の2種類の種別を同時に補正する。また、図18Bでは、塵などを吸引する掃除をする際に、掃除面を平行に移動しながら、吸引力を強くする場合である。この場合は、掃除面の位置の移動と吸引力の2種類の種別を同時に補正する。
【0183】
2種類の種別を出力する補正動作の種別推定方法の補正種別推定処理を実行するための補正動作種別決定部23のアルゴリズムについて、図17のフローチャートを使って詳細に説明する。
【0184】
1種類の種別の場合と同様に、掃除ロボット1の電源ボタン26aを「ON」にした状態で、人の手16でロボット本体5(把手30)を把持して力をロボット本体5に加えていない場合は、ロボット本体5は動かない。人の手16によりロボット本体5(把手30)に力を加えている場合は、インピーダンス制御モード(人の手16の力を検出した方向にインピーダンス制御で移動させるモード)でロボット本体5を移動させたい方向に移動させることができる。この場合、制御部22の力検出部53にて、ロボット本体5に作用する力を検出し、力検出部53で検出された力の情報が、情報取得部100を介して、補正動作種別決定部23に入力される(ステップS31)。
【0185】
次いで、ステップS32では、力検出部53で検出しかつ情報取得部100を介して取得した力の全ての成分(f、f、fの3成分)が、ある閾値(具体的には、図9のID「1」の(fdx、fdy、fdz))以下であるか否かを補正動作種別決定部23で判断する。力検出部53で検出しかつ情報取得部100を介して取得した力の全ての成分(f、f、fの3成分)が、前記ある閾値(具体的には、図9のID「1」の(fdx、fdy、fdz))以下であると補正動作種別決定部23で判断した場合は、ステップS49に進む。
【0186】
ステップS49では、ロボット本体5は動かず、補正はせず(ステップS49)、補正動作の種別推定方法の補正種別推定処理を終了する。
【0187】
ステップS32にて、力検出部53で検出しかつ情報取得部100で取得された力のいずれかの成分(f、f、fの3成分)が、前記ある閾値(具体的には、図9のID「1」の(fdx、fdy、fdz))を越えると補正動作種別決定部23で判断した場合は、ステップS33に進む。
【0188】
ステップS33では、さらに、現在の掃除ロボット1が掃除方法データベース17で動作しているかどうか、を補正動作種別決定部23で判定する。具体的には、動作選択部29にて掃除作業を選択しておらず、かつ、掃除方法データベース17の全ての作業IDについて、動作選択部29にて作業を選択しておらず進捗情報が「0」となっている、と補正動作種別決定部23で判断する場合(掃除を開始していない状態)は、掃除方法データベース17で動作していないと補正動作種別決定部23判定して、ステップS35に進む。動作選択部29にて掃除作業を選択して掃除を開始しており、かつ、進捗情報が「1」となっていると補正動作種別決定部23で判断している場合は、掃除方法データベース17で動作していると補正動作種別決定部23で判定して、ステップS34に進む。
【0189】
ステップS34においては、掃除面に垂直な方向の力成分(例えば地面に水平に設置された床面10を掃除する場合はf)が、ある閾値(具体的には、図9のID「1」のfdz)以上かどうか、を補正動作種別決定部23で判定する(ステップS34)。このとき、ステップS34の処理と同時に、ステップS38において、掃除面に水平な方向の力成分(例えば地面に水平に設定された床面10を掃除する場合はf、fのいずれか若しくは両方)が、ある閾値(具体的には、図9のID「1」のfdx、fdy)以上かどうか、を補正動作種別決定部23で判定する(ステップS38)。
【0190】
ステップS34で、掃除面に垂直な方向の力成分(例えば地面に水平に設置された床面10を掃除する場合はf)が前記ある閾値(具体的には、図9のID「1」のfdz)より小さいと補正動作種別決定部23で判定された場合は、ステップS43に進み、垂直面の補正なし(種別なし)と決定して、補正種別推定処理を終了する(ステップS43)。
【0191】
ステップS38で、掃除面に水平な方向の力成分(例えば地面に水平に設定された床面10を掃除する場合はf、fのいずれか若しくは両方)が前記ある閾値(具体的には、図9のID「1」のfdx、fdy)より小さいと補正動作種別決定部23で判定された場合は、ステップS39に進む。
【0192】
ステップS39においては、水平面の補正なし(種別なし)と決定して、補正種別推定処理を終了する(ステップS39)。
【0193】
一方、ステップS38で、掃除面に水平な方向の力成分(例えば地面に水平に設定された床面10を掃除する場合はf、fのいずれか若しくは両方)が前記ある閾値(具体的には、図9のID「1」のfdx、fdy)以上であると補正動作種別決定部23で判定された場合は、ステップS40に進む。
【0194】
ステップS40では、さらに掃除面の水平方向の移動量が、ある閾値(具体的には、図9のID「2」のg、g)以上であるか否か、を補正動作種別決定部23で判定する。ステップS40で、さらに掃除面の水平方向の移動量が前記ある閾値(具体的には、図9のID「2」のg、g)以上であると補正動作種別決定部23で判定された場合は、ステップS41に進む。
【0195】
ステップS41においては、補正の種別として「掃除面の位置の移動」の種別であると補正動作種別決定部23で決定して、補正種別推定処理を終了する(ステップS41)。
【0196】
ステップS40で、掃除面の水平方向の移動量が前記ある閾値(具体的には、図9のID「2」のg、g)未満であると補正動作種別決定部23で判定された場合は、ステップS42に進む。
【0197】
ステップS42においては、補正の種別として、掃除面に水平な方向の「速度」の種別であると決定して、補正種別推定処理を終了する(ステップS42)。
【0198】
また、ステップS34で、掃除面に垂直な力(例えば地面に水平に設置された床面10を掃除する場合はf)が前記ある閾値(具体的には、図9のID「1」のfdz)以上であると補正動作種別決定部23でと判定された場合は、ステップS44に進む。
【0199】
ステップS44においては、さらに、掃除面の垂直方向の移動量が、ある閾値(具体的には、図9のID「2」のg)より大きいか否かを補正動作種別決定部23で判断する(ステップS44)。
【0200】
ステップS44で、掃除面の垂直方向の移動量が前記ある閾値(具体的には、図9のID「2」のg)より大きいと補正動作種別決定部23で判断された場合は、ステップS48に進む。
【0201】
ステップS48においては、補正の種別として「掃除面垂直方向の移動」の種別であると決定して、補正種別推定処理を終了する(ステップS48)。
【0202】
また、ステップS44において、掃除面の垂直方向の移動量が前記ある閾値(具体的には、図9のID「2」のg)以下であると補正動作種別決定部23で判断された場合は、ステップS45に進む。
【0203】
ステップS45においては、さらに、現在動作中(掃除方法データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、拭き掃除の場合に力のビットが「1」となっているか、吸引力のビットが「1」となっているかを補正動作種別決定部23で判断する。
【0204】
ステップS45において、現在動作中(掃除方法データベースの進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、力のビットが「1」となっていると補正動作種別決定部23で判断する場合には、拭き掃除を意味するので、ステップS46に進み、補正の種別として「力の補正」と決定し(ステップS46)、補正種別推定処理を終了する。一方、現在動作中(掃除方法データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、吸引力のビットが「1」となっていると補正動作種別決定部23で判断する場合は、吸引にて掃除をする場合を意味するので、ステップS47に進み、補正の種別として「吸引力の補正」の種別であると決定し(ステップS47)、補正種別推定処理を終了する。
【0205】
また、ステップS33において、掃除方法データベース17で動作していないと補正動作種別決定部23で判定された場合には、ステップS35に進む。
【0206】
ステップS35においては、さらに、人の手16によりロボット本体5にかけている力が掃除面に水平であり、かつ、ある一定時間の水平方向の移動量が、ある閾値(具体的には、図9のID「2」のg、g)以上であるか否かを補正動作種別決定部23で判断する。
【0207】
ステップS35において、人の手16によりロボット本体5にかけている力が掃除面に水平であり、かつ、ある一定時間の水平方向の移動量が、前記ある閾値(具体的には、図9のID「2」のg、g)以上であると補正動作種別決定部23で判断する場合には、ステップS37に進む。
【0208】
ステップS37においては、補正の種別として「掃除をして欲しくない領域」の種別であると決定し(ステップS37)、補正種別推定処理を終了する。
【0209】
また、ステップS35で、人の手16によりロボット本体5にかけている力が掃除面に対して水平ではない場合(例えば、垂直である場合)、又は、掃除面に水平な力であっても水平方向の移動量が前記ある閾値(具体的には、図9のID「2」のg、g)未満であると補正動作種別決定部23で判断する場合は、ステップS36に進む。
【0210】
ステップS36においては、補正の種別として「補正なし」と決定し(ステップS36)、補正種別推定処理を終了する。
【0211】
以上により、ボタンなどのデータ入力IF26を使わずに、補正動作種別決定部23により、2種類以上の補正の種別を切り替えることができる。
【0212】
掃除動作補正部20は、掃除方法データベース17に記憶された位置と時間とに基づいて動作中に、人の手16によりロボット本体5(把手30)に力をかけることで、掃除方法データベース17の動作情報を補正する機能である。
【0213】
以下、掃除動作補正部20の機能について説明する。
【0214】
人の手16で、掃除ロボット1の上部に配置されているデータ入力IF26(例えば操作盤26Aの電源ボタン26aなど)により電源を入れると、掃除動作補正部20は、インピーダンス制御モードで動作するよう、制御パラメータ管理部21へ指令を出す。
【0215】
次に、人の手16で、動作選択部29により、掃除方法データベース17の掃除作業の一覧の中から所望の掃除作業を選択して、掃除動作開始の指示を行う。掃除動作補正部20は、掃除方法データベース17の中から選択された作業IDの動作情報(具体的には、胴体部19の位置及び掃除部8,18の掃除位置と時間と)に基づき胴体部19及び掃除部8,18を力ハイブリッドインピーダンス制御モードで動作するように、制御パラメータ管理部21へ指令を出す。
【0216】
力ハイブリッドインピーダンス制御モードの場合は、掃除方法データベース17の動作IDに対するフラグ(有効性を示すフラグ)のうち、フラグのビットが「1」になっている掃除部8,18の掃除位置のそれぞれに対して、ハイブリッドインピーダンス制御モード(位置制御モードで動作している最中に、人などからロボット本体5に加わる力に応じて、ロボット本体5が作動するモード)が掃除動作補正部20で設定され、吸引力又は力のフラグ(有効性を示すフラグ)のビットが「1」になっている成分は力制御モードが掃除動作補正部20で設定される。掃除位置の3成分のうち、ハイブリッドインピーダンス制御モードも力制御モードもいずれも設定されていない成分は、インピーダンス制御モードが掃除動作補正部20で設定される。例えば、図4の作業IDが「1」の場合は、塵を吸引する掃除をする作業を示しており、作業IDが「1」の場合でかつ動作IDが「1」の場合のフラグは0,1,8ビット目のみ「1」であるので、x軸及びy軸成分に対しては、ハイブリッドインピーダンス制御モードが掃除動作補正部20で設定されるとともに、z軸成分に対しては力制御モードが掃除動作補正部20で設定される。図4の作業IDが「2」の場合は、拭き掃除をする作業を示しており、作業IDが「2」の場合でかつ動作IDが「1」のフラグは0,1,5ビット目のみ「1」であるので、x軸及びy軸成分にはハイブリッドインピーダンス制御モードが掃除動作補正部20で設定され、z軸成分には力制御モードが掃除動作補正部20で設定される。
【0217】
制御パラメータ管理部21は、掃除動作補正部20から指令を受ける。すなわち、力ハイブリッドインピーダンス制御モードで掃除作業をするように掃除動作補正部20から制御パラメータ管理部21へ指令を出すと、図16A〜図16Cに示すように、指令した位置でロボット本体5(胴体部19)が自走しながら、ロボット本体5は、動作IDの位置と力若しくは吸引力とで掃除作業を開始する。
【0218】
次に、人が掃除面の汚れの状況などを確認して、図12Cに示すように、もう少し横方向にロボット本体5(胴体部19)を平行移動させて掃除(吸引)させたい場合を例にとって説明する。
【0219】
図12Cに示すように、人の手16で把手30を直接把持して、掃除面に対して平行移動するように掃除面に平行に力をロボット本体5にかける。
【0220】
補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16がロボット本体5(把手30)にかけた力と掃除方法データベース17に記憶された情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16により、掃除面と水平方向に力をロボット本体5にかけて、ロボット本体5を前記ある閾値以上移動させているので、ステップS14において、補正の種別として「掃除面の位置の移動」の種別であると補正動作種別決定部23で決定する。
【0221】
図4の作業IDが「1」の場合で動作IDが「1」に示す作業の場合は、x軸成分及びy軸成分は力ハイブリッドインピーダンス制御モードにより、位置制御モードでロボット本体5を移動させながら、インピーダンス制御モードにより人の手16によりロボット本体5にかけられた力を力検出部53で検出して、人の手16によりロボット本体5(把手30)に力をかけた方向にロボット本体5をx軸方向及びy軸方向に移動させて、図12Dのように掃除位置を補正することができる。
【0222】
なお、この例では、x軸の方向及びy軸の方向にのみ動作を補正したいので、補正動作種別決定部23で補正の種別が決定されたタイミングで、補正動作種別決定部23により、図6の補正パラメータフラグの0,1ビット目を「1」に設定するとともに、その他のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、x軸方向及びy軸方向以外の移動ができないように設定することができる。さらに、インピーダンス制御モード時の車輪6の機械インピーダンス設定値を補正動作種別決定部23で変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、ロボット本体5のx軸方向及びy軸方向の剛性を他の方向の剛性よりも低くして、人の手16でロボット本体5をx軸方向及びy軸方向に動かしやすくし、x軸方向及びy軸方向以外の方向の剛性を高くして、人の手16でロボット本体5をx軸方向及びy軸方向以外の方向に動かしにくくするようにすることができる。これにより、ロボット本体5のx軸成分及びy軸成分のみを補正したい場合に、ロボット本体5のz軸成分の補正を誤って行なうことがないようにできる。また、ロボット本体5のx軸方向及びy軸方向の補正中に、補正動作種別決定部23により、z軸成分の吸引の強さ若しくは掃除面にかける力を、補正前の動作時より弱く若しくは小さく(具体的には半分程度に)することもできる。又は、吸引若しくは力制御を停止するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すこともできる。具体的には、掃除方法データベース17のフラグの6〜17ビット目を「0」に補正動作種別決定部23で設定する。これにより、x軸方向及びy軸方向にロボット本体5を移動させて補正している最中に、ロボット本体5(把手30)に力をかけて床面10を傷つけたり、塵以外のものを誤って吸い込むことを防ぐことができる。
【0223】
上述のように、人の手16でロボット本体5(把手30)を把持して、掃除面と水平方向へ力をかけてロボット本体5をΔx分及びΔy分だけx軸方向及びy軸方向に移動させた場合に、Δxの値及びΔyの値が、制御部22と制御パラメータ管理部21とを経由して、掃除動作補正部20に送信される。
【0224】
掃除動作補正部20では、選択された作業IDの動作情報の全てのx座標の値からΔxを減じ、さらに、全てのy座標の値から、Δyを減じて補正した動作情報を、掃除動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21は、Δx分及びΔy分の補正した座標でロボット本体5が動作するように制御部22へ指示する。これにより、図12Dのような動作に補正される。次に、Δx及びΔy分だけ減じた動作情報を、掃除方法記憶部15で掃除方法データベース17に記憶する。
【0225】
次に、図15Bのように、例えば、床面10を掃除中に、床面10に設置されたソファー10Sなどの上面10Saを掃除させる場合は、人の手16でロボット本体5(把手30)を直接把持して、掃除面に対して垂直方向に移動するように掃除面に垂直に力をロボット本体5(把手30)にかける。
【0226】
補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16がロボット本体5(把手30)にかけた力と掃除方法データベース17の情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16によりロボット本体5に掃除面と垂直方向に力をかけてロボット本体5をある閾値以上移動させているので、ステップS19において、補正の種別として「掃除面の垂直方向の移動」の種別であると補正動作種別決定部23で決定する。
【0227】
力ハイブリッドインピーダンス制御モードにより、位置制御モードでロボット本体5を移動させながら、インピーダンス制御モードにより、人の手16の力を力検出部53で検出してロボット本体5に人の手16により力をかけた方向にロボット本体5をz軸方向に移動させて、図15Cのように掃除位置を補正することができる。
【0228】
なお、この例では、z軸の方向にのみ動作を補正したいので、補正動作種別決定部23で補正の種別が決定されたタイミングで、補正動作種別決定部23により、図6の2ビット目を「1」に設定するとともに、それ以外のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、z軸方向以外の移動ができないように設定することができる。さらに、インピーダンス制御モード時の車輪6の機械インピーダンス設定値を補正動作種別決定部23で変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、z軸方向の剛性を他の方向の剛性よりも低くして、人の手16でロボット本体5をz軸方向に動かしやすくし、z軸方向以外の剛性を高くして、人の手16でロボット本体5をz軸方向以外の方向に動かしにくくするようにすることができる。
【0229】
また、ロボット本体5のz軸方向の動作を補正する際に、補正動作種別決定部23により、z軸成分の吸引の強さ若しくは掃除面にかける力を、補正前の動作時より弱く若しくは小さく(具体的には半分程度に)することもできる。又は、吸引若しくは力制御を停止するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すこともできる。具体的には、掃除方法データベース17のフラグの3〜8ビット目を「0」に補正動作種別決定部23で設定する。これにより、z軸方向にロボット本体5を移動させている最中に、ロボット本体5(把手30)に力をかけたり吸引することで床面10を傷つけたり、塵以外のものを誤って吸い込むことを防ぐことができる。
【0230】
上述のように、人の手16でロボット本体5(把手30)を把持して、掃除面と垂直方向へ力をかけてロボット本体5をΔz分だけz軸方向に移動させた場合に、Δzの値が、制御部22と制御パラメータ管理部21とを経由して、掃除動作補正部20に送信される。
【0231】
掃除動作補正部20では、選択された作業IDの動作情報の全てのz座標の値からΔzを減じて補正した動作情報を、掃除動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21は、Δz分の補正した座標でロボット本体5が動作するように制御部22へ指示する。これにより、図15Cのような動作に補正される。次に、Δz分減じた動作情報を、掃除方法記憶部15で掃除方法データベース17に記憶する。
【0232】
次に、図27Bのように、拭き掃除時の掃除面に対する力を変更する場合は、人の手16でロボット本体5を直接把持して、掃除面に対して垂直方向に力をロボット本体5にかける。
【0233】
補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16がロボット本体5(把手30)にかけた力と掃除方法データベース17の情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16により掃除面と垂直方向に力をロボット本体5にかけて、ロボット本体5を前記ある閾値以上移動させていないので、ステップS17において、補正の種別として「力の補正」の種別であると補正動作種別決定部23で決定する。
【0234】
補正動作種別決定部23で補正の種別が「力の補正」であると決定したタイミングで、力ハイブリッドインピーダンス制御モードから高剛性位置制御モードで動作するよう補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。補正動作種別決定部23から制御パラメータ管理部21への指令時に、高剛性位置制御モードでは、方向別に位置制御時の高剛性を補正動作種別決定部23で設定することができるため、例えば図4の掃除方法データベース17の作業ID「2」でかつ動作ID「1」の動作のフラグは、0、1、5ビットが「1」に設定されているので、z軸方向は力制御モードで動作し、その他の方向はハイブリッドインピーダンス制御モードで動作するため、z軸方向のみ高剛性位置制御モードで動作するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。
【0235】
次に、図27Bに示すように、ロボット本体5が拭き掃除中に、汚れのひどい部分でロボット本体5が動作している最中に、人の手16でロボット本体5(把手30)を直接把持して、掃除面を強めに拭き掃除をしたい場合には、人の手16により掃除面に向かって把手30に下方向に力をかける。高剛性位置制御モードでは、掃除時のハイブリッドインピーダンス制御モードのうち、方向別設定された位置制御モードを、さらに高剛性にしたモードで、人の手16によりロボット本体5(把手30)に力をかけると、ロボット本体5を容易に移動させないようにすることで、人の手16によりロボット本体5(把手30)にかけた力を力検出部53で確実に検出することができる。制御部22の力検出部53で検出された力を掃除動作補正部20に通知する。掃除動作補正部20に通知された力を、掃除方法記憶部15で掃除方法データベース17に記憶することで、汚れている部分のみを強めに拭き掃除するよう動作を補正することができる。人が補正を終了したい場合は、ロボット本体5(把手30)を把持して力をロボット本体5にかけることを止める。人の手16によりロボット本体5(把手30)に力をかけない場合は、図14のステップS2により、力の全ての成分が前記閾値以下になるので、補正動作種別決定部23により、補正の種別として「補正なし」であると決定する(図14のステップS18)。掃除動作補正部20は、「補正なし」の情報を受けて、高剛性の位置制御モードからハイブリッドインピーダンス制御モードで制御するよう、補正動作種別決定部23から制御パラメータ管理部21に指令を出す。これにより、補正後の掃除方法データベース17で掃除を行う。
【0236】
以上により、掃除動作補正部20は、掃除方法データベース17の力の情報により、ハイブリッドインピーダンス制御モードで動作している状態で、人の手16が力をかけることで、補正された力で掃除するように補正することができるようになる。
【0237】
次に、図28Cのように、掃除面に対する吸引力を変更する場合は、人の手16でロボット本体5を直接把持して、掃除面に対して垂直方向に力をロボット本体5にかける。
【0238】
補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16によりロボット本体5(把手30)にかけた力と掃除方法データベース17の情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16により掃除面と垂直方向に力をロボット本体5(把手30)にかけて、ロボット本体5を前記ある閾値以上移動させていないので、ステップS18において、補正の種別として、「吸引力の補正」の種別であると補正動作種別決定部23で決定する。
【0239】
補正動作種別決定部23により補正の種別として「吸引力の補正」であると決定したタイミングで、力ハイブリッドインピーダンス制御モードから高剛性位置制御モードで動作するよう補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。補正動作種別決定部23から制御パラメータ管理部21への指令時に、高剛性位置制御モードでは、方向別に位置制御時の高剛性を補正動作種別決定部23で設定することができるため、例えば図4の掃除方法データベース17の作業ID「1」でかつ動作ID「1」の動作のフラグは、0、1、8ビットが「1」に設定されているので、z軸方向は吸引制御モードで動作し、その他の方向はハイブリッドインピーダンス制御モードで動作するため、z軸方向のみ高剛性位置制御モードで動作するように補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。
【0240】
次に、図28Bに示すように、ロボット本体5が吸引掃除中に、汚れのひどい部分でロボット本体5が動作している最中に、人の手16でロボット本体5(把手30)を直接把持して、掃除面を強めに吸引したい場合には、人の手16により掃除面に向かって把手30に下方向に力をかける。高剛性位置制御モードでは、通常の位置制御モードをさらに高剛性にしたモードで、人の手16によりロボット本体5(把手30)に力をかけると、ロボット本体5を容易に移動させないようにすることができ、人の手16によりロボット本体5(把手30)にかけた力を力検出部53で確実に検出することができる。制御部22の力検出部53で検出された力を掃除動作補正部20に制御パラメータ管理部21を介して通知し、掃除動作補正部20は、掃除方法データベース17のz軸方向の吸引力を、掃除方法データベース17(又は、掃除動作補正部20の記憶部)内に記憶された図19に示す変換表を使用して、力から吸引力に変換する。例えば、人がロボット本体5(把手30)にかけた力が4.5[N]の場合には、変換表より、力が4〜5[N]に対応して吸引力が「4」と変換されるため、掃除動作補正部20が掃除方法記憶部15を使用して掃除方法データベース17に吸引力「4」を記憶することで、汚れている部分のみを強めに吸引して掃除するよう動作を補正することができる。人が補正を終了したい場合は、ロボット本体5(把手30)を人の手16で把持して人の手16によりロボット本体5(把手30)に力をかけることを止めればよい。すなわち、人の手16によりロボット本体5(把手30)に力をかけない場合は、図14のステップS2により、力の全ての成分が前記閾値以下になるので、補正動作種別決定部23により、補正の種別として「補正なし」であると決定する(図14のステップS18)。掃除動作補正部20は、補正の種別として「補正なし」であるとの決定を受けて、高剛性の位置制御モードからハイブリッドインピーダンス制御モードで制御するよう、制御パラメータ管理部21に指令を出す。これにより、補正後の掃除方法データベース17で掃除を行う。
【0241】
以上により、掃除動作補正部20は、掃除方法データベース17の吸引力により、ハイブリッドインピーダンス制御モードで動作している状態で、人の手16によりロボット本体5(把手30)に力をかけることで、補正された吸引力で掃除するように補正することができるようになる。
【0242】
次に、図29Dのように、掃除の速度を変更する場合は、人の手16でロボット本体5を直接把持して、加速したい場合は、掃除の進行方向と同じ向きに人の手16によりロボット本体5(把手30)に力をかけ、減速したい場合は、掃除の進行方向に逆らう向きに人の手16によりロボット本体5(把手30)に力をかける。その際に、ロボット本体5の速度を変えても良いが、位置については、ある閾値以上にならない限り動かさないように、人の手16によりロボット本体5(把手30)に力をかける。
【0243】
補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16によりロボット本体5(把手30)にかけた力と掃除方法データベース17の情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16により掃除面に水平な方向に力をロボット本体5にかけて、ロボット本体5を前記ある閾値以上移動させていないので、図14のステップS13により、補正の種別として、掃除面に水平な方向の「速度」の種別であると補正動作種別決定部23で決定する。
【0244】
ハイブリッドインピーダンス制御モードにより、位置制御モードでロボット本体5を移動させながら、インピーダンス制御モードにより、人の手16によりロボット本体5(把手30)にかけた力を力検出部53で検出して、人の手16によりロボット本体5(把手30)に力をかけた方向に、ロボット本体5をx軸方向及びy軸方向に移動させる。掃除方法データベース17で、例えば作業IDと動作IDとで示された掃除部8,18の掃除位置(x、y、z)から、次の動作IDの掃除部8,18の掃除位置(x、y、z)まで掃除部8,18が移動するのにかかる時間をtとすると、ロボット本体5の速度を人の手16の力で変更した場合(図29C参照)には、すなわち、掃除位置(x、y、z)から掃除位置(x、y、z)までに掃除部8,18が移動するのにかかる時間がtからtに変更されることになる。このような場合には、時間tの値が、制御部22と制御パラメータ管理部21とを経由して、掃除動作補正部20に送信される。掃除動作補正部20では、選択された作業IDの動作情報について、tの時間からtの時間に変更して、掃除動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21において、補正した時間であるtで動作するように制御パラメータ管理部21から制御部22へ指示する。これにより、図29Dのような動作に補正される。次に、時間tを、掃除方法記憶部15で掃除方法データベース17に記憶する。
【0245】
以上により、掃除動作補正部20は、掃除方法データベース17に記憶された位置と時間との情報により、力ハイブリッドインピーダンス制御モードで動作している状態で、人の手16によりロボット本体5(把手30)に力をかけることで、ロボット本体5の動作速度を補正することができるようになる。
【0246】
図26に示すように、掃除ロボット1に掃除をして欲しくない領域RBを、ロボット本体5を使って設定する場合を例にとって説明する。
【0247】
人の手16でロボット本体5の上部に配置されているデータ入力IF26(例えば操作盤26Aの電源ボタン26aなど)により電源を入れると、掃除動作補正部20は、インピーダンス制御モードで動作するよう、制御パラメータ管理部21へ指令を出す。動作選択部29にて作業を選択していない状態で、図26に示すように、人16Aの手16がロボット本体5(掃除部8,18)(把手30)を直接把持して、掃除面に対して平行移動するようにロボット本体5を移動させて、掃除をして欲しくない領域RBの輪郭に沿って、ロボット本体5を移動させる。図20Aは掃除面を上方から見た図で、掃除をして欲しくない領域RBを斜線の領域とすると、人の手16がロボット本体5を移動させて、矢印のように、掃除をして欲しくない領域RBの輪郭にロボット本体5を沿わせて、移動させる。その際、ロボット本体5に取り付けた掃除部の一例としての吸引ノズル8の上面の中央先端にマーク63が付与されており(図20A及び図20B参照)、掃除をして欲しくない方向にマーク63を向けて移動させる。
【0248】
補正動作種別決定部23により、図14に示した補正種別推定処理を実行して掃除方法データベース17で動作していないと判定し(ステップS2,S3)、さらに、人の手16によりロボット本体5にかけている力が掃除面に水平であり、かつ、ある一定時間の水平方向の移動量が、前記ある閾値(具体的には、図9のID「2」のg、g)以上の場合は、ステップS7において、補正の種別として「掃除をして欲しくない領域」の種別であると決定する。
【0249】
インピーダンス制御モードにより、人の手16によりロボット本体5(把手30)にかけた力を力検出部53で検出して、人の手16によりロボット本体5(把手30)に力をかけた方向に、ロボット本体5をx軸方向及びy軸方向に移動させて、図20Aのように、位置(x、y)、位置(x、y)、位置(x、y)、位置(x、y)の順にロボット本体5の吸引ノズル8を移動させると、これらの位置情報が、制御部22と制御パラメータ管理部21とを経由して、掃除動作補正部20に送信される。掃除動作補正部20は、その指令を受けて、これらの位置情報が掃除不可領域RBの情報として、掃除方法記憶部15により掃除不可領域データベース28に記憶する。これらの4つの位置が掃除不可領域RBの頂点の情報であることは、例えば、ある一定間隔で人が移動させたロボット本体5の位置を取得して、取得した位置の座標をつなげて領域を生成し、それを掃除不可領域RBとすることができる。補正種別決定方法設定部27で、どのような形の領域とするかを決定する機能を追加し、例えば、「矩形」と設定されている場合は、90度近くの角度で移動方向が変われば、その位置を頂点の情報として記憶し、「ランダム」と設定された場合は、ある一定間隔で人が移動させたロボット本体5の位置を取得して、取得した位置の座標をつなげて生成し、それを掃除不可領域RBとすることができる。
【0250】
なお、この例では、x軸の方向及びy軸の方向にのみロボット本体5の動作を補正したいので、補正動作種別決定部23で、補正の種別が決定されたタイミングで、図6の補正パラメータフラグの0,1ビット目を「1」に設定するとともに、その他のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、ロボット本体5がx軸方向及びy軸方向以外の軸方向への移動ができないように設定することができる。さらに、インピーダンス制御モード時の車輪6の機械インピーダンス設定値を変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、x軸方向及びy軸方向の剛性を低くして、人の手16でロボット本体5をx軸方向及びy軸方向に動かしやすくし、x軸方向及びy軸方向以外の軸方向の剛性を高くして、人の手16でロボット本体5をx軸方向及びy軸方向以外の軸方向に動かしにくくするようにできる。
【0251】
以上により、掃除動作補正部20は、人の手16が力をかけることで、掃除をしてほしくない領域の設定を行うことができるようになる。
【0252】
さらに、掃除動作補正部20では、上記のそれぞれの補正を開始する前の動作をデフォルトの動作情報として、掃除動作補正部20内の記憶部に記憶しておく。
【0253】
図30Aのように、人がロボット本体5の側面に接触した場合、又は、図30Bのように、ロボット本体5(胴体部19)が壁10Wなどに衝突した場合に、衝突検出部31は衝突した際の力を検出する。衝突検出部31で検出した力が、閾値(例えば5(N))以上である、と衝突検出部31で判断する場合には、掃除動作補正部20は、掃除動作補正部20の前記記憶部で記憶されたデフォルトの動作情報で動作するように制御パラメータ管理部21へ指令を出す。
【0254】
以上により、図30Aに示す操作により、人が補正前の動作に戻したい場合には、図30Aに示すように、ロボット本体5(胴体部19)の周辺(側面)を人がたたく動作をするだけで、補正前の動作に簡単に戻すことができる。さらに、補正後の動作で動作中に、図30Bに示すように壁10Wなどにロボット本体5(胴体部19)が衝突した場合には、デフォルトの動作に戻すことができるようになる。
【0255】
表示部14には、図21に示すように、表示部14の画面を左右2画面14a,14bに分割して表示し、左側の画面14aに、掃除方法データベース17で記述されたロボット本体5の動作が映像若しくは写真若しくはテキストで表示される。さらに、右側の画面14bには、補正動作種別決定部23にて推定された補正の種別の情報を映像若しくは写真若しくはテキストで表示する。この図21の例では、人の手16により掃除面に垂直に力をロボット本体5にかけて、力のかけ具合を補正するような動作をすると、補正動作種別決定部23が、補正の種別として「力の補正」の種別であると決定したタイミングで、右側の画面14bに力の補正をしている映像と現在の力の強弱を表示する。
【0256】
なお、この例では、映像若しくは写真若しくはテキストとしたが、動作を説明する音声などでも良い。
【0257】
以上の掃除動作補正部20と補正動作種別決定部23と動作選択部29と掃除方法記憶部15と掃除方法データベース20と制御パラメータ管理部21との動作ステップ(すなわち、掃除ロボット1を駆動開始してから掃除作業を開始するまでの間に行う、掃除作業及び掃除動作の設定処理)について、図24のフローチャートに基づいて説明する。
【0258】
まず、ステップS121において、人の手16でデータ入力IF26により、掃除ロボット1の電源をオンする(ステップS121)。
【0259】
次いで、ステップS122において、掃除動作補正部20が、インピーダンス制御モードで制御するように制御パラメータ管理部21へ指令を出す(ステップS122)。
【0260】
次に、ステップS130において、補正が掃除不可領域RBの補正かどうか、を補正動作種別決定部23により判定する(ステップS130)。ステップS130で補正が掃除不可領域RBの補正であると補正動作種別決定部23により判定された場合は、掃除動作補正部20にて補正を行い(ステップS133)、その補正の情報を掃除方法記憶部15により掃除方法データベース17に記憶する(ステップS134)。その後、ステップS123に進む。
【0261】
ステップS130で、前記補正が掃除不可領域RBの補正ではないと補正動作種別決定部23により判定された場合、又は、ステップS134を実行した後、ステップS123において、動作選択部29により、人が、表示部14に表示された掃除作業の一覧から1つの掃除作業をデータ入力IF26を介して選択し、掃除方法データベース17の進捗情報に、選択された現在の掃除作業を設定する(ステップS123)。
【0262】
次いで、ステップS135において、衝突検出部31でロボット本体5の衝突の際の力を検出し、その力が閾値以上であるか否かを衝突検出部31で判断する。前記閾値未満であると衝突検出部31で判断する場合には、ステップS124へ進み、前記閾値以上であると衝突検出部31で判断する場合には、ステップS136へ進む(ステップS135)。
【0263】
ステップS135にて、衝突検出部31で検出された力が前記閾値以上であり、ロボット本体5で衝突が発生したと衝突検出部31で判断する場合には、ステップS136に進む。
【0264】
ステップS136においては、掃除動作補正部20により、デフォルトの動作に戻し、終了する。
【0265】
次いで、ステップS135にて、衝突検出部31で検出された力が前記閾値未満であり、ロボット本体5での衝突無しと衝突検出部31で判断する場合には、ステップS124に進む。
【0266】
ステップS124においては、掃除動作補正部20は、制御パラメータ管理部21へ力ハイブリッドインピーダンス制御モードで動作するよう指令を出し、人の手16でロボット本体5を床面10などの掃除面まで誘導し、データ入力IF26(例えば、掃除スイッチ26cのスタートボタン)にて、掃除作業開始の指令を行う(ステップS124)。その後、ステップS125に進む。
【0267】
次いで、ステップS125においては、人が補正したい方向にロボット本体5(把手30)に力をかけると、補正動作種別決定部23により補正動作の種別を推定して決定する(ステップS125)。その後、ステップS126に進む。
【0268】
次いで、ステップS126において、補正の種別として、掃除面にかける力又は吸引力の種別であると補正動作種別決定部23で決定した場合は、ステップS127に進み、掃除面に垂直な方向に対して高剛性の位置制御モードで動作するよう、掃除動作補正部20から制御パラメータ管理部21へ指令を出す(ステップS126,S127)。その後、ステップS128に進む。
【0269】
次いで、ステップS128においては、人の手16でロボット本体5(把手30)を把持して、補正したい方向に人の手16によりロボット本体5(把手30)に力をかけることで、掃除動作補正部20が動作情報を補正する(ステップS128)。その後、ステップS129に進む。
【0270】
一方、ステップS126で、補正の種別として掃除面にかける力又は吸引力の種別以外であると決定した場合は、ステップS128に進み、制御モードは、力インピーダンス制御モードで変更せず、補正したい方向に人の手16によりロボット本体5(把手30)に力をかけることで、掃除動作補正部20が動作情報を補正する(ステップS126,S128)。その後、ステップS129に進む。
【0271】
次いで、ステップS129においては、ステップS128で補正された掃除動作情報は、掃除方法記憶部15により、掃除方法データベース17に記憶されて(ステップS129)、一連の掃除作業及び掃除動作の設定処理を終了する。
【0272】
一方、ステップS126で、補正動作種別決定部23により、補正の種別として「補正なし」であると決定した場合は、ステップS131に進み、一連の掃除作業及び掃除動作の設定処理を終了する(ステップS126,S131)。
【0273】
掃除作業及び掃除動作の設定処理終了後は、設定された掃除作業及び掃除動作に基づき、掃除ロボット1により掃除を行う。
【0274】
以上の動作ステップS121〜ステップS122、ステップS130、ステップS133、ステップS134、ステップS123、ステップS135、ステップS124〜ステップS127により、力ハイブリッドインピーダンス制御で動作中に、ハイブリッドインピーダンス制御モード若しくは高剛性位置制御にて、掃除動作を補正することで、ロボット本体5による掃除作業が実現する。
【0275】
また、補正動作種別決定部23により、複数の掃除動作をボタンなどを使わずに人の手16によりロボット本体5(把手30)に力をかけるだけで、自動で切り替えて補正することが可能となる。
【0276】
さらに、補正動作種別決定部27により、ロボット本体5の操作に慣れた人又は熟練した人は、一度の補正で2種類の補正を同時に行い、逆に、ロボット本体5の操作に不慣れな人は、一度に1種類の補正を行うことができる。
【0277】
また、制御パラメータ管理部21と制御部22とを有することにより、補正動作の種別に応じて、ロボット本体5の車輪6の機械インピーダンス値を適宜設定することで、ロボット本体5の補正方向に応じて、車輪6の機械インピーダンス値を変更させて制御したり、補正中の吸引力又は力を弱めたり停止することができるので、掃除動作の補正中に、床面10を傷つけたり、塵以外のものを誤って吸い込むことを防ぐことができる。
【0278】
なお、前記実施形態において、掃除動作補正部20は、補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16によりロボット本体5(把手30)にかけた力と掃除方法データベース17の情報とにより、補正の種別の推定を行った後で、すぐに掃除動作の補正を行ったが、人の手16により誤ってロボット本体5(把手30)に力をかけて、人の意図しない補正の種別を選択してしまう事を防ぐために、補正動作種別決定部23で推定後、ある一定時間後に補正を開始しても良い。この場合、補正が始まるまでは、人は意図した補正種別を選択するまで、何度でも操作することができる。
【0279】
また、前記実施形態において、動作選択部29と動作記憶部15と掃除動作補正部20と補正動作種別決定部23と補正種別決定方法設定部27と制御パラメータ管理部21と制御部22となどのそれぞれ、又は、そのうちの任意の一部は、それ自体がソフトウェアで構成することができる。よって、例えば、本明細書の前記実施形態の制御動作を構成するステップを有するコンピュータプログラムとして、記憶装置(ハードディスク等)などの記録媒体に読み取り可能に記憶させ、そのコンピュータプログラムをコンピュータの一時記憶装置(半導体メモリ等)に読み込んでCPUを用いて実行することにより、前記した各ステップを実行することができる。
【0280】
さらに、前記様々な実施形態及び変形例のうちの任意の実施形態又は任意の変形例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【産業上の利用可能性】
【0281】
本発明は、例えば家庭用ロボットなど人とロボットが協調して作業を行う際の掃除機のロボットの動作の制御を行う掃除機の制御装置及び制御方法、掃除機、掃除機の制御プログラム、及び、掃除機の制御用集積電子回路として有用である。また、家庭用ロボットに限らず、産業用ロボット、又は、生産設備等における可動機構を有する掃除機の制御装置及び制御方法、掃除機、掃除機の制御プログラム、及び、掃除機の制御用集積電子回路としても適用が可能である。
【符号の説明】
【0282】
1 掃除ロボット
2 吸引ポンプ制御部
3 塵袋
5 ロボット本体
6 車輪
8 吸引ノズル
9 回転ブラシ制御部
10 床
11 回転ブラシ
13 吸引ポンプ
14 表示部
15 掃除方法記憶部
16 人
17 掃除方法データベース
18 モップ
19 胴体部
20 掃除動作補正部
21 制御パラメータ管理部
22 制御部
23 補正動作種別決定部
24 入出力IF
25 モータードライバ
26 データ入力IF
27 補正種別決定方法設定部
28 掃除不可領域データベース
29 動作選択部
30 把手
31 衝突検出部
42 座標系
43 モータ
44 エンコーダ
45 制御装置
46 胴体座標系
47 周辺装置
48 車輪制御部
53 力検出部
55 目標軌道生成部
63 マーク
64 エンコーダ
65 モータ
66 エンコーダ
67 モータ
68 エンコーダ
69 モータ

【特許請求の範囲】
【請求項1】
移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御装置であって、
前記掃除機に作用する人の力を検出する力検出手段と、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と前記力検出手段で検出された前記掃除機に作用する前記人の力に関する情報とをそれぞれ取得する情報取得部と、
前記情報取得部でそれぞれ取得した前記掃除動作に関する情報と前記人の力に関する情報とから前記掃除動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を補正する掃除動作補正手段とを備えるとともに、
前記掃除動作に関する情報は、前記掃除機が行う前記掃除作業に応じた、前記掃除部の前記掃除位置の情報と、前記掃除部から前記掃除面にかける力情報と、前記掃除部の吸引力の強さに関する情報と、前記掃除部の速度情報と、掃除を行わない領域に関する情報である掃除不可領域情報のうちの少なくとも1つの情報を有することを特徴とする掃除機の制御装置。
【請求項2】
前記掃除動作に関する情報は、前記掃除機が行う前記掃除作業に応じた、前記掃除部から前記掃除面にかける力情報と、前記掃除部の吸引力の強さに関する情報とを少なくとも有し、
前記掃除動作補正手段は、前記掃除動作に関する情報に基づいて、予め設定された力を前記掃除機から前記掃除面に作用させて前記掃除動作を行なう力制御モードを前記掃除機が移動可能なxyz軸方向のそれぞれの軸別に設定して前記掃除動作を前記掃除機で行っている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、補正動作前の前記掃除動作に関する情報のうちの前記設定された力の大きさ又は方向を補正することを特徴とする請求項1に記載の掃除機の制御装置。
【請求項3】
前記掃除動作に関する情報は、前記掃除機が行う前記掃除作業に応じた、前記掃除部の前記掃除位置の情報と、前記掃除部の速度情報と、掃除を行わない領域に関する情報である掃除不可領域情報とを有し、
前記掃除動作補正手段は、前記掃除動作に関する情報に基づいて、前記掃除機の位置を制御する位置制御モードで動作している最中に、駆動停止している前記掃除機に対して前記人から前記掃除機に加わる力に応じて前記掃除機が作動するインピーダンス制御モードを前記掃除機が移動可能なxyz軸方向のそれぞれの軸別に設定して前記掃除作業を動作させている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、前記インピーダンス制御での前記掃除動作に関する情報の前記掃除動作を補正するように前記駆動装置を駆動制御することを特徴とする請求項1に記載の掃除機の制御装置。
【請求項4】
前記掃除機に加わる力を検出する衝突検出手段をさらに備え、
前記衝突検出手段で検出した前記力が閾値以上である場合に、前記掃除動作補正手段は、補正前の動作に戻すことを特徴とする請求項1〜3のいずれか1つに記載の掃除機の制御装置。
【請求項5】
前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に平行な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以下であり、かつ前記掃除面に平行な方向の力成分が第2の閾値以上である場合に、前記補正動作種別決定手段により検出された前記掃除機の前記位置の前記掃除面に平行な方向の移動量が第3閾値以上である場合に、前記補正動作の種別として、掃除面の位置の移動の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に平行な方向に前記掃除機の前記位置を補正するように前記駆動装置を駆動制御することを特徴とする請求項1に記載の掃除機の制御装置。
【請求項6】
前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に平行な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以上であり、かつ前記掃除面に平行な方向の力成分が第2の閾値以上である場合に、前記補正動作種別決定手段により検出された前記掃除機の前記位置の前記掃除面に平行な方向の移動量が第3閾値以上である場合に、前記補正動作の種別として、掃除面の位置の移動の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に平行な方向に前記掃除機の前記位置を補正するように前記駆動装置を駆動制御することを特徴とする請求項1に記載の掃除機の制御装置。
【請求項7】
前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に垂直な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記掃除機の前記位置の前記掃除面に垂直な方向の移動量が第4の閾値より大きい場合に、前記補正動作の種別として、掃除面垂直方向の位置の移動の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に垂直な方向に前記掃除機の前記位置を補正するように前記駆動装置を駆動制御することを特徴とする請求項1に記載の掃除機の制御装置。
【請求項8】
前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に垂直な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記掃除機の前記位置の前記掃除面に垂直な方向の移動量が第4の閾値以下であり、かつ、前記掃除作業が拭き掃除である場合に、前記補正動作の種別として、力のかけ具合の補正の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に垂直な方向への前記掃除機のかかる力を補正するように前記駆動装置を駆動制御することを特徴とする請求項1に記載の掃除機の制御装置。
【請求項9】
前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に垂直な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記掃除機の前記位置の前記掃除面に垂直な方向の移動量が第4の閾値以下であり、かつ、前記掃除作業が吸引掃除である場合に、前記補正動作の種別として、吸引力の補正の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に垂直な方向への前記吸引力を補正するように前記駆動装置を駆動制御することを特徴とする請求項1に記載の掃除機の制御装置。
【請求項10】
前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に平行な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記掃除面に垂直な方向の力成分が第1閾値未満であり、かつ、前記掃除面に平行な方向の力成分が第2閾値以上である場合に、前記補正動作種別決定手段により検出された前記掃除機の前記位置の前記掃除面に平行な方向の移動量が第3閾値未満である場合に、前記補正動作の種別として、速度の補正の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除面に平行な方向に前記掃除機の前記位置の速度を補正するように前記駆動装置を駆動制御することを特徴とする請求項1に記載の掃除機の制御装置。
【請求項11】
前記補正動作種別決定手段は、前記掃除機の位置の前記掃除面に平行な方向の移動量を検出するとともに、
前記補正動作種別決定手段は、前記人の手により前記掃除機にかかる力が前記掃除面に平行であり、かつ、前記補正動作種別決定手段により検出されたある一定時間の前記掃除面に平行な方向の移動量が閾値以上の場合には、前記補正動作の種別として、掃除不可領域の設定の種別であると決定し、
さらに、前記掃除動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記掃除機の前記位置を移動させることで、前記掃除不可領域を設定することを特徴とする請求項1に記載の掃除機の制御装置。
【請求項12】
前記補正動作種別決定手段で決定した前記補正動作の種別に基づき、前記補正動作の種別に関する情報を表示する表示手段をさらに備えることを特徴とする請求項1〜11のいずれか1つに記載の掃除機の制御装置。
【請求項13】
前記移動体と、
前記移動体に取り付けられて掃除面に接触する掃除部と、
前記移動体と前記掃除部とを駆動する駆動装置と、
前記移動体と前記掃除部とを前記駆動装置で駆動制御する請求項1〜3,5〜11のいずれか1つに記載の掃除機の制御装置と、
を備える掃除機。
【請求項14】
移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御方法であって、
前記掃除機に作用する人の力を力検出手段で検出し、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と前記力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する前記人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を補正動作種別決定手段で決定し、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を掃除動作補正手段で補正することを特徴とする掃除機の制御方法。
【請求項15】
移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御プログラムであって、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を補正動作種別決定手段で決定するステップと、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記掃除機に作用する前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を掃除動作補正手段で補正する掃除動作補正ステップとをコンピュータに実行させための掃除機の制御プログラム。
【請求項16】
移動体と、前記移動体に取り付けられて掃除面に接触する掃除部と、前記移動体と前記掃除部とを駆動する駆動装置とを備える掃除機の前記駆動装置を駆動制御して掃除作業を行う掃除機の制御用集積電子回路であって、
前記掃除作業における前記掃除部の吸引力及び前記掃除部の掃除位置を含む掃除動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記掃除機に作用する人の力に関する情報とを用いて、前記掃除動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
予め定められた前記掃除機の前記掃除作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記掃除機に作用する前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記駆動装置を駆動制御して前記掃除動作を補正する掃除動作補正手段とを備えることを特徴とする掃除機の制御用集積電子回路。

【図1A】
image rotate

【図1B】
image rotate

【図1C】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12A】
image rotate

【図12B】
image rotate

【図12C】
image rotate

【図12D】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15A】
image rotate

【図15B】
image rotate

【図15C】
image rotate

【図16A】
image rotate

【図16B】
image rotate

【図16C】
image rotate

【図17】
image rotate

【図18A】
image rotate

【図18B】
image rotate

【図19】
image rotate

【図20A】
image rotate

【図20B】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27A】
image rotate

【図27B】
image rotate

【図27C】
image rotate

【図28A】
image rotate

【図28B】
image rotate

【図28C】
image rotate

【図29A】
image rotate

【図29B】
image rotate

【図29C】
image rotate

【図29D】
image rotate

【図30A】
image rotate

【図30B】
image rotate


【公開番号】特開2011−30888(P2011−30888A)
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願番号】特願2009−181646(P2009−181646)
【出願日】平成21年8月4日(2009.8.4)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】