説明

ロボット及びロボットのノイズ除去方法

【課題】慣性センサーを用いたフィードバック系において、発振してしないロボットを提供する。
【解決手段】アーム101と、アームを回動させるモーター103とトルク伝達機構102とを含むアーム連結部104と、アーム101の端部のアーム連結部104に連結された基体105と、モーター103の回動角度を検出しモーター103の回動角度情報を出力する角度センサー106と、アーム101に作用する慣性力の情報を出力する慣性センサー107と、アーム101の回動動作を制御する制御部108と、角度センサー106の出力と慣性センサー107の出力とから慣性センサー107のノイズ周波数を検出するノイズ検出部109と、ノイズ検出部109の情報からフィルター111の特性を決めるフィルター定数決定部110と、フィルター定数決定部110に基づき慣性センサー107のノイズを除去するフィルター111とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット及びロボットのノイズ除去方法にかかわり、特に、ロボットの制御方法に関する。
【背景技術】
【0002】
ロボットのアームを動作させて停止するとき、アームが振動する。アームが振動すると位置精度良く作業できないので、振動を停止するまで待機することがある。そして、アームの速度を早くするとアームの停止時の振動が大きくなるので、振動が停止するまでの時間が長くなる。そこで、例えば、特許文献1にロボットに慣性センサーを用いることで残留振動を減少させる方法が開示されている。この残留振動はモーターとアーム先端との間に大きな弾性があるために生じる。エンコーダーに代表される位置センサーだけでもモーターの回転情報は取得できるが、慣性センサーを取り付けることでアーム先端の情報はより正確に取得できる。この情報を制御部にフィードバックすることで残留振動を減少させていた。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第3883544号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
慣性センサーを使用するにはノイズを考慮する必要がある。特に振動式のジャイロセンサーでは機械的振動が加わると非常に大きな離調周波数ノイズが発生する。慣性センサーの出力を用いてアームを制御するフィードバック系を構築するときフィードバック系が発振してロボットが動作しなくなることがある。そこで、慣性センサーを含んだフィードバック系の発振を防ぐロボットが求められていた。
【課題を解決するための手段】
【0005】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【0006】
[適用例1]本適用例にかかるロボットは、アームと、前記アームと接続し前記アームを回動または並進させる駆動源を有するアーム連結部と、前記アーム連結部と接続する基体と、前記駆動源の回動角度を検出する角度センサーと、前記アームに取り付けられ前記アームに作用する慣性力を検出する慣性センサーと、前記慣性センサーの出力からノイズを除去するノイズフィルターと、前記アームの回動動作を制御する制御部と、前記角度センサーの出力と前記慣性センサーの出力とから前記慣性センサーのノイズ周波数を検出するノイズ検出部と、前記ノイズフィルターがノイズを除去するノイズフィルター特性を、前記ノイズ周波数を用いて決めるフィルター定数決定部と、を備えることを特徴とする。
【0007】
本適用例によれば、基体にアーム連結部を介してアームが接続されている。アーム連結部は駆動源を有し、駆動源がアームを回動または並進させる。制御部は駆動源を制御することによりアームの回動動作を制御する。駆動源には角度センサーが設置され、角度センサーが駆動源の回転角度を検出する。制御装置は駆動源の回転角度の情報を元にアームの回動状態を認識する。
【0008】
アームには慣性センサーが取り付けられている。そして、制御装置は慣性センサーの出力を用いてアームの回動状況を認識する。ノイズ検出部は角度センサーの出力と慣性センサーの出力とを用いて慣性センサーに固有なノイズにおけるノイズ周波数を検出する。フィルター定数決定部はノイズ周波数を用いてノイズフィルター特性を決定する。このノイズフィルター特性は慣性センサーに固有な特性に対応して決定される。慣性センサーにはノイズフィルターが接続され、ノイズフィルター特性に従ってノイズフィルターは慣性センサーの出力からノイズを除去する。従って、制御部はノイズが軽減された慣性センサーの出力を用いてアームを制御することができる。その結果、制御部は、慣性センサーを含んだフィードバック系の発振を防ぐことができる。
【0009】
[適用例2]上記適用例に記載のロボットでは、前記ノイズ検出部は前記角度センサーが出力する信号の周波数分布と、前記慣性センサーが出力する信号の周波数分布とを用いて前記慣性センサーが出力する信号のノイズ周波数を検出することが好ましい。
【0010】
本適用例によれば、角度センサーが出力する信号の周波数分布と慣性センサーが出力する信号の周波数分布とを用いている。従って、慣性センサーが検出する信号の振動周波数分布からノイズ成分の信号の周波数分布を分離できる。その結果、ノイズ周波数を精度よく特定できる。
【0011】
[適用例3]上記適用例に記載のロボットでは、前記ノイズフィルターは帯域除去フィルターであることが好ましい。
【0012】
本適用例によれば、除去すべき周波数以外の帯域では位相の変化を小さくできる。そして、慣性センサーが出力する信号からノイズ成分の周波数の帯域の信号を除去することができる。
【0013】
[適用例4]上記適用例に記載のロボットでは、前記フィルター定数決定部は前記ノイズ周波数とテーブルとを参照してフィルター定数を決定することが好ましい。
【0014】
本適用例によれば、複雑な計算を要することなくフィルター定数を決定できるので、計算にかかる負荷を少なくすることができる。
【0015】
[適用例5]上記適用例に記載のロボットでは、前記ノイズフィルターは前記制御部にソフトウェアで実装されていることが好ましい。
【0016】
本適用例によれば、ノイズフィルターを構成する電子部品等は必要なく、ハンダ付け等の工数も削減できる。従って、生産性良くロボットを製造することができる。
【0017】
[適用例6]本適用例にかかるロボットは、アームと、前記アームと接続され前記アームを回動または並進させる駆動源を有するアーム連結部とが交互に連結されたアーム体と、前記アーム体と接続する基体と、前記駆動源の回動角度を検出する複数の角度センサーと、前記アームに作用する慣性力を検出する複数の慣性センサーと、前記慣性センサーの出力からノイズを除去する複数のノイズフィルターと、前記アームの回動動作を制御する制御部と、複数の前記角度センサーの出力と複数の前記慣性センサーの出力とから複数の前記慣性センサーのノイズ周波数を検出するノイズ検出部と、前記ノイズフィルターがノイズを除去するノイズフィルター特性を、前記ノイズ周波数を用いて決めるフィルター定数決定部と、を備えることを特徴とする。
【0018】
本適用例によれば、ロボットは、アームとアーム連結部とが交互に連結されたアーム体を備えている。これにより、アームは自在に動くことができる。そして、アームは複数設置され、アームに作用する慣性力を検出する慣性センサーが複数設置されている。アーム連結部は複数設置され、アーム体には角度センサーが複数設置されている。
【0019】
ノイズ検出部は複数の角度センサーの出力と複数の慣性センサーの出力とから慣性センサーのノイズ周波数を検出する。そして、フィルター定数決定部がノイズ周波数を用いて各慣性センサーと対応するノイズフィルター特性を決める。従って、ノイズフィルターは各慣性センサーのノイズを除去することができる。その結果、アームとアーム連結部とが交互に連結されたアーム体を備えたロボットにおいても、制御部は慣性センサーを含んだフィードバック系の発振を防ぐことができる。
【0020】
[適用例7]上記適用例に記載のロボットでは、前記ノイズ検出部は前記角度センサーが出力する信号の周波数分布と、前記慣性センサーが出力する信号の周波数分布と、を用いて前記慣性センサーが出力する信号のノイズ周波数を検出することが好ましい。
【0021】
本適用例によれば、角度センサーが出力する信号の周波数分布と慣性センサーが出力する信号の周波数分布とを用いている。従って、慣性センサーが検出する信号の振動周波数分布からノイズ成分の信号の周波数分布を分離できる。その結果、ノイズ周波数を精度よく特定できる。
【0022】
[適用例8]上記適用例に記載のロボットでは、前記ノイズフィルターは帯域除去フィルターであることが好ましい。
【0023】
本適用例によれば、除去すべき周波数以外の帯域では位相の変化が小さくなる。従って、慣性センサーが出力する信号からノイズ成分の周波数の帯域の信号を除去することができる。
【0024】
[適用例9]上記適用例に記載のロボットでは、前記フィルター定数決定部は前記ノイズ周波数とテーブルとを参照してフィルター定数を決定することが好ましい。
【0025】
本適用例によれば、複雑な計算を要することなくフィルター定数を決定できるので、計算にかかる負荷を少なくすることができる。
【0026】
[適用例10]上記適用例に記載のロボットでは、前記ノイズフィルターは前記制御部にソフトウェアで実装されていることが好ましい。
【0027】
本適用例によれば、ノイズフィルターを構成する電子部品等は必要なく、ハンダ付け等の工数も削減できる。従って、生産性良くロボットを製造することができる。
【0028】
[適用例11]本適用例にかかるロボットのノイズ除去方法は、駆動源の回動角度を検出する駆動源角度検出工程と、慣性センサーを用いてアームに作用する慣性力を検出するアーム慣性力検出工程と、前記駆動源角度検出工程にて検出した前記回動角度の信号と前記アーム慣性力検出工程にて検出した前記慣性力の信号とを用いて前記慣性センサーのノイズ周波数を検出するノイズ成分検出工程と、前記検出した情報からノイズを除去するノイズフィルター特性を決定するフィルター定数決定工程と、前記ノイズフィルター特性に基づいたノイズフィルターでノイズを除去するノイズ除去工程と、を有することを特徴とする。
【0029】
本適用例によれば、駆動源角度検出工程にて駆動源の回動角度を検出している。そして、アーム慣性力検出工程にて慣性センサーを用いてアームに作用する慣性力を検出している。続いて、ノイズ成分検出工程では駆動源角度検出工程にて検出した回動角度の信号とアーム慣性力検出工程にて検出した慣性力の信号とを用いて慣性センサーのノイズ周波数を検出している。次に、フィルター定数決定工程では検出した情報からノイズを除去する特性であるノイズフィルター特性を決定している。ノイズ除去工程ではノイズフィルター特性に基づいたノイズフィルターでノイズを除去している。
【0030】
従って、ノイズフィルター特性は慣性センサーに固有のノイズの特性となるように設定することができる為、ノイズ除去工程では精度良くノイズを除去することができる。その結果、慣性センサーを含んだフィードバック系の発振を防ぐことができる。
【図面の簡単な説明】
【0031】
【図1】実施形態1にかかるロボットの概略構成を示すブロック図。
【図2】センサー出力信号からノイズを除去する工程を示すフローチャート。
【図3】センサー出力信号からノイズを除去する工程を説明するための図。
【図4】センサー出力信号からノイズを除去する工程を説明するための図。
【図5】実施形態2にかかる概略構成を示すブロック図。
【図6】センサー出力信号からノイズを除去する工程を説明するための図。
【発明を実施するための形態】
【0032】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の各図においては、各層や各部材を認識可能な程度の大きさにするため、各層や各部材の尺度を実際とは異ならせしめている。
【0033】
(実施形態1)
本実施形態では、ロボットとロボットが行う特徴的なアームの制御方法について、図1〜図4に従って説明する。図1は、実施形態1にかかるロボットの概略構成を示すブロック図である。
【0034】
図1に示すようにロボット100は基体105を備えている。基体105の内部にはアーム連結部104が設置されている。アーム連結部104は角度センサー106、駆動源としてのモーター103、トルク伝達機構102がこの順に同軸上に配置されている。モーター103の出力軸の一端は角度センサー106と接続されている。角度センサー106はエンコーダーを備えモーター103の回動角度を検出する。モーター103の出力軸の他端はトルク伝達機構102の入力軸と接続されている。トルク伝達機構102は所定の減速比に設定された減速機である。従って、トルク伝達機構102の出力軸の回動角度はモーター103の回動角度を減速比で除算した値となる。
【0035】
トルク伝達機構102の出力軸はアーム101の一端と接続されている。これにより、モーター103が回転することによりアーム101が回転する。アーム101の他端にはロボットハンド112が設置されている。そして、ロボットハンド112に慣性センサー107が設置されている。慣性センサー107は、振動式のジャイロセンサーである。そして、慣性センサー107はアーム101が回転するときの角速度を検出する。
【0036】
ロボット100は制御装置113を備えている。制御装置113はプロセッサーとして各種の演算処理を行うCPU(中央演算処理装置)と各種情報を記憶するメモリーとを有する。さらに、制御装置113は入出力インターフェイス及びデータバスを介してCPUに接続されている。制御装置113が備える主な機能部として、制御部108、ノイズ検出部109、フィルター定数決定部110、ノイズフィルターとしてのフィルター111を有する。これらの機能はソフトウェアに組み込まれており、メモリーに記憶されている。そして、CPUはソフトウェアに従って各機能を実施する。
【0037】
制御部108はアーム101の回動動作やロボットハンド112の動作を制御する機能を備える。ノイズ検出部109は角度センサー106が出力するモーター103の回動角度の信号と慣性センサー107が出力するアーム101の回動角速度の信号とを入力する。そして、慣性センサー107の出力信号に含まれるノイズ周波数を検出する機能を備える。尚、ノイズ周波数は離調周波数とも称す。
【0038】
フィルター定数決定部110はノイズ周波数と定数テーブルとを参照してフィルター111の定数を設定する機能を備える。フィルター111は慣性センサー107が出力するアーム101の回動角速度の信号を入力する。そして、設定された定数に基きフィルター111は回動角速度の信号からノイズを除去する機能を備えている。
【0039】
次に、信号の流れを説明する。まず、制御部108がモーター103に駆動信号を出力する。これにより、モーター103が作動して、アーム101が回動する。角度センサー106はモーター103の回転角度を示すモーター角度信号を制御部108とノイズ検出部109とに出力する。慣性センサー107はアーム101の回動角速度の信号であるアーム角速度信号をノイズ検出部109とフィルター111とに出力する。
【0040】
ノイズ検出部109はモーター角度信号とアーム角速度信号とを入力しノイズ周波数を算出する。そして、算出したノイズ周波数の情報をノイズ検出部109はフィルター定数決定部110へ出力する。フィルター定数決定部110はノイズ周波数の情報からフィルター111の定数を演算する。そして、フィルター定数決定部110はフィルター111の定数を設定する。フィルター111は慣性センサー107からアーム角速度信号を入力する。そして、設定された定数を用いてアーム角速度信号からノイズを除去して制御部108に出力する。
【0041】
図2は、センサー出力信号からノイズを除去する工程を示すフローチャートである。図2において、ステップS1は、アーム駆動工程に相当する。この工程は、制御部108がモーター103を駆動してアーム101を回動させる工程である。ステップS1は他のステップと並行して行われる。ステップS2は、駆動源角度検出工程に相当する。この工程は、角度センサー106がモーター103の角度を検出してモーター角度信号を出力する工程である。次にステップS4に移行する。ステップS3は、アーム慣性力検出工程に相当する。この工程は、慣性センサー107がアーム101の角速度を検出して出力する工程である。次にステップS4に移行する。ステップS2とステップS3とは並行して行われる。
【0042】
ステップS4は、フィルター定数判断工程に相当し、フィルター111の定数を変更するか否かを判断する工程である。定数を変更するときとき、ステップS5に移行する。定数を変更しないとき、ステップS7に移行する。ステップS5は、ノイズ成分検出工程に相当する。この工程は、ノイズ検出部109が慣性センサー107に固有のノイズ周波数を算出する工程である。次にステップS6に移行する。ステップS6は、フィルター定数決定工程に相当する。この工程は、ノイズ周波数を参照してフィルター定数決定部110がフィルター111の定数を設定する工程である。次にステップS7に移行する。ステップS7は、ノイズ除去工程に相当する。この工程は、フィルター111が慣性センサー107からアーム角速度信号を入力しノイズを除去して制御部108に出力する工程である。以上で、センサー出力信号からノイズを除去する工程を終了する。
【0043】
図3及び図4はセンサー出力信号からノイズを除去する工程を説明するための図である。次に、図3及び図4を用いて、図2に示したステップと対応させて、センサー出力信号からノイズを除去するする方法を詳細に説明する。ステップS1〜ステップS3は公知の技術を用いた工程であり、説明を省略する。ステップS4のフィルター定数判断工程ではフィルター111の定数が設定されているかの判断を行う。フィルター111の定数はフィルター111を交換した後に1度設定すればよく、再度交換するまでは設定しなおす必要はない。環境の変化により定数を変更する必要があるときには再度設定しても良い。
【0044】
図3は、ステップS5のノイズ成分検出工程に対応するグラフである。図3において横軸は周波数を示し、右側が左側より高い周波数となっている。図3(a)及び図3(b)において縦軸は強度を示し、上側が下側より高い強度となっている。図3(c)において縦軸は強度比を示し、上側が下側より高い比率となっている。ノイズ検出部109は角度センサー106が出力するモーター角度信号を入力する。そして、ノイズ検出部109はモーター角度信号を減速比にて除算する。モーター角度信号は時間をパラメーターとして変化する信号である。ノイズ検出部109はモーター角度信号を時間にて微分する。これにより、アーム101の角速度信号が得られる。次に、ノイズ検出部109は除算したモーター角度信号をフーリエ変換することにより、図3(a)に示す周波数分布としての第1角速度スペクトル114を算出する。
【0045】
ノイズ検出部109は慣性センサー107が出力するアーム角速度信号を入力する。アーム角速度信号は時間をパラメーターとして変化する信号である。ノイズ検出部109は慣性センサー107のアーム角速度信号をフーリエ変換することにより、図3(b)に示す周波数分布としての第2角速度スペクトル115を算出する。第2角速度スペクトル115には強度がピークとなる周波数の場所が2ヶ所形成される。1つはアーム101の回動による回動速度周波数115aである。もう1つは慣性センサー107に固有のノイズ周波数115bである。
【0046】
続いて、ノイズ検出部109は第2角速度スペクトル115を第1角速度スペクトル114にて除算する。その結果、図3(c)に示す第3角速度スペクトル116が算出される。第3角速度スペクトル116において、回動速度周波数115aのピークは小さくなり、ノイズ周波数115bのピークのみが残る。これにより、ノイズ周波数115bを検出することができる。
【0047】
図4はステップS6のフィルター定数決定工程に対応する図である。図4(a)はフィルター111を示すブロック図である。尚、このブロック図は次の数式のように表すことができる。
【0048】
a:フィルター定数としての第1定数402。
b:フィルター定数としての第2定数403。
c:フィルター定数としての第3定数404。
d:フィルター定数としての第4定数405。
e:フィルター定数としての第5定数406。
-1:遅延素子401。
【0049】
【数1】

【0050】
第1定数402〜第5定数406によってフィルター111がノイズを除去する特性であるノイズフィルター特性が決定される。図4(b)はフィルター定数を設定するときに参照するテーブルとしての定数テーブル117の例を示す。図4(b)に示すように、定数テーブル117はノイズ周波数115bに対応して第1定数402〜第5定数406が設定されている。カットオフ周波数の幅は特に限定されないが、本実施形態では、例えば、定数テーブル117にカットオフ周波数の幅が50Hzの例を示した。カットオフ周波数の幅は除去帯域とも称す。定数テーブル117はこの例に限定されず事前に実験して求めるのが好ましい。フィルター定数決定部110はノイズ周波数115bと定数テーブル117とを参照して第1定数402〜第5定数406を決定する。そして、フィルター定数決定部110はフィルター111のパラメーターに第1定数402〜第5定数406を設定する。
【0051】
図4(c)はフィルター111のノイズフィルター特性を示すグラフである。縦軸は利得を示し上側が下側より高い利得となっている。横軸は周波数を示し、右側が左側より高い周波数となっている。フィルター特性線118はフィルター111が信号を通過させる周波数特性を示している。図4(c)に示すように、フィルター特性線118はノイズ周波数115bを中心とする除去帯域118a内の周波数の信号を減衰させる特性となっている。そして、ノイズ周波数115bを中心とする除去帯域118aより低周波の信号と高周波の信号とを通過させる帯域除去フィルターとなっている。
【0052】
ステップS7のノイズ除去工程ではフィルター111にアーム角速度信号が入力される。フィルター111には既に第1定数402〜第5定数406が設定されている。これにより、フィルター111はアーム角速度信号からノイズ周波数115bのノイズを除去し、制御部108に出力する。以上で、センサー出力信号からノイズを除去する工程を終了する。
【0053】
以上述べたように、本実施形態にかかるロボット100によれば、以下の効果を得ることができる。
(1)本実施形態によれば、ノイズ検出部109は角度センサー106の出力と慣性センサー107の出力とを用いて慣性センサー107に固有なノイズにおけるノイズ周波数115bを検出する。フィルター定数決定部110はノイズ周波数115bを用いてノイズフィルター特性を決定する。このノイズフィルター特性は慣性センサー107に固有な特性と対応している。慣性センサー107にはフィルター111が接続され、ノイズフィルター特性に従ってフィルター111は慣性センサー107の出力からノイズを除去する。従って、制御部108はノイズが減衰した慣性センサー107の出力を用いてアーム101を制御することができる。その結果、制御部108は、慣性センサー107を含んだフィードバック系の発振を防ぐことができる。
【0054】
(2)本実施形態によれば、角度センサー106の出力の第1角速度スペクトル114と慣性センサー107の出力の第2角速度スペクトル115とを用いている。従って、慣性センサー107が検出する信号の振動周波数分布からノイズ周波数115bの信号を分離できる。その結果、ノイズ周波数115bを精度よく特定できる。
【0055】
(3)本実施形態によれば、フィルター111のフィルター特性線118は帯域除去フィルターとなっている。従って、除去すべき周波数以外の帯域では位相の変化を小さくできる。さらに、慣性センサーが出力する信号からノイズ成分の周波数の帯域の信号を除去することができる。
【0056】
(4)本実施形態によれば、フィルター定数決定部110はノイズ周波数115bから定数テーブル117を参照してフィルター定数を決定している。従って、複雑な計算を要することなくフィルター定数を決定できるので、計算にかかる負荷を少なくすることができる。
【0057】
(5)本実施形態によれば、フィルター111は制御装置113にソフトウェアで実装されている。従って、フィルター111を構成する電子部品等は必要なく、ハンダ付け等の工数も削減でき、生産性良く製造可能なロボット100を提供することができる。
【0058】
(6)本実施形態によれば、ステップS2の駆動源角度検出工程にてモーター103の回動角度を検出している。そして、ステップS3のアーム慣性力検出工程にて慣性センサー107を用いてアーム101の角速度を検出している。続いて、ステップS5のノイズ成分検出工程では駆動源角度検出工程にて検出した回動角度の信号とアーム慣性力検出工程にて検出した慣性力の信号とを用いて慣性センサー107のノイズ周波数115bを検出している。次に、ステップS6のフィルター定数決定工程では検出した情報からノイズを除去する特性であるノイズフィルター特性を決定している。ステップS7のノイズ除去工程ではノイズフィルター特性に基づいたフィルター111でノイズを除去している。
【0059】
従って、ノイズフィルター特性は慣性センサー107に固有のノイズの特性となっている為、ノイズ除去工程では精度良くノイズを除去することができる。その結果、慣性センサー107を含んだフィードバック系の発振を防ぐことができる。
【0060】
(7)本実施形態によれば、制御装置113が慣性センサー107のノイズ周波数115bを自動で検出している。そのノイズを除去するフィルター111の第1定数402〜第5定数406をフィルター定数決定部110が自動で設定して、フィルター111が慣性センサー107のノイズを除去している。これによって慣性センサー107を含むフィードバック系を安定にできる。そして、操作者が操作することなくフィルター定数が設定されるので、生産性良くロボット100を操作することができる。
【0061】
(実施形態2)
次に、ロボットとロボットが行う特徴的なノイズの除去方法について、図5及び図6を用いて説明する。本実施形態が実施形態1と異なるところは、アームの数が1個から2個へ増えた点にある。尚、実施形態1と同じ点については説明を省略する。
【0062】
すなわち、本実施形態では、図5の実施形態2にかかる概略構成を示すブロック図に示したようにアームの個数が2個になっている。ロボット500は基体509を備えている。基体509の中には第1角度センサー510、駆動源としての第1モーター504、第1トルク伝達機構503がこの順に同軸上に重ねて配置されている。第1トルク伝達機構503と第1モーター504とで第1アーム連結部505を構成している。
【0063】
第1トルク伝達機構503の出力軸には第1アーム501が接続され、第1モーター504を駆動することにより第1アーム501が回動する。尚、基体509、第1角度センサー510、第1アーム連結部505、第1アーム501は、実施形態1の基体105、角度センサー106、アーム連結部104、アーム101と同様な形態であり説明を省略する。
【0064】
第1アーム501において、第1アーム連結部505と反対側には第2角度センサー511、駆動源としての第2モーター507、第2トルク伝達機構506がこの順に同軸上に重ねて配置されている。第2トルク伝達機構506と第2モーター507とで第2アーム連結部508を構成している。第1トルク伝達機構503は第1減速比の減速比で減速する減速機であり、第2トルク伝達機構506は第2減速比の減速比で減速する減速機である。尚、第2角度センサー511、第2アーム連結部508は、第1角度センサー510、第1アーム連結部505と同様な形態であり説明を省略する。第1アーム501において、第2角度センサー511の近くには第1慣性センサー512が設置されている。
【0065】
第2トルク伝達機構506の出力軸には第2アーム502が接続され、第2モーター507を駆動することにより第2アーム502が回動する。そして、第1アーム501、第2アーム502、第1アーム連結部505、第2アーム連結部508によりアーム体521が構成されている。第2アーム502において第2アーム連結部508の反対側の端にはロボットハンド522が設置されている。そして、ロボットハンド522に第2慣性センサー513が設置されている。第1慣性センサー512及び第2慣性センサー513は、振動式のジャイロセンサーである。そして、第1慣性センサー512は第1アーム501が回転するときの角速度を検出し、第2慣性センサー513は第2アーム502の基体509に対する絶対的な角速度を検出する。
【0066】
ロボット500は制御装置523を備えている。制御装置523は実施形態1の制御装置113と同様にCPU(中央演算処理装置)、メモリー、入出力インターフェイス及びデータバスを備え、同様な機能を備えている。制御装置523が備える主な機能部として、制御部514、第1ノイズ検出部515、第1フィルター定数決定部517、ノイズフィルターとしての第1フィルター519を有する。制御部514、第1ノイズ検出部515、第1フィルター定数決定部517、第1フィルター519はそれぞれ実施形態1の制御部108、ノイズ検出部109、フィルター定数決定部110、フィルター111と同様な機能を備えている。
【0067】
さらに、制御装置523が備える主な機能部として、第2ノイズ検出部516、第2フィルター定数決定部518、ノイズフィルターとしての第2フィルター520を有する。第2フィルター定数決定部518、第2フィルター520はそれぞれ実施形態1のフィルター定数決定部110、フィルター111と同様な機能を備えている。第2ノイズ検出部516は実施形態1のノイズ検出部109と類似な機能を備えている。第2ノイズ検出部516がノイズ検出部109と異なる点は第1角度センサー510と第2角度センサー511との2つの角度センサーの信号を入力する点にある。これらの機能はソフトウェアに組み込まれており、メモリーに記憶されている。そして、CPUはソフトウェアに従って各機能を実施する。
【0068】
センサー出力信号からノイズを除去する一連の工程においてステップS1のアーム駆動工程〜ステップS4のフィルター定数判断工程は実施形態1と同じであり、説明を省略する。ステップS5において第1ノイズ検出部515が第1慣性センサー512のノイズ周波数を検出し、第2ノイズ検出部516が第2慣性センサー513のノイズ周波数を検出する。ステップS5〜ステップS7において第1ノイズ検出部515、第1フィルター定数決定部517、第1フィルター519が実施する内容は実施形態1のノイズ検出部109、フィルター定数決定部110、フィルター111が実施する内容と同様であり説明を省略する。そして、第2ノイズ検出部516が実施する内容について説明する。
【0069】
図6は、センサー出力信号からノイズを除去する工程を説明するための図であり、ステップS5のノイズ成分検出工程に対応するグラフである。図6において横軸は周波数を示し、右側が左側より高い周波数となっている。図6(a)及び図6(b)において縦軸は強度を示し、上側が下側より高い強度となっている。図6(c)において縦軸は強度比を示し、上側が下側より高い比率となっている。
【0070】
第2ノイズ検出部516は第1角度センサー510が出力する第1モーター角度信号、第2角度センサー511が出力する第2モーター角度信号、第2慣性センサー513が出力する第2アーム角速度信号とを入力する。そして、第2ノイズ検出部516は第1モーター角度信号を第1減速比にて除算する。次に、第2ノイズ検出部516は第2モーター角度信号を第2減速比にて除算する。続いて、第2ノイズ検出部516は除算した第1モーター角度信号と除算した第2モーター角度信号とを連結した連結モーター信号を形成する。
【0071】
モーター角度信号は時間をパラメーターとして変化する信号である。第2ノイズ検出部516は連結モーター信号を時間にて微分する。これにより、第1アーム501及び第2アーム502の角速度信号を連結した連結角速度信号が得られる。次に、第2ノイズ検出部516は連結角速度信号をフーリエ変換することにより、図6(a)に示す周波数分布としての第4角速度スペクトル524を算出する。
【0072】
第2ノイズ検出部516は第2慣性センサー513が出力する第2アーム角速度信号を入力する。第2アーム角速度信号は時間をパラメーターとして変化する信号である。第2ノイズ検出部516は第2アーム角速度信号をフーリエ変換することにより、図6(b)に示す周波数分布としての第5角速度スペクトル525を算出する。第5角速度スペクトル525には強度がピークとなる周波数の場所が3ヶ所形成される。1つは第1アーム501の回動による第1回動速度周波数525aである。1つは第2アーム502の回動による第2回動速度周波数525bである。もう1つは第2慣性センサー513に固有のノイズ周波数525cである。
【0073】
続いて、第2ノイズ検出部516は第5角速度スペクトル525を第4角速度スペクトル524にて除算する。その結果、図6(c)に示す第6角速度スペクトル526が算出される。第6角速度スペクトル526において、第1回動速度周波数525a及び第2回動速度周波数525bのピークは小さくなり、ノイズ周波数525cのピークのみが残る。これにより、ノイズ周波数525cを検出することができる。
【0074】
ステップS6のフィルター定数決定工程では第2ノイズ検出部516から第2フィルター定数決定部518へノイズ周波数525cが出力される。第2フィルター定数決定部518はノイズ周波数525cを打ち消すフィルター定数をあらかじめ用意してあるテーブルに従って決定する。そして、第2フィルター定数決定部518は決定した定数を第2フィルター520に設定する。これにより、ステップS7のノイズ除去工程では、第2アーム角速度信号からノイズが除去される。以上で、センサー出力信号からノイズを除去する工程を終了する。
【0075】
以上述べたように、本実施形態にかかるロボット500によれば、以下の効果を得ることができる。
(1)本実施形態によれば、第2ノイズ検出部516が第2慣性センサー513のノイズ周波数を自動で検出している。そして、第2フィルター定数決定部518がノイズを除去する第2フィルター520の定数を自動で設定し、第2フィルター520が第2慣性センサー513のノイズを除去する。これによって制御装置523は第2慣性センサー513を含むフィードバック系を安定に駆動することができる。
【0076】
(2)本実施形態によれば、ロボット500は、アームとアーム連結部とが交互に連結されたアーム体を備えている。これにより、第1アーム501及び第2アーム502は自在に動くことができる。そして、第2ノイズ検出部516は第1角度センサー510及び第2角度センサー511の出力と第2慣性センサー513との出力とから第2慣性センサー513のノイズ周波数525cを検出している。そして、第2フィルター定数決定部518がノイズ周波数525cを用いて第2慣性センサー513に対応するノイズフィルター特性を決めている。従って、第2フィルター520は第2ノイズ検出部516のノイズを除去することができる。その結果、アームとアーム連結部とが交互に連結されたアーム体を備えたロボット500においても、制御部514は第2慣性センサー513を含んだフィードバック系の発振を防ぐことができる。
【0077】
尚、本実施形態は上述した実施形態に限定されるものではなく、種々の変更や改良を加えることも可能である。変形例を以下に述べる。
(変形例1)
前記第1の実施形態では、ロボット100は水平多関節ロボット形式のロボットであったが、ロボットの形式はこれに限らない。垂直多関節ロボット、直交ロボット、パラレルリンクロボット等各種形態のロボットに上記の方法を用いることができる。この場合にも上記の方法と同様な方法を用いて慣性センサーのノイズを除去することができる。
【0078】
直交ロボットのときには慣性センサーが直動するので、加速度センサーを用いる。このときにも回転モーターの回転角度やリニアモーターの移動距離のデータと加速度センサーの出力とを用いて加速度センサーに固有のノイズを検出することができる。そして、フィルターを用いて加速度センサーのノイズを除去することができる。
【0079】
(変形例2)
前記第1の実施形態では、定数テーブル117を用いて第1定数402〜第5定数406を決定した。これに限らず、第1定数402〜第5定数406を算出する数式を用いても良い。これにより、さらに細かく第1定数402〜第5定数406を設定することができる。
【0080】
(変形例3)
前記第1の実施形態では、フィルター111は帯域除去フィルターであったが、ローパスフィルターでも良い。慣性センサー107のノイズが除去可能であれば良い。そして、ローパスフィルターの方が帯域除去フィルターより定数の個数が少ないので、メモリーに記憶するデータ量を少なくすることができる。
【0081】
(変形例4)
前記第1の実施形態では、角度センサー106と慣性センサー107とを用いてアーム101の角度を検出した。フィルター111の定数を設定した後は、慣性センサー107だけを用いてアーム101の角度を検出しても良い。簡便にアーム101の角度を検出することができる。尚、変形例1〜4の内容は実施形態2にも適用することができる。
【0082】
(変形例5)
前記第2の実施形態では、アームの個数が2個のロボットであるが、アームの個数は3個以上でも良い。このとき、アームはさらに複雑な動作を行うことができる。
【0083】
(変形例6)
前記第2の実施形態では、減速比にて除算した第1モーター角度信号と除算した第2モーター角度信号とを連結した連結モーター信号を形成した。そして、第2ノイズ検出部516は連結モーター信号を用いて第4角速度スペクトル524を算出した。これに限らず、まず、減速比にて除算した第1モーター角度信号から第1アーム角速度スペクトルを算出する。次に、減速比にて除算した第2モーター角度信号から第2アーム角速度スペクトルを算出する。そして、第1アーム角速度スペクトルと第2アーム角速度スペクトルとを用いて第4角速度スペクトル524を算出しても良い。計算時間の早い方法を選択しても良い。
【符号の説明】
【0084】
100,500…ロボット、101…アーム、103…駆動源としてのモーター、104…アーム連結部、105,509…基体、106…角度センサー、107…慣性センサー、108,514…制御部、109…ノイズ検出部、110…フィルター定数決定部、111…ノイズフィルターとしてのフィルター、114…周波数分布としての第1角速度スペクトル、115…周波数分布としての第2角速度スペクトル、115b,525c…ノイズ周波数、117…テーブルとしての定数テーブル、402…フィルター定数としての第1定数、403…フィルター定数としての第2定数、404…フィルター定数としての第3定数、405…フィルター定数としての第4定数、406…フィルター定数としての第5定数、501…第1アーム、502…第2アーム、504…駆動源としての第1モーター、505…第1アーム連結部、507…駆動源としての第2モーター、508…第2アーム連結部、510…第1角度センサー、511…第2角度センサー、512…第1慣性センサー、513…第2慣性センサー、515…第1ノイズ検出部、516…第2ノイズ検出部、517…第1フィルター定数決定部、518…第2フィルター定数決定部、519…ノイズフィルターとしての第1フィルター、520…ノイズフィルターとしての第2フィルター、521…アーム体、524…周波数分布としての第4角速度スペクトル、525…周波数分布としての第5角速度スペクトル。

【特許請求の範囲】
【請求項1】
アームと、前記アームと接続し前記アームを回動または並進させる駆動源を有するアーム連結部と、
前記アーム連結部と接続する基体と、
前記駆動源の回動角度を検出する角度センサーと、
前記アームに取り付けられ前記アームに作用する慣性力を検出する慣性センサーと、
前記慣性センサーの出力からノイズを除去するノイズフィルターと、
前記アームの回動動作を制御する制御部と、
前記角度センサーの出力と前記慣性センサーの出力とから前記慣性センサーのノイズ周波数を検出するノイズ検出部と、
前記ノイズフィルターがノイズを除去するノイズフィルター特性を、前記ノイズ周波数を用いて決めるフィルター定数決定部と、を備えることを特徴とするロボット。
【請求項2】
前記ノイズ検出部は前記角度センサーが出力する信号の周波数分布と、前記慣性センサーが出力する信号の周波数分布とを用いて前記慣性センサーが出力する信号のノイズ周波数を検出することを特徴とする請求項1に記載のロボット。
【請求項3】
前記ノイズフィルターは帯域除去フィルターであることを特徴とする、請求項2に記載のロボット。
【請求項4】
前記フィルター定数決定部は前記ノイズ周波数とテーブルとを参照してフィルター定数を決定することを特徴とする、請求項3に記載のロボット。
【請求項5】
前記ノイズフィルターは前記制御部にソフトウェアで実装されていることを特徴とする、請求項4に記載のロボット。
【請求項6】
アームと、前記アームと接続され前記アームを回動または並進させる駆動源を有するアーム連結部とが交互に連結されたアーム体と、
前記アーム体と接続する基体と、
前記駆動源の回動角度を検出する複数の角度センサーと、
前記アームに作用する慣性力を検出する複数の慣性センサーと、
前記慣性センサーの出力からノイズを除去する複数のノイズフィルターと、
前記アームの回動動作を制御する制御部と、
複数の前記角度センサーの出力と複数の前記慣性センサーの出力とから複数の前記慣性センサーのノイズ周波数を検出するノイズ検出部と、
前記ノイズフィルターがノイズを除去するノイズフィルター特性を、前記ノイズ周波数を用いて決めるフィルター定数決定部と、を備えることを特徴とするロボット。
【請求項7】
前記ノイズ検出部は前記角度センサーが出力する信号の周波数分布と、前記慣性センサーが出力する信号の周波数分布と、を用いて前記慣性センサーが出力する信号のノイズ周波数を検出することを特徴とする請求項6に記載のロボット。
【請求項8】
前記ノイズフィルターは帯域除去フィルターであることを特徴とする、請求項7に記載のロボット。
【請求項9】
前記フィルター定数決定部は前記ノイズ周波数とテーブルとを参照してフィルター定数を決定することを特徴とする、請求項8に記載のロボット。
【請求項10】
前記ノイズフィルターは前記制御部にソフトウェアで実装されていることを特徴とする、請求項9に記載のロボット。
【請求項11】
駆動源の回動角度を検出する駆動源角度検出工程と、
慣性センサーを用いてアームに作用する慣性力を検出するアーム慣性力検出工程と、
前記駆動源角度検出工程にて検出した前記回動角度の信号と前記アーム慣性力検出工程にて検出した前記慣性力の信号とを用いて前記慣性センサーのノイズ周波数を検出するノイズ成分検出工程と、
前記検出した情報からノイズを除去するノイズフィルター特性を決定するフィルター定数決定工程と、
前記ノイズフィルター特性に基づいたノイズフィルターでノイズを除去するノイズ除去工程と、を有することを特徴とするロボットのノイズ除去方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate