(57)【要約】【課題】アームの長手方向に沿った軸周りの振動を抑制可能なロボットシステムを提供する。【解決手段】ロボットシステム１は、回動軸（第１回動軸Ｊ１）周りに回動するアーム２２と、アームを回動させるモーター（第１モーター２６１）と、アームに接続され回動軸と平行な直動軸の軸方向に移動するシャフト（スプラインシャフト２５３）と、アームまたはシャフトに設けられた慣性センサー２０と、を有するロボット２と、モーターを制御する制御部を有する制御装置３と、を備え、慣性センサーは、回動軸および直動軸に対して直交するロール軸周りの角速度、または、ロール軸を中心とした円の接線方向の加速度を検出し、制御部は、アームの停止時または減速時におけるアームのロール軸周りの回動方向を示す情報と、慣性センサーからの出力とに基づいて、モーターを制御する。【選択図】図１
2020146794.tif 000002
【特許請求の範囲】
【請求項１】
回動軸周りに回動するアームと、前記アームを前記回動軸周りに回動させるモーターと、前記アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、前記アームまたはシャフトに設けられた慣性センサーと、を有するロボットと、
前記モーターを制御する制御部を有する制御装置と、を備え、
前記慣性センサーは、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を検出し、
前記制御部は、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、前記慣性センサーからの出力とに基づいて、前記モーターを制御する、
ロボットシステム。
【請求項２】
第１回動軸周りに回動する第１アームと、前記第１アームに接続され前記第１回動軸と平行な第２回動軸周りに回動する第２アームと、を含むアームと、前記第１アームを前記第１回動軸周りに回動させる第１モーターと、前記第２アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、前記第２アームまたは前記シャフトに設けられた慣性センサーと、を有するロボットと、
前記第１モーターを制御する制御部を有する制御装置と、を備え、
前記慣性センサーは、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を検出し、
前記制御部は、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、前記慣性センサーからの出力とに基づいて、前記第１モーターを制御する、
ロボットシステム。
【請求項３】
前記情報は、前記慣性センサーからの出力に基づいて求められる、
請求項１または２に記載のロボットシステム。
【請求項４】
前記制御部は、記憶部を有し、
前記情報は、前記記憶部に記憶されている、
請求項１ないし３のいずれか一項に記載のロボットシステム。
【請求項５】
前記情報は、前記シャフトが第１位置に位置する場合の前記回動方向を示す第１情報と、前記シャフトが第１位置よりも高い第２位置に位置する場合の前記回動方向を示す第２情報とを有する、
請求項１ないし４のいずれか一項に記載のロボットシステム。
【請求項６】
前記制御部は、前記シャフトが前記第１位置と前記第２位置との間に位置する場合、前記情報を用いずに前記モーターを制御する、
請求項５に記載のロボットシステム。
【請求項７】
前記シャフトには負荷が設けられ、
前記情報は、前記負荷の重さに基づいている、
請求項１ないし６のいずれか一項に記載のロボットシステム。
【請求項８】
前記アームの外表面を構成する部材は、樹脂を含む、
請求項１ないし７のいずれか一項に記載のロボットシステム。
【請求項９】
モーターによって回動軸周りに回動するアームと、前記アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を検出する慣性センサーと、を有するロボットの制御装置であって、
前記モーターを制御する制御部を有し、
前記制御部は、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、前記慣性センサーからの出力とに基づいて、前記モーターを制御する、
制御装置。
【請求項１０】
前記情報は、前記慣性センサーからの出力に基づいて求められる、
請求項９に記載の制御装置。
【請求項１１】
前記制御部は、記憶部を有し、
前記情報は、前記記憶部に記憶されている、
請求項９または１０に記載の制御装置。
【請求項１２】
前記情報は、前記シャフトが第１位置に位置する場合の前記回動方向を示す第１情報と、前記シャフトが前記第１位置よりも高い第２位置に位置する場合の前記回動方向を示す第２情報と、を有する、
請求項１１に記載の制御装置。
【請求項１３】
前記制御部は、前記シャフトが前記第１位置と前記第２位置との間に位置する場合、前記情報を用いずに前記モーターを制御する、
請求項１２に記載の制御装置。
【請求項１４】
前記シャフトには負荷が設けられ、
前記情報は、前記負荷の重さに基づいている、
請求項９ないし１３のいずれか一項に記載の制御装置。
【請求項１５】
モーターによって回動軸周りに回動するアームと、前記アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、慣性センサーと、を有するロボットの制御方法であって、
前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を、前記慣性センサーによって検出する検出工程と、
検出した前記角速度または前記加速度と、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、に基づいて、前記モーターを制御する制御工程と、を備える、
制御方法。
【請求項１６】
前記情報は、前記慣性センサーからの出力に基づいて求められる、
請求項１５に記載の制御方法。
【請求項１７】
前記情報は、記憶されている情報である、
請求項１５または１６に記載の制御方法。
【請求項１８】
前記情報は、前記シャフトが第１位置に位置する場合の前記回動方向を示す第１情報と、前記シャフトが前記第１位置よりも高い第２位置に位置する場合の前記回動方向を示す第２情報と、を有する、
請求項１７に記載の制御方法。
【請求項１９】
前記制御工程は、前記シャフトが前記第１位置と前記第２位置との間に位置する場合、前記情報を用いずに前記モーターを制御する工程を含む、
請求項１８に記載の制御方法。
【請求項２０】
前記シャフトには負荷が設けられ、
前記情報は、前記負荷の重さに基づいている、
請求項１７ないし１９のいずれか一項に記載の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットシステム、制御装置、および制御方法に関する。
【背景技術】
【０００２】
従来、部品などを搬送するロボットとして、例えば特許文献１には、スカラロボットとも呼ばれる水平多関節ロボットが開示されている。特許文献１に記載されているロボットは、基台と、基台の上端部に連結され、鉛直方向に沿う軸心を中心にして、基台に対して回動する第１アームと、第１アームの先端部に連結され、鉛直方向に沿う軸心を中心にして、第１アームに対して回動する第２アームと、第２アームの先端部に設けられ、第２アームに対して変位するスプラインシャフトとを有している。また、第２アーム内には、基台に対する第２アームの角速度を測定する角速度センサーが配設されている。
【０００３】
そして、このような構成のロボットは、制御装置により作動が制御されている。制御装置は、第２アーム内に配設されている角速度センサーなどから入力される各種信号に基づいて、第１アームの角速度を演算し、水平方向の振動である第２アームの振動が抑制されるように、第１アームを回動させるモーターを制御することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１７１０５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載されているロボットにおいて、第２アームに生じる振動には、水平方向の振動の他に、第２アームの長手方向に沿った軸周り、所謂ロール方向の振動もある。しかしながら、特許文献１に記載のロボットでは、前述したように第２アームの水平方向の振動は抑制されるが、第２アームの長手方向に沿った軸周りの振動の抑制については、考慮されていなかった。
【課題を解決するための手段】
【０００６】
本願のロボットシステムは、回動軸周りに回動するアームと、前記アームを前記回動軸周りに回動させるモーターと、前記アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、前記アームまたはシャフトに設けられた慣性センサーと、を有するロボットと、前記モーターを制御する制御部を有する制御装置と、を備え、前記慣性センサーは、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を検出し、前記制御部は、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、前記慣性センサーからの出力とに基づいて、前記モーターを制御する。
【０００７】
本願のロボットシステムは、第１回動軸周りに回動する第１アームと、前記第１アームに接続され前記第１回動軸と平行な第２回動軸周りに回動する第２アームと、を含むアームと、前記第１アームを前記第１回動軸周りに回動させる第１モーターと、前記第２アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、前記第２アームまたは前記シャフトに設けられた慣性センサーと、を有するロボットと、前記第１モーターを制御する制御部を有する制御装置と、を備え、前記慣性センサーは、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を検出し、前記制御部は、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、前記慣性センサーからの出力とに基づいて、前記第１モーターを制御する。
【０００８】
上述のロボットシステムにおいて、前記情報は、前記慣性センサーからの出力に基づいて求められることとしてもよい。
【０００９】
上述のロボットシステムにおいて、前記制御部は、記憶部を有し、前記情報は、前記記憶部に記憶されていることとしてもよい。
【００１０】
上述のロボットシステムにおいて、前記情報は、前記シャフトが第１位置に位置する場合の前記回動方向を示す第１情報と、前記シャフトが第１位置よりも高い第２位置に位置する場合の前記回動方向を示す第２情報とを有することとしてもよい。
【００１１】
上述のロボットシステムにおいて、前記制御部は、前記シャフトが前記第１位置と前記第２位置との間に位置する場合、前記情報を用いずに前記モーターを制御することとしてもよい。
【００１２】
上述のロボットシステムにおいて、前記シャフトには負荷が設けられ、前記情報は、前記負荷の重さに基づいていることとしてもよい。
【００１３】
上述のロボットシステムにおいて、前記アームの外表面を構成する部材は、樹脂を含むこととしてもよい。
【００１４】
本願の制御装置は、モーターによって回動軸周りに回動するアームと、前記アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を検出する慣性センサーと、を有するロボットの制御装置であって、前記モーターを制御する制御部を有し、前記制御部は、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、前記慣性センサーからの出力とに基づいて、前記モーターを制御する。
【００１５】
上述の制御装置において、前記情報は、前記慣性センサーからの出力に基づいて求められることとしてもよい。
【００１６】
上述の制御装置において、前記制御部は、記憶部を有し、前記情報は、前記記憶部に記憶されていることとしてもよい。
【００１７】
上述の制御装置において、前記情報は、前記シャフトが第１位置に位置する場合の前記回動方向を示す第１情報と、前記シャフトが前記第１位置よりも高い第２位置に位置する場合の前記回動方向を示す第２情報と、を有することとしてもよい。
【００１８】
上述の制御装置において、前記制御部は、前記シャフトが前記第１位置と前記第２位置との間に位置する場合、前記情報を用いずに前記モーターを制御することとしてもよい。
【００１９】
上述の制御装置において、前記シャフトには負荷が設けられ、前記情報は、前記負荷の重さに基づいていることとしてもよい。
【００２０】
本願の制御方法は、モーターによって回動軸周りに回動するアームと、前記アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、慣性センサーと、を有するロボットの制御方法であって、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を、前記慣性センサーによって検出する検出工程と、検出した前記角速度または前記加速度と、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、に基づいて、前記モーターを制御する制御工程と、を備える。
【００２１】
上述の制御方法において、前記情報は、前記慣性センサーからの出力に基づいて求められることとしてもよい。
【００２２】
上述の制御方法において、前記情報は、記憶されている情報であることとしてもよい。
【００２３】
上述の制御方法において、前記情報は、前記シャフトが第１位置に位置する場合の前記回動方向を示す第１情報と、前記シャフトが前記第１位置よりも高い第２位置に位置する場合の前記回動方向を示す第２情報と、を有することとしてもよい。
【００２４】
上述の制御方法において、前記制御工程は、前記シャフトが前記第１位置と前記第２位置との間に位置する場合、前記情報を用いずに前記モーターを制御する工程を含むこととしてもよい。
【００２５】
上述の制御方法において、前記シャフトには負荷が設けられ、前記情報は、前記負荷の重さに基づいていることとしてもよい。
【図面の簡単な説明】
【００２６】
【図１】第１実施形態に係るロボットシステムの全体構成を示す図。
【図２】第１実施形態に係るロボットシステムに適用されるロボットの概略図。
【図３】第１実施形態に係るロボットシステムの制御系を示すブロック図。
【図４】第１実施形態に係るロボットシステムの回路系を示すブロック図。
【図５Ａ】アームの動作ステップを説明する図１中のＱ２視図。
【図５Ｂ】アームの動作ステップを説明する図１中のＱ１視図。
【図６】第２アームとスプラインシャフトとを説明する概略図。
【図７Ａ】アーム停止時または減速時のスプラインシャフトのロール方向への回転移動例１を示す概略図。
【図７Ｂ】アーム停止時または減速時のスプラインシャフトのロール方向への回転移動例２を示す概略図。
【図８】スプラインシャフトの長さによる捻れ方向を示す符号テーブルの一例を示す表。
【図９】アーム停止時または減速時にロール方向に生じる角速度を示すグラフ。
【図１０】第２実施形態に係るロボットシステムの加速度センサーの配置例を説明する概略図。
【図１１】第２実施形態に係るロボットシステムの制御系を示すブロック図。
【図１２】第２実施形態に係るロボットシステムの回路系の実施例１を示すブロック図。
【図１３】第２実施形態に係るロボットシステムの回路系の実施例２を示すブロック図。
【発明を実施するための形態】
【００２７】
以下、本発明のロボットシステム、制御装置、および制御方法を、添付図面に示す好適な実施形態に基づいて詳細に説明する。なお、以下で説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００２８】
また、以下で参照する図面の内、図１、図２、図５Ａ、図５Ｂ、図６、図７Ａ、図７Ｂ、および図１０では、説明の便宜上、互いに直交する三つの軸であるＸ軸、Ｙ軸、およびＺ軸を矢印で図示しており、その矢印の先端側を「＋（プラス）」、基端側を「−（マイナス）」としている。また、以下では、Ｘ軸に平行な方向を「Ｘ方向」、Ｙ軸に平行な方向を「Ｙ方向」、Ｚ軸に平行な方向を「Ｚ方向」という。また、以下では、説明の便宜上、図１中の上方である＋Ｚ方向側を「上」、下方である−Ｚ方向側を「下」ということがある。
【００２９】
また、以下では、Ｘ軸とＹ軸とを含むＸＹ平面が水平となっており、Ｚ軸が鉛直方向となっている。ここで、本明細書における「水平」とは、完全な水平に限定されず、電子部品の搬送が阻害されない限り、水平に対して、例えば５°以内で傾斜している状態も含む。同様に、本明細書において、「鉛直」とは、完全に鉛直な場合のみならず、鉛直に対して±５°以内で傾斜している場合も含む。また、本明細書において、「平行」とは、二つの線（軸を含む）または面が互いに完全な平行である場合のみならず、±１０°以内で傾斜している場合も含む。また、本明細書において、「直交」とは、二つの線（軸を含む）または面が互いに完全な直交である場合のみならず、±１０°以内で傾斜している場合も含む。
【００３０】
１．第１実施形態
１．１：第１実施形態に係るロボットシステムの全体構成
先ず、第１実施形態に係るロボットシステムの構成について、図１、図２、および図３を参照して説明する。図１は、第１実施形態に係るロボットシステムの全体構成を示す図である。図２は、第１実施形態に係るロボットシステムに適用されるロボットの概略図である。なお、図１ではエンドエフェクターの図示は省略されている。また、図２ではエンドエフェクターおよび対象物を模式的に示している。
【００３１】
図１、および図２に示すように、第１実施形態に係るロボットシステム１は、ロボット２と、ロボット２を制御する制御装置３とを備えている。これにより、ロボットシステム１は、後述する制御装置３の利点を有することができる。ロボットシステム１の用途は、特に限定されず、例えば、電子部品および電子機器等の対象物の保持、搬送、組立および検査等の各作業で用いることができる。
【００３２】
ロボット２は、スカラロボットとも呼ばれる水平多関節ロボットであり、基台２１と、基台２１に設けられ基台２１に対して回動軸である第１回動軸Ｊ１周りに回動可能なアーム２２と、アーム２２に設けられた作業ヘッド２５と、を有する。また、ロボット２は、アーム２２を回動軸である第２回動軸Ｊ２周りに駆動させるアーム駆動部２６と、作業ヘッド２５を駆動させる作業ヘッド駆動部２８と、を有する。また、ロボット２は、第２回動軸Ｊ２と異なる位置に設けられ、作業ヘッド２５にあって、第１回動軸Ｊ１および第２回動軸Ｊ２のいずれかと平行な直動軸の軸方向に移動し、下方の一端側にエンドエフェクター４が設けられるシャフトであるスプラインシャフト２５３と、アーム２２またはスプラインシャフト２５３に設けられ、第２回動軸Ｊ２の軸方向と直交し、かつ、第２回動軸Ｊ２とスプラインシャフト２５３の回動軸である第３回動軸Ｊ３とを含む平面である仮想平面ＶＰに平行な軸でありアーム２２のロール軸である第３角速度検出軸Ａ３周りの角速度ωＡ３を検出する慣性センサー２０の一例としての角速度センサー２０１（図３参照）と、を有する。
【００３３】
制御装置３は、アーム駆動部２６に含まれるモーターとしての第１モーター２６１の作動を制御する第１モーター制御部３０およびモーターとしての第２モーター２７１の作動を制御する第２モーター制御部３１を備えている（図３参照）。第１モーター制御部３０は、アーム２２が第２回動軸Ｊ２周りに回動した際に、角速度センサー２０１の検出した角速度ωＡ３に基づいて第１モーター２６１に対してフィードバック制御を行う。第１モーター制御部３０は、このフィードバック制御により第１モーター２６１の作動を制御し、作業ヘッド２５のスプラインシャフト２５３において、アーム２２の回動方向に沿って生じる回動などの振動、例えばスプラインシャフト２５３に生じるエンドエフェクター４側の制御点Ｐ１の振動を抑制することができる。
【００３４】
このようなロボットシステム１によれば、後述するように、アーム２２が第１回動軸Ｊ１周りに回動して停止した後、もしくは減速したときのアーム２２の振動を抑制し、例えばスプラインシャフト２５３の制御点Ｐ１の位置をできる限り一定に維持することができる。これにより、エンドエフェクター４で対象物Ｗを把持する際、その把持を安定して行うことができる。
【００３５】
以下、ロボット２の構成について、さらに詳細に説明する。
基台２１は、例えば図示しない床面にボルト等によって固定されている。アーム２２は、基台２１に連結され、基台２１に対して第１回動軸Ｊ１周りに回動可能な第１アーム２３と、第１アーム２３の先端部に設けられ、第１アーム２３に対して第１回動軸Ｊ１と平行な第２回動軸Ｊ２周りに回動可能に連結されている第２アーム２４と、を有する。
【００３６】
なお、第１アーム２３は、例えば樹脂などの柔軟性を有する部材を、その外表面を構成する部材に含むことが好ましい。この樹脂には、例えば、ポリ塩化ビニル・ポリエチレンなどの熱可塑性樹脂、フェノール樹脂・メラミン樹脂などの熱硬化性樹脂と、または天然ゴムや合成ゴムなどを例示することができる。第１アーム２３は、外表面に樹脂などを用いることにより、樹脂の柔軟性による緩衝作用により、回動する第１アーム２３が他の部位と接触した場合の接触衝撃を小さくすることができる。なお、アーム２２は、角速度センサー２０１の検出した角速度ωＡ３に基づいて第１モーター２６１に対してフィードバック制御を行い、第１モーター２６１の作動を制御することによって、作業ヘッド２５のスプラインシャフト２５３に生じる振動を抑制することができる。したがって、上述したように、アーム２２は、外表面を柔軟な樹脂で構成した第１アーム２３としても、作業ヘッド２５のスプラインシャフト２５３に生じる振動を増加させることが無い。
【００３７】
また、基台２１内には、基台２１に対して第１アーム２３を、その回動軸としての第１回動軸Ｊ１周りに回動させる第１モーター２６１が設けられている。また、第１モーター２６１には、第１モーター２６１の回転量を検出する角度センサーとしての第１エンコーダー２６２が設けられており、第１エンコーダー２６２からの出力によって基台２１に対する第１アーム２３の回動角を検出することができる。
【００３８】
また、第２アーム２４内には、第１アーム２３に対して第２アーム２４を、その回動軸としての第２回動軸Ｊ２周りに回動させる第２モーター２７１が設けられている。また、第２モーター２７１には、第２モーター２７１の回転量を検出する角度センサーとしての第２エンコーダー２７２が設けられており、第２エンコーダー２７２からの出力によって第１アーム２３に対する第２アーム２４の回動角を検出することができる。図３に示すように、アーム駆動部２６は、第１モーター２６１と、第１エンコーダー２６２と、第２モーター２７１と、第２エンコーダー２７２とを有する構成となっている。
【００３９】
作業ヘッド２５は、第２アーム２４の先端部、すなわち、第２アーム２４の回動軸としての第２回動軸Ｊ２と異なる位置に設けられている。作業ヘッド２５は、第２アーム２４の先端部に同軸的に配置されたスプラインナット２５１およびボールネジナット２５２と、スプラインナット２５１およびボールネジナット２５２に挿通されたスプラインシャフト２５３と、を有する。
【００４０】
スプラインシャフト２５３は、第２アーム２４に対して、その中心軸である第３回動軸Ｊ３周りに回動可能であり、かつ、第３回動軸Ｊ３に沿った方向、換言すれば第３回動軸Ｊ３と平行な方向に往復移動が可能となっている。なお、第１回動軸Ｊ１、第２回動軸Ｊ２および第３回動軸Ｊ３は、互いに平行であり、それぞれ、鉛直方向に沿っている。
【００４１】
また、第２アーム２４内には、スプラインナット２５１を回転させてスプラインシャフト２５３を第３回動軸Ｊ３周りに回動させる第３モーター２８１が設けられている。また、第３モーター２８１には、第３モーター２８１の回転量を検出する角度センサーとしての第３エンコーダー２８２が設けられており、第３エンコーダー２８２からの出力によって第２アーム２４に対するスプラインシャフト２５３の回転量を検出することができる。また、第２アーム２４内には、ボールネジナット２５２を回転させてスプラインシャフト２５３を第３回動軸Ｊ３に沿った方向に移動させる第４モーター２９１が設けられている。また、第４モーター２９１には、第４モーター２９１の回転量を検出する角度センサーとしての第４エンコーダー２９２が設けられており、第４エンコーダー２９２からの出力によって第２アーム２４に対するスプラインシャフト２５３の移動量を検出することができる。図３に示すように、作業ヘッド駆動部２８は、第３モーター２８１と、第３エンコーダー２８２と、第４モーター２９１と、第４エンコーダー２９２とを有する構成となっている。
【００４２】
図１および図２に示すように、スプラインシャフト２５３の下端側の先端部には、エンドエフェクター４を装着するためのペイロード２５４が設けられている。ペイロード２５４に装着するエンドエフェクター４としては、特に限定されず、例えば、対象物Ｗを保持するハンドや対象物Ｗを加工する作業具等が挙げられる。なお、ハンドによる対象物Ｗの保持には、把持、および吸着を含む。
【００４３】
慣性センサー２０の一例としての角速度センサー２０１（図３参照）は、第２アーム２４内に設けられている。特に、本実施形態における角速度センサー２０１は、第２アーム２４の先端部であるスプラインシャフト２５３の近傍に設けられている。なお、第１回動軸Ｊ１と慣性センサー２０との間の距離、本構成では第１回動軸Ｊ１と角速度センサー２０１との間の距離を、距離Ｌとする。
【００４４】
このように、角速度センサー２０１が第２アーム２４の先端部に設けられることにより、第１モーター２６１と角速度センサー２０１との距離Ｌが大きくなり、第２アーム２４のロール軸である第３角速度検出軸Ａ３周りの振動を、より振動の大きな部位において検出することができ、角速度ωＡ３の検出感度を高めることができる。
【００４５】
図２に示すように、角速度センサー２０１は、第２アーム２４が第２回動軸Ｊ２周りに回動、または、第２アーム２４の回動が停止した状態で、第１アーム２３が第１回動軸Ｊ１周りに回動した際に、第２アーム２４における三つの軸周りの角速度を検出することができる。以下では、「第１アーム２３が第１回動軸Ｊ１周りに回動した際に、アーム２２のロール軸周りに生じる角速度」を代表とする。
【００４６】
なお、三つの軸のうち、一つ目の軸は、図２中の第１角速度検出軸Ａ１であり、二つ目の軸は、第２角速度検出軸Ａ２であり、三つ目の軸は、第３角速度検出軸Ａ３である。また、このような角速度センサー２０１としては、例えばジャイロセンサーで構成されているのが好ましい。
【００４７】
第１角速度検出軸Ａ１は、第２回動軸Ｊ２と第３回動軸Ｊ３とを含む平面である仮想平面ＶＰ、すなわち、図２の紙面に直交する軸であり、図２に示すＹ軸に沿った軸である。この第１角速度検出軸Ａ１周りの角速度、換言すれば、ピッチ方向の角速度を「第１角速度ωＡ１」と言うことがある。
【００４８】
第２角速度検出軸Ａ２は、第１角速度検出軸Ａ１と直交する、すなわち、第２回動軸Ｊ２の軸方向と平行な軸であり、図２に示すＺ軸に沿った軸である。この第２角速度検出軸Ａ２周りの角速度、換言すれば、ヨー方向の角速度を「第２角速度ωＡ２」と言うことがある。
【００４９】
第３角速度検出軸Ａ３は、第１角速度検出軸Ａ１と第２角速度検出軸Ａ２とに直交する、すなわち、第２回動軸Ｊ２の軸方向と直交し、かつ、仮想平面ＶＰに平行な軸であり、図２に示すＸ軸に沿った軸である。この第３角速度検出軸Ａ３周りの角速度、換言すれば、アーム２２のロール方向の角速度を「第３角速度ωＡ３」と言うことがある。
【００５０】
このように角速度センサー２０１は、仮想平面ＶＰに直交する第１角速度検出軸Ａ１周りの第１角速度ωＡ１を検出することができる。これにより、例えば第１角速度ωＡ１の情報を、スプラインシャフト２５３のＺ軸に沿った上下方向の振動抑制制御に用いることができる。
【００５１】
また、角速度センサー２０１は、第２回動軸Ｊ２に平行な第２角速度検出軸Ａ２周りの第２角速度ωＡ２も検出することができる。これにより、例えば第２角速度ωＡ２の情報を、スプラインシャフト２５３の水平方向の振動抑制制御に用いることができる。
【００５２】
また、角速度センサー２０１は、アーム２２のロール軸と平行な第３角速度検出軸Ａ３周りの第３角速度ωＡ３を検出することができる。この第３角速度ωＡ３は、スプラインシャフト２５３の第３角速度検出軸Ａ３周りの振動抑制制御に用いられる。この制御については、後述する。
【００５３】
角速度センサー２０１としては、角速度を検出することができれば、特に限定されず、例えば、圧電体の変形により生じる電荷から角速度を検出する角速度センサー、静電容量の変化から角速度を検出する角速度センサー等を用いることができる。なお、本実施形態では、角速度センサー２０１として水晶振動子を用いている。この水晶振動子は、振動腕を有しており、振動腕を駆動振動モードで振動させている状態で、第１角速度検出軸Ａ１、第２角速度検出軸Ａ２および第３角速度検出軸Ａ３のいずれかの検出軸周りの角速度が加わると、コリオリの力によって振動腕に検出振動モードが励振され、この検出振動モードに応じた検出信号を出力するようになっている。そのため、水晶振動子から出力される検出信号に基づいて、各検出軸周りの角速度を検出することができる。
【００５４】
図３に示すように、制御装置３は、ロボット２のアーム駆動部２６、作業ヘッド駆動部２８および慣性センサー２０と電気的に接続され、これらの各部の作動を制御する第１モーター制御部３０および第２モーター制御部３１を有する。ロボット２と制御装置３とは、ケーブルで電気的に接続されている。ただし、ロボット２と制御装置３とは、有線方式の接続に限らず、例えば、ケーブルを省略し、無線方式で接続してもよい。また、制御装置３は、その一部または全部がロボット２に内蔵されていてもよい。
【００５５】
第１モーター制御部３０や第２モーター制御部３１などを含む制御装置３としては、例えば、プロセッサーの一例であるＣＰＵ（Central Processing Unit）が内蔵されたコンピューター（ＰＣ：personal computer）等で構成することができる。これにより、制御装置３は、ロボット２の各部を制御することができる。
【００５６】
また、図３に示すように、制御装置３は、各種情報（諸条件）を記憶する記憶部３９と、各種情報（諸条件）を入力する入力部３８と、を備えている。
【００５７】
記憶部３９には、例えば、ロボット２を動作させるプログラムや、アーム２２が第２回動軸Ｊ２周りに回動した際に、ロール軸周りのアーム２２の回動方向を示す情報である補正符号、および角速度センサー２０１の検出した角速度ωＡ３に基づいて第１モーター２６１に対してフィードバック制御する制御プログラムや、入力部３８を介して入力された情報、および定義されている感度補正量などを記憶することができる。また、記憶部３９には、後述する第３角速度検出軸Ａ３周り、すなわちロール方向へのアーム２２の回動方向を示す補正符号などの情報を記憶することができる。
【００５８】
入力部３８は、ロボット２の動作に必要な情報を入力することができる。この入力部３８としては、特に限定されず、例えば、キーボードやタッチパネル等で構成することができる。
【００５９】
１．２．第１実施形態に係る、アームの振動を抑制する制御方法および制御装置
次に、スプラインシャフト２５３の第３角速度検出軸Ａ３周りの振動を抑制する制御方法について、図１〜図３に加え、図４、図５Ａ、図５Ｂ、図６、図７Ａ、図７Ｂ、図８、および図９を参照して説明する。図３は、第１実施形態に係るロボットシステムの制御系を示すブロック図である。図４は、第１実施形態に係るロボットシステムの回路系を示すブロック図である。図５Ａは、アームの動作ステップを説明する図１中のＱ２視図である。図５Ｂは、アームの動作ステップを説明する図１中のＱ１視図である。図６は、第２アームとスプラインシャフトとを説明する概略図である。図７Ａは、アーム停止時または減速時のスプラインシャフトのロール方向への回転移動例１を示す概略図である。図７Ｂは、アーム停止時または減速時のスプラインシャフトのロール方向への回転移動例２を示す概略図である。図８は、スプラインシャフトの長さによる捻れ方向を示す符号テーブルの一例を示す表である。図９は、アーム停止時または減速時にロール方向に生じる角速度を示すグラフである。
【００６０】
なお、以下説明する本形態におけるアームの振動を抑制する制御方法では、アーム２２のロール軸周りの角速度ωＡ３を、慣性センサー２０の一例としての角速度センサー２０１によって検出する検出工程と、角速度センサー２０１の検出した角速度と、アーム２２の停止時または減速時におけるアーム２２のロール軸周りの回動方向を示す情報と、に基づいて、第１モーター２６１を制御する制御工程と、を含む。
【００６１】
第１アーム２３および第２アーム２４を含むアーム２２は、例えば、図５ＡのＳｔｅｐ１に示す初期位置から、矢印ａ１で示す第１回動軸Ｊ１周りに所定角度回動し、二点鎖線で示すアーム２２ａの位置に停止した際に、その慣性によって第３角速度検出軸Ａ３周り、すなわち、アーム２２のロール方向に振動する。なお、図５ＡのＳｔｅｐ２が、この停止した際の状態を示している。そして、図５ＢのＳｔｅｐ２ＡおよびＳｔｅｐ２Ｂに示すように、アーム２２を構成する第２アーム２４の先端部に設けられているスプラインシャフト２５３も、この第２アーム２４とともに、例えばスプラインシャフト２５３ａからスプラインシャフト２５３ａａの間において矢印ｂ１のように、第３角速度検出軸Ａ３周りに振動することになる。図５Ｂでは、スプラインシャフト２５３の停止目標位置を位置Ｐで示している。そして、角速度センサー２０１では、この第３角速度検出軸Ａ３周りの振動と等価な角速度ωＡ３を検出することができ、この工程が検出工程に相当する。
【００６２】
ここで、第２アーム２４の先端部に設けられているスプラインシャフト２５３の振動の回動方向は、図５Ｂに示す矢印ｂ１のような正転を示す振動例と、矢印ｂ１と逆方向に回転振動する逆転を示す振動例とがある。以下で説明するフィードバック制御では、第２アーム２４の先端部に設けられているスプラインシャフト２５３の振動の回動方向を示す情報として、後述する手法のいずれかによって正転・逆転を表す補正符号を決定する。そして、制御装置３は、制御工程において、第３角速度検出軸Ａ３周りのアーム２２の回動方向を示す情報である補正符号と、角速度センサー２０１からの角速度ωＡ３に係る出力と、に基づいて、第１モーター２６１の作動を制御することによって、スプラインシャフト２５３の振動をより的確に抑制することができる。
【００６３】
第２アーム２４の先端部に設けられているスプラインシャフト２５３の振動の回動方向は、アーム２２の捻れ方向モーメントＭｊ２と、対象物Ｗを把持したときのスプラインシャフト２５３で構成される負荷側モーメントＭｌｏａｄとの大小関係によって決定される。換言すれば、アーム２２の第１回動軸Ｊ１周りにおける回動が停止したとき、アーム２２の第３角速度検出軸Ａ３周りに生じる捻れの回動方向は、図６に示すように、対象物Ｗを把持したときのスプラインシャフト２５３の位置条件、つまりスプラインシャフト２５３の長さＤによって回動の正逆方向が反転する。すなわち、スプラインシャフト２５３に生じる振動の回動方向を示す情報としての補正符号が変わることになる。このような、スプラインシャフト２５３における振動の回動方向を示す情報としての補正符号は、種々の手法によって決定することができる。決定されたスプラインシャフト２５３における振動の回動方向を示す情報は、記憶部３９に記憶される。
【００６４】
先ず、回動方向を示す情報としての補正符号を決定する第１の手法について説明する。回動方向を示す情報としての補正符号を決定する第１の手法は、第１アーム２３と第２アーム２４とを含むロボット２の構造の理論値から求める。
【００６５】
具体的に、第１の手法では、上述したように、アーム２２の捻れ方向モーメントＭｊ２と、対象物Ｗを把持したときのシャフトとしてのスプラインシャフト２５３で構成される負荷側モーメントＭｌｏａｄとの大小関係によって、スプラインシャフト２５３における振動の回動方向を示す情報としての補正符号を求めることができる。ここで、アーム２２の捻れ方向モーメントＭｊ２は、第１アーム２３と第２アーム２４とを含むロボット２の構造の理論値から求めることができる。アーム２２の捻れ方向モーメントＭｊ２は、第１アーム２３と第２アーム２４との結合支点Ａ４から見たモーメントの理論値であるアーム２２の捻れ方向モーメントＭｊ２として予め求めておく。このモーメントの理論値であるアーム２２の捻れ方向モーメントＭｊ２に対して、第１アーム２３と第２アーム２４との結合支点Ａ４から見たスプラインシャフト２５３の長さＤと対象物Ｗを把持したときの負荷の重さとを乗算して求めた負荷側モーメントＭｌｏａｄを比較することによって求めることができる。
【００６６】
以下、スプラインシャフト２５３における振動の回動方向を示す符号としての補正符号について、図７Ａおよび図７Ｂを参照して説明する。
【００６７】
先ず、図７Ａを参照して、アーム２２の捻れ方向モーメントＭｊ２が、スプラインシャフト２５３の長さＤ１×対象物Ｗａで表される負荷側モーメントＭｌｏａｄよりも小さい場合、換言すれば負荷の重心が第３角速度検出軸Ａ３に対して対象物Ｗ側に大きく離れている場合について説明する。この場合、図７Ａの回転移動例１に示すように、矢印Ｊの方向に移動してきた第２アーム２４が仮想線Ｓの位置で停止したとき、対象物Ｗａ側が、第２アーム２４が移動してきた矢印Ｊの方向と同じ方向である回転方向Ｆ１に沿って、第３角速度検出軸Ａ３周りに回転移動、即ち回動する。このような回転移動の場合の補正符号が、「補正符号プラス（＋）」である。
【００６８】
次に、図７Ｂを参照して、アーム２２の捻れ方向モーメントＭｊ２が、スプラインシャフト２５３の長さＤ１×対象物Ｗａで表される負荷側モーメントＭｌｏａｄよりも大きい場合、換言すれば負荷の重心が第３角速度検出軸Ａ３に近い位置にある場合について説明する。この場合、図７Ｂの回転移動例２に示すように、矢印Ｊの方向に移動してきた第２アーム２４が仮想線Ｓの位置で停止したとき、第３角速度検出軸Ａ３に対して対象物Ｗｂの配置側と反対側が、第２アーム２４が移動してきた矢印Ｊの方向と同じ方向である回転方向Ｆ２に沿って、第３角速度検出軸Ａ３周りに回転移動する。換言すれば、対象物Ｗｂ側が、第２アーム２４が移動してきた矢印Ｊの方向と反対方向、すなわち、図７Ａに示す方向と逆方向に、第３角速度検出軸Ａ３周りに回転移動、即ち回動する。このような回転移動の場合の補正符号が、「補正符号マイナス（−）」である。
【００６９】
図５Ａおよび図５Ｂに戻り、アーム２２を構成する第２アーム２４が、第３角速度検出軸Ａ３周りに振動した際、その振動が大きければ大きい程、制御点Ｐ１での振幅、換言すれば制御点Ｐ１での変位量も大きくなり、その結果、制御点Ｐ１の位置が定まらないおそれがある（図５Ｂ：Ｓｔｅｐ２Ｂ参照）。そして、この状態で、例えば、エンドエフェクター４で対象物Ｗを把持しようとしても、その把持を行うことが困難となるおそれがある。
【００７０】
そこで、制御装置３では、ロール軸周りのアーム２２の回動方向を示す情報である補正符号、および角速度センサー２０１の検出したアーム２２のロール軸周りの角速度ωＡ３に基づいて第１モーター２６１に対してフィードバック制御を行い、第１モーター２６１の作動を制御することによって、スプラインシャフト２５３の第３角速度検出軸Ａ３周り、すなわちロール軸周りの振動の抑制を行う。
【００７１】
このフィードバック制御では、ロール軸周りのアーム２２の回動方向を示す情報である補正符号、および角速度センサー２０１の検出したアーム２２におけるロール軸周りの角速度ωＡ３の方向と大きさに基づいて、その角速度ωＡ３を相殺する方向にアーム２２が移動するように第１モーター２６１の作動を制御する。すなわち、制御装置３は、速度制御として第１モーター２６１の作動を制御し、図５ＡのＳｔｅｐ３および図５ＢのＳｔｅｐ３の矢印ａ２に示す方向にアーム２２ａを移動させることによって角速度ωＡ３を相殺する。その結果、第２アーム２４ａの先端部に設けられているスプラインシャフト２５３ａは、図５ＡのＳｔｅｐ３および図５ＢのＳｔｅｐ３に示す第２アーム２４ｂのスプラインシャフト２５３ｂの位置となる。
【００７２】
その後、制御装置３は、アーム２２の位置制御として第１モーター２６１の作動を制御し、図５ＡのＳｔｅｐ４および図５ＢのＳｔｅｐ４の矢印ａ３に示す方向にアーム２２ｂをアーム２２ｃの位置に移動させ、停止目標位置である位置Ｐにスプラインシャフト２５３ｃを停止する。このように、制御装置３は、このアーム２２、すなわちスプラインシャフト２５３の振動の抑制により、制御点Ｐ１の停止位置が、できる限り一定となる制御を可能に構成されている。
【００７３】
なお、上述したロール軸周りのアーム２２の回動方向を示す情報である補正符号の決定は、以下のような第２の手法、および第３の手法を用いても行うことができる。
【００７４】
回動方向を示す情報である補正符号を決定する第２の手法は、慣性センサー２０としての角速度センサー２０１からの出力に基づいて補正符号を決定する。アーム２２には、把持装置としてのハンドや周辺機器などが取り付けられることがある。このような場合、アーム２２の捻れ方向モーメントＭｊ２は、ロボット２の設計構造の理論値からずれてしまうことになる。
【００７５】
第２の手法では、このようにずれの生じたアーム２２の捻れ方向モーメントＭｊ２に対応したアーム２２の捻れ回動方向を求めるため、ハンドや周辺機器などがアーム２２に取り付けられた状態において、アーム２２が停止したときの捻れ回動方向を、シャフトとしてのスプラインシャフト２５３の長さＤに対応させて取得する。
【００７６】
この捻れ回動方向の取得に当たっては、アーム２２が停止したときの角速度センサー２０１からの出力の符号を取得し、この出力の符号に基づいて捻れ回動方向を決定する。第２の手法では、アーム２２の回動が停止するときの角速度が時計回りの方向である場合を「補正符号プラス（＋）」と規定し、反時計回りの方向である場合を「補正符号マイナス（−）」と規定する。
【００７７】
具体的には、スプラインシャフト２５３の長さＤを、例えば一定間隔で変化させ、その都度アーム２２を回動させて停止したときの最初の捻れ回動方向が、「補正符号プラス（＋）」であるか、「補正符号マイナス（−）」であるかを記録し、図８に示すようなテーブルを作成する。図８の表に示す例では、スプラインシャフト２５３の長さであるスプライン長を０ｍｍから１８０ｍｍまで１０ｍｍ間隔で変化させたときの補正符号の状況が示されている。
【００７８】
また、具体的に図８の表に示す例では、スプラインシャフト２５３の長さであるスプライン長が０ｍｍ〜１６０ｍｍとなる第１位置にスプラインシャフト２５３が位置する場合の捻れ回動方向を示す第１情報としての補正符号「マイナス」と、スプラインシャフト２５３の長さであるスプライン長が１７０ｍｍ〜１８０ｍｍとなる第２位置にスプラインシャフト２５３が位置する場合の捻れ回動方向を示す第２情報としての補正符号「プラス」と、を含む。即ち、振動の回動方向を示す情報は、スプラインシャフト２５３が第１位置に位置する場合の捻れ回動方向を示す第１情報と、スプラインシャフト２５３が第１位置よりも高い第２位置に位置する場合の捻れ回動方向を示す第２情報とを有している。このようなスプラインシャフト２５３における振動の回動方向を示す情報は、記憶部３９に記憶される。
【００７９】
そして、実際のロボット２の使用時においては、その停止時におけるスプラインシャフト２５３の長さＤ、例えばスプライン長が第１位置にあるか、もしくは第２位置にあるかに応じて補正符号を決定し、決定された補正符号と、角速度センサー２０１からの角速度ωＡ３に係る出力と、に基づいて、第１モーター２６１の作動を制御する。これにより、スプラインシャフト２５３の振動を、より的確に抑制することができる。
【００８０】
なお、第２の手法において、アーム２２の捻れ方向モーメントＭｊ２と負荷側モーメントＭｌｏａｄとが釣り合って、捻れ回動が起きない領域がある場合、もしくは補正符号にばらつきを生じる虞がある領域は、補正符号を用いずに、第１モーター２６１の作動を制御することができる。すなわち、制御工程では、スプラインシャフト２５３の長さであるスプライン長が、第１の位置にある場合の捻れ回動方向を示す第１情報としての補正符号「マイナス」と、第２の位置にある場合の第２情報としての補正符号「プラス」との間を不感帯エリアとし、この不感帯エリアでは、補正符号を用いずに第１モーター２６１の作動を制御する工程を含むことができる。
【００８１】
図８に表で示されている例では、スプラインシャフト２５３が、第１位置と第２位置との間に位置する、スプライン長が１６０ｍｍを超え、１７０ｍｍ未満の範囲にあるときは、アーム２２の捻れ方向モーメントＭｊ２と負荷側モーメントＭｌｏａｄとが釣り合って、捻れ回動が起きないことがある。あるいは、補正符号が「プラス」になるか「マイナス」になるか不安定となることがある。したがって、スプライン長が１６０ｍｍを超え、１７０ｍｍ未満の範囲にスプラインシャフト２５３が位置している場合は、この間を不感帯エリアとして補正をかけずに角速度センサー２０１からの角速度ωＡ３に係る出力に基づいて、第１モーター２６１の作動を制御する。
【００８２】
このように、制御装置３は、スプラインシャフト２５３の捻れ回動が生じない第１位置と第２位置との間に、スプラインシャフト２５３がある場合の不感帯エリアにおいて、補正符号を用いず、角速度センサー２０１からの角速度ωＡ３に係る出力に基づいて、第１モーター２６１の作動を制御することから、安定したフィードバック制御を行うことができる。
【００８３】
回動方向を示す情報である補正符号を決定する第３の手法は、慣性センサー２０としての角速度センサー２０１からの出力に基づいて補正符号を決定する。第３の手法では、アーム２２の回動が停止するときの角速度が、プラス方向と規定する時計回りの方向で始まるか、またはマイナス方向として規定する反時計回りの方向から始めるかが不明である場合、アーム２２の回動停止直後における角速度データの絶対値を用いて制御に使用する。
【００８４】
具体的に第３の手法では、図９に示すように、アーム２２の回動停止直後から出力されている角速度データの符号が反転するゼロクロス点Ｃまでの間の角速度データの符号によって、ゼロクロス点Ｃ以降の角速度データの符号を反転させるか否かを判断する。例えば、アーム２２停止時の本来の角速度データが、破線Ｈのような波形で推移する場合、ゼロクロス点Ｃまでの間の角速度データの絶対値を取ると、実線Ｋで示す波形になる。このとき、ゼロクロス点Ｃまでの間の角速度データの符号はマイナスであるため、ゼロクロス点Ｃ以降の破線Ｈで示す角速度データの符号を反転させる。その結果、破線Ｈで示す角速度データは、符号反転され実線Ｋで示す波形となる。このように符号反転された角速度データを用いることにより、アーム２２の回動が停止するときの角速度の方向が不明である場合におけるフィードバック制御を行うことができる。
【００８５】
なお、制御装置３は、フィードバック制御として、角速度ωＡ３に基づいてその角速度ωＡ３を相殺する方向にアーム２２が移動するように第１モーター２６１の作動を制御する速度制御と、速度制御によって生じる位置ずれを予測してアーム２２を目標位置に移動させる位置制御とを、並行して行ってもよい。
【００８６】
このような構成として、制御装置３は、図４に示すように、第１モーター制御部３０と、第２モーター制御部３１と、微分回路４０１と、感度補正量処理部４０２と、フィードバック量算出部４０３と、を有している。
【００８７】
第１モーター制御部３０は、位置制御部としての第１位置制御部３０１および速度制御部としての第１速度制御部３０２を含み、第１アーム２３を第１回動軸Ｊ１周りに回動させる第１モーター２６１の作動を制御する。また、第１モーター制御部３０は、アーム２２が第２回動軸Ｊ２周りに回動した際に、ロール軸周りのアーム２２の回動方向を示す情報である補正符号、および角速度センサー２０１の検出した角速度ωＡ３に基づいて、第１モーター２６１に対してフィードバック制御を行う。ここで、第１モーター２６１は、第１モーター制御部３０の作動制御により、減速機２６３を介して第１アーム２３を回動させることができる。
【００８８】
具体的には、第１速度制御部３０２は、ロール軸周りのアーム２２の回動方向を示す情報である補正符号、および角速度センサー２０１の検出したアーム２２のロール軸周りの角速度ωＡ３の方向と大きさに基づいて、その角速度ωＡ３を相殺する方向にアーム２２が移動するように第１モーター２６１の作動を制御する。すなわち、制御装置３は、速度制御として第１モーター２６１の作動を制御し、角速度ωＡ３の発生する方向にアーム２２を移動させることによって角速度ωＡ３を相殺し、角速度ωＡ３を低減する。
【００８９】
その後、第１位置制御部３０１は、角速度ωＡ３を相殺し、角速度ωＡ３を低減するために第１速度制御部３０２によって移動した分の距離を、目標位置に戻す位置制御を行う。これにより、第２アーム２４の先端部、換言すればスプラインシャフト２５３を目標位置に移動させる。
【００９０】
これらにより、第１速度制御部３０２が、ロール軸周りのアーム２２の回動方向を示す情報である補正符号、および角速度センサー２０１からの出力に基づいて第１モーター２６１の速度を制御することにより、角速度ωＡ３による第２アーム２４のロール軸周りの振動を抑制し、第１位置制御部３０１が振動によってずれた分を位置制御で目標位置に移動させる。これにより、第２アーム２４の先端部をより短時間に、且つより正確に目標位置に到達させることができる。
【００９１】
第１位置制御部３０１は、例えば予め記憶部３９に記憶されている位置指令に基づいて第１アーム２３を第１回動軸Ｊ１周りに回動させる第１モーター２６１への速度指令を生成する部分である。
【００９２】
第１速度制御部３０２は、第１位置制御部３０１で生成された速度指令に基づいて第１モーター２６１を駆動する電流指令を生成する部分である。
【００９３】
第２モーター制御部３１は、位置制御部としての第２位置制御部３１１および速度制御部としての第２速度制御部３１２を含み、第２アーム２４を第１回動軸Ｊ１周りに回動させる第２モーター２７１の作動を制御する。ここで、第２モーター２７１は、第２モーター制御部３１の作動制御により、減速機２７３を介して第２アーム２４を回動させることができる。
【００９４】
第２位置制御部３１１は、例えば予め記憶部３９に記憶されている位置指令に基づいて第２アーム２４を第２回動軸Ｊ２周りに回動させる第２モーター２７１への速度指令を生成する部分である。
【００９５】
第２速度制御部３１２は、第２位置制御部３１１で生成された速度指令に基づいて第２モーター２７１を駆動する電流指令を生成する部分である。
【００９６】
微分回路４０１は、第２エンコーダー２７２からの出力によって得られた第１アーム２３の第１回動軸Ｊ１周りの回動角度を微分する部分である。この微分されることにより生成された指令である角速度指令は、第１速度制御部３０２に入力されて、第１モーター２６１を駆動する電流指令に重畳される。
【００９７】
感度補正量処理部４０２は、角速度センサー２０１の検出した角速度ωＡ３に対して、定義してあった感度補正量をかけ、フィードバック制御に使用可能な制御量とする処理を行う。この処理として、本実施形態では、角速度ωＡ３に係数ｋ１を乗じる。なお、係数ｋ１は、０を超える任意の数値である。例えば、０＜ｋ１＜１の場合、角速度ωＡ３は、感度補正量処理部４０２で減少される。これに対し、感度補正量処理部４０２での補正を省略した場合には、角速度ωＡ３がそのままの大きさで、すなわち、減少されずにフィードバック量算出部４０３に入力されてしまい、その結果、第１アーム２３の第１回動軸Ｊ１周りの円滑な回動が困難となるおそれがある。
【００９８】
フィードバック量算出部４０３は、感度補正量処理部４０２で処理した角速度ωＡ３に基づく制御量から角速度フィードバック値を算出し、第１速度制御部３０２に送る。すなわち、角速度センサー２０１の検出した角速度ωＡ３に基づくフィードバックは、第１位置制御部３０１には行わず、第１速度制御部３０２に対して行う。
【００９９】
なお、ロボット２には、第１アーム２３の第１回動軸Ｊ１周りの回動や第２アーム２４の第２回動軸Ｊ２周りの回動による外乱振動が入ってきてもよい。
【０１００】
このようなロボット２を制御する制御方法では、角速度センサー２０１の検出した角速度ωＡ３に基づくフィードバック制御によって、第１アーム２３を回動する第１モーター２６１が、位置指令および速度指令に合った駆動状態となる。そして、この駆動状態は、第２アーム２４の先端部に設けられているスプラインシャフト２５３の第３角速度検出軸Ａ３周りの移動が相殺され、振動を抑制することができる状態となっている。これにより、スプラインシャフト２５３の位置が、短時間で定まることとなる。
【０１０１】
以上、説明した第１実施形態に係るロボットシステム１によれば、第１モーター制御部３０は、ロール軸周りのアーム２２の回動方向を示す情報である補正符号、および慣性センサー２０の一例である角速度センサー２０１の検出したアーム２２のロール軸周りの角速度ωＡ３に基づいて第１モーター２６１に対しフィードバック制御を行う。このフィードバック制御は、第２アーム２４の先端部に設けられているスプラインシャフト２５３に生じるアーム２２のロール軸周りの振動を抑制するように第１モーター２６１の作動を制御することから、第２アーム２４の先端部に設けられているスプラインシャフト２５３の振動を抑制し、スプラインシャフト２５３の位置を短時間で定めることができる。
【０１０２】
なお、上述では、角速度センサー２０１を第２アーム２４の先端部側に設ける構成例を示して説明したが、角速度センサー２０１の設置位置はこれに限らない、角速度センサー２０１は、例えば、作業ヘッド２５、もしくはスプラインシャフト２５３に設けてもよいし、第１アーム２３に設けてもよい。なお、角速度センサー２０１を第１アーム２３に設ける場合、角速度センサー２０１は、その検出感度を向上させるため、第１アーム２３の回動軸である第１回動軸Ｊ１からできるだけ離れた位置に設けることが望ましい。
【０１０３】
また、上述では、アーム２２の停止時の動作を例示して説明したが、アーム２２の減速時の動作においても、同様な制御方法を用いることができる。
【０１０４】
２．第２実施形態
２．１．第２実施形態に係るロボットシステムの全体構成
次に、第２実施形態に係るロボットシステムの構成について、図１０、図１１、図１２、および図１３を参照して説明する。図１０は、第２実施形態に係るロボットシステムの加速度センサーの配置例を説明する概略図である。図１１は、第２実施形態に係るロボットシステムの制御系を示すブロック図である。図１２は、第２実施形態に係るロボットシステムの回路系の実施例１を示すブロック図である。図１３は、第２実施形態に係るロボットシステムの回路系の実施例２を示すブロック図である。
【０１０５】
図１１に示すように、第２実施形態に係るロボットシステム１００ａ，１００ｂは、前述の第１実施形態に係るロボットシステム１に対し、ロボット２００ａ，２００ｂに設けられている慣性センサー２０として加速度センサー２０２ａ，２０２ｂを用いているところが異なっている。また、これに伴って、第２実施形態に係るロボットシステム１００ａ，１００ｂでは、制御装置３００ａ，３００ｂの構成が異なっている。ロボットシステム１００ａ，１００ｂの他の構成については、前述の第１実施形態に係るロボットシステム１と同様である。したがって、以下では、ロボットシステム１と同様な構成の詳細な説明を省略することがある。また、ロボットシステム１と同様な構成部位は、同名称および同符号を付して説明する。
【０１０６】
図１１に示すように、第２実施形態に係るロボットシステム１００ａ，１００ｂは、ロボット２００ａ，２００ｂに慣性センサー２０として加速度センサー２０２ａ，２０２ｂを用いている。なお、加速度センサー２０２ａ，２０２ｂは、アーム２２のロール方向である捻れ方向の加速度を検出するため、第１アーム２３の第１回動軸Ｊ１および第２アーム２４の第２回動軸Ｊ２に対して、離れた位置に取り付けられていることが望ましい。
【０１０７】
また、加速度センサー２０２ａ，２０２ｂは、その取り付け位置によって、検出する加速度の方向が異なる。図１０には、図１のＱ１方向から見た場合の、第２アーム２４への加速度センサー２０２ａ，２０２ｂの取り付け位置が示されている。図１０では、アーム２２のロール軸である第２アーム２４の第３角速度検出軸Ａ３の上側に加速度センサー２０２ａが取り付けられている実施例１と、第２アーム２４の第３角速度検出軸Ａ３の水平面上に加速度センサー２０２ｂが取り付けられている実施例２と、を例示している。なお、第２アーム２４には、第２回動軸Ｊ２と異なる位置に設けられ、作業ヘッド２５にあって、第１回動軸Ｊ１および第２回動軸Ｊ２のいずれかと平行な直動軸の軸方向に移動し、下方の一端側にエンドエフェクター４が設けられるシャフトであるスプラインシャフト２５３が設けられている。換言すれば、スプラインシャフト２５３は、鉛直方向であるＺ方向に沿って設けられ、その下端に対象物Ｗが把持されている。
【０１０８】
実施例１に係る加速度センサー２０２ａ、および実施例２に係る加速度センサー２０２ｂは、いずれもアーム２２のロール軸である第２アーム２４の第３角速度検出軸Ａ３を中心とした円ｃ１，ｃ２の、それぞれの接線方向ｆ１，ｆ２の加速度を検出する。そして、後段にて説明する制御装置３００ａ，３００ｂは、加速度センサー２０２ａ，２０２ｂの検出した加速度、および上述の第１実施形態で説明したロール軸周りのアーム２２の回動方向を示す情報である補正符号に基づいてフィードバック制御を行い、第１モーター２６１の作動を制御する。この第１モーター２６１の作動の制御により、作業ヘッド２５のスプラインシャフト２５３（図２参照）に生じる振動、例えばスプラインシャフト２５３に生じるエンドエフェクター４側の制御点Ｐ１（図２参照）の振動を抑制することができる。
【０１０９】
ロボット２００ａ，２００ｂは、スカラロボットとも呼ばれる水平多関節ロボットであり、その構成は、第１実施形態のロボット２と同様であるので詳細な説明を省略する。なお、ロボット２００ａ，２００ｂは、基台２１に連結され、基台２１に対して第１回動軸Ｊ１周りに回動可能な第１アーム２３と、第１アーム２３の先端部に設けられ、第１アーム２３に対して第１回動軸Ｊ１と平行な第２回動軸Ｊ２周りに回動可能に連結されている第２アーム２４と、を有する。なお、第１アーム２３は、第１実施形態と同様に、例えば樹脂などの柔軟性を有する部材を、その外表面を構成する部材に含んでいる。
【０１１０】
以下、実施例１に係る加速度センサー２０２ａの構成例、および実施例２に係る加速度センサー２０２ｂの構成例を順次説明する。
【０１１１】
２．２．実施例１に係る、アームの振動を抑制する制御方法および制御装置
第２実施形態の実施例１に係るロボットシステム１００ａを構成する加速度センサー２０２ａは、図１０に示すように、アーム２２のロール軸である第２アーム２４の第３角速度検出軸Ａ３の上側に取り付けられ、第３角速度検出軸Ａ３を中心とした円ｃ１の接線方向ｆ１、すなわち水平方向の加速度を検出する。
【０１１２】
水平方向の加速度を検出する加速度センサー２０２ａは、第３角速度検出軸Ａ３の上側に取り付けられていることから、ロール方向の捻れ振動成分以外の、ロボットアーム駆動によるアーム角速度も検出してしまう。この課題に対して、ロボットシステム１００ａでは、第１モーター２６１の角速度から算出されるアーム先端角速度と、加速度センサー２０２ａの設置場所のアーム先端角速度との差分を取ることによって、加速度センサー２０２ａにおける捻れ振動成分のみの検出値としている。
【０１１３】
図１２に示すように、実施例１に係る構成のロボットシステム１００ａは、ロボット２００ａと、制御装置３００ａと、を有している。ロボット２００ａは、図１１に示したように第１実施形態と同様構成のアーム駆動部２６および作業ヘッド駆動部２８と、慣性センサー２０を有している。本実施例１での慣性センサー２０は、加速度センサー２０２ａである。
【０１１４】
制御装置３００ａは、第１モーター制御部３０と、第２モーター制御部３１と、入力部３８と、記憶部３９と、演算処理部４０（図１１参照）とを有している。演算処理部４０は、微分回路４０１と、感度補正量処理部４０２と、フィードバック量算出部４０３と、積分回路４０４と、センサー角速度算出部４０５と、微分回路４０６と、モーター角速度算出部４０７と、を有している。
【０１１５】
第１モーター制御部３０は、第１位置制御部３０１および第１速度制御部３０２を含み、第１アーム２３を第１回動軸Ｊ１周りに回動させる第１モーター２６１の作動を制御する。また、第１モーター制御部３０は、アーム２２が第２回動軸Ｊ２周りに回動した際に、加速度センサー２０２ａの検出した加速度から算出された角速度、およびロール軸周りのアーム２２の回動方向を示す情報である補正符号に基づいて、第１モーター２６１に対してフィードバック制御を行う。ここで、第１モーター２６１は、第１モーター制御部３０の作動制御により、減速機２６３を介して第１アーム２３を回動させることができる。
【０１１６】
具体的には、第１速度制御部３０２は、ロール軸周りのアーム２２の回動方向を示す情報である補正符号を用い、加速度センサー２０２ａの検出した加速度から角速度を算出し、その角速度を相殺する方向にアーム２２が移動するように第１モーター２６１の作動を制御する。すなわち、制御装置３は、速度制御として第１モーター２６１の作動を制御し、角速度の発生する方向にアーム２２を移動させることによって角速度を相殺し、角速度を低減する。
【０１１７】
その後、第１位置制御部３０１は、角速度を相殺し、低減するために第１速度制御部３０２によって移動した分の距離を、目標位置に戻す位置制御を行う。これにより、第２アーム２４の先端部、換言すればスプラインシャフト２５３を目標位置に移動させる。
【０１１８】
これらにより、第１速度制御部３０２が加速度センサー２０２ａからの出力、およびロール軸周りのアーム２２の回動方向を示す情報である補正符号に基づいて第１モーター２６１の速度を制御することにより、角速度による第２アーム２４のロール軸周りの振動を抑制し、第１位置制御部３０１が振動によってずれた分を位置制御で目標位置に移動させる。これにより、第２アーム２４の先端部をより短時間に、且つより正確に目標位置に到達させることができる。
【０１１９】
第１位置制御部３０１は、例えば予め記憶部３９に記憶されている位置指令に基づいて第１アーム２３を第１回動軸Ｊ１周りに回動させる第１モーター２６１への速度指令を生成する部分である。
【０１２０】
第１速度制御部３０２は、第１位置制御部３０１で生成された速度指令に基づいて第１モーター２６１を駆動する電流指令を生成する部分である。
【０１２１】
第２モーター制御部３１は、第２位置制御部３１１および第２速度制御部３１２を含み、第２アーム２４を第１回動軸Ｊ１周りに回動させる第２モーター２７１の作動を制御する。ここで、第２モーター２７１は、第２モーター制御部３１の作動制御により、減速機２７３を介して第２アーム２４を回動させることができる。
【０１２２】
第２位置制御部３１１は、例えば予め記憶部３９に記憶されている位置指令に基づいて第２アーム２４を第２回動軸Ｊ２周りに回動させる第２モーター２７１への速度指令を生成する部分である。
【０１２３】
第２速度制御部３１２は、第２位置制御部３１１で生成された速度指令に基づいて第２モーター２７１を駆動する電流指令を生成する部分である。
【０１２４】
微分回路４０１は、第２エンコーダー２７２からの出力によって得られた第１アーム２３の第１回動軸Ｊ１周りの回動角度を微分する部分である。この微分されることにより生成された指令である角速度指令は、第１速度制御部３０２に入力されて、第１モーター２６１を駆動する電流指令に重畳される。
【０１２５】
積分回路４０４は、加速度センサー２０２ａによって得られた第２アーム２４の先端部、すなわちアーム２２の先端部の先端加速度を積分し、速度情報に変換する部分である。この積分により生成されたアーム２２先端の水平方向における速度情報である先端速度は、センサー角速度算出部４０５に入力されて、アーム２２先端の水平方向のセンサー角速度に変換される。
【０１２６】
センサー角速度算出部４０５は、積分回路４０４から出力されたアーム２２の先端速度を、１／Ｌを用いた処理により、アーム２２の先端部における水平方向のセンサー角速度を算出する。ここで、Ｌは、図１に示すように、第１モーター２６１の第１回動軸Ｊ１から加速度センサー２０２ａまでの距離である。
【０１２７】
微分回路４０６は、第２エンコーダー２７２からの出力によって得られた第１アーム２３の第１回動軸Ｊ１周りの回動角度を微分する部分である。
【０１２８】
モーター角速度算出部４０７は、微分回路４０６から出力された第１アーム２３における第１回動軸Ｊ１周りの回動角度の微分値に、減速機２６３の減速比率を乗算し、アーム２２の先端部におけるモーター角速度を算出する。
【０１２９】
そして演算処理部４０は、センサー角速度算出部４０５の算出したセンサー角速度と、モーター角速度算出部４０７の算出したモーター角速度との差分を取り、アーム２２のロール軸周りの振動成分のみの角速度を生成する。
【０１３０】
感度補正量処理部４０２は、加速度センサー２０２ａの検出した加速度から、積分回路４０４と、センサー角速度算出部４０５と、微分回路４０６と、モーター角速度算出部４０７とによって算出された、アーム２２のロール軸周りの振動成分のみの角速度に対して、定義してあった感度補正量をかけ、フィードバック制御に使用可能な制御量とする処理を行う。この処理として、本実施形態では、角速度に係数ｋ１を乗じる。なお、係数ｋ１は、０を超える任意の数値である。例えば、０＜ｋ１＜１の場合、角速度は、感度補正量処理部４０２で減少される。これに対し、感度補正量処理部４０２での補正を省略した場合には、角速度がそのままの大きさで、すなわち、減少されずにフィードバック量算出部４０３に入力されてしまい、その結果、第１アーム２３の第１回動軸Ｊ１周りの円滑な回動が困難となるおそれがある。
【０１３１】
フィードバック量算出部４０３は、感度補正量処理部４０２で処理した水平方向の振動成分の角速度に基づく制御量から角速度フィードバック値を算出し、第１速度制御部３０２に送る。すなわち、加速度センサー２０２ａの検出した加速度から算出された水平方向の振動成分の角速度に基づくフィードバックは、第１位置制御部３０１には行わず、第１速度制御部３０２に対して行う。
【０１３２】
このようなロボット２００ａおよび制御装置３００ａを用いたロボットシステム１００ａの制御方法では、加速度センサー２０２ａの検出した加速度から算出された水平方向の振動成分の角速度、およびロール軸周りのアーム２２の回動方向を示す情報である補正符号に基づくフィードバック制御によって、第１アーム２３を回動する第１モーター２６１が、位置指令および速度指令に合った駆動状態となる。そして、この駆動状態は、第２アーム２４の先端部に設けられているスプラインシャフト２５３の第３角速度検出軸Ａ３周りの移動が相殺され、振動を抑制することができる状態となっている。これにより、スプラインシャフト２５３の位置が、短時間で定まることとなる。
【０１３３】
以上、説明した第２実施形態の実施例１に係るロボットシステム１００ａによれば、第１モーター制御部３０は、慣性センサー２０の一例である加速度センサー２０２ａの検出したアーム２２の水平方向の加速度から算出された水平方向の振動成分の角速度、およびロール軸周りのアーム２２の回動方向を示す情報である補正符号に基づいて第１モーター２６１に対しフィードバック制御を行う。このフィードバック制御は、第２アーム２４の先端部に設けられているスプラインシャフト２５３に生じるアーム２２のロール軸周りの振動を抑制するように第１モーター２６１の作動を制御することから、第２アーム２４の先端部に設けられているスプラインシャフト２５３の振動を抑制し、スプラインシャフト２５３の位置を定めることができる。
【０１３４】
２．３．実施例２に係る、アームの振動を抑制する制御方法および制御装置
第２実施形態の実施例２に係るロボットシステム１００ｂを構成する加速度センサー２０２ｂは、図１０に示すように、アーム２２のロール軸である第２アーム２４の第３角速度検出軸Ａ３の図中Ｙ軸に沿った水平面上に取り付けられ、第３角速度検出軸Ａ３を中心とした円ｃ２の接線方向ｆ２、すなわち垂直方向の加速度を検出する。
【０１３５】
垂直方向の加速度を検出する加速度センサー２０２ｂは、第３角速度検出軸Ａ３の水平面上に取り付けられていることから、重力Ｗ１の影響を考慮する必要があり、常に重力との差分を取る必要がある。この課題に対して、ロボットシステム１００ｂでは、加速度センサー２０２ｂの検出した加速度と、アーム２２と把持されている対象物Ｗとに係る重力Ｗ１との差分を取ることによって、加速度センサー２０２ｂにおける捻れ振動成分のみの検出値としている。
【０１３６】
演算処理部４０は、加速度センサー２０２ｂの検出した加速度と、重力Ｗ１との差分を取り、この差分値を加速度センサー２０２ｂにおける捻れ振動成分のみの検出値として積分回路４０４に入力する。
【０１３７】
図１３に示すように、実施例２に係る構成のロボットシステム１００ｂは、ロボット２００ｂと、制御装置３００ｂ、を有している。ロボット２００ｂは、第１実施形態と同様構成のアーム駆動部２６および作業ヘッド駆動部２８と、慣性センサー２０（図１１参照）としての加速度センサー２０２ｂと、を有している。
【０１３８】
制御装置３００ｂは、第１モーター制御部３０と、第２モーター制御部３１と、入力部３８と、記憶部３９と、演算処理部４０（図１１参照）とを有している。演算処理部４０は、微分回路４０１と、感度補正量処理部４０２と、フィードバック量算出部４０３と、積分回路４０４と、センサー角速度算出部４０５と、を有している。
【０１３９】
第１モーター制御部３０は、位置制御部としての第１位置制御部３０１および速度制御部としての第１速度制御部３０２を含み、第１アーム２３を第１回動軸Ｊ１周りに回動させる第１モーター２６１の作動を制御する。また、第１モーター制御部３０は、アーム２２が第２回動軸Ｊ２周りに回動した際に、加速度センサー２０２ｂの検出した加速度から算出された角速度、およびロール軸周りのアーム２２の回動方向を示す情報である補正符号に基づいて、第１モーター２６１に対してフィードバック制御を行う。ここで、第１モーター２６１は、第１モーター制御部３０の作動制御により、減速機２６３を介して第１アーム２３を回動させることができる。
【０１４０】
具体的には、第１速度制御部３０２は、ロール軸周りのアーム２２の回動方向を示す情報である補正符号を用い、加速度センサー２０２ｂの検出した加速度から角速度を算出し、その角速度を相殺する方向にアーム２２が移動するように第１モーター２６１の作動を制御する。すなわち、制御装置３００ｂは、速度制御として第１モーター２６１の作動を制御し、角速度の発生する方向にアーム２２を移動させることによって角速度を相殺し、角速度を低減する。
【０１４１】
その後、第１位置制御部３０１は、角速度を相殺し、低減するために第１速度制御部３０２によって移動した分の距離を、目標位置に戻す位置制御を行う。これにより、第２アーム２４の先端部、換言すればスプラインシャフト２５３を目標位置に移動させる。
【０１４２】
これらにより、第１速度制御部３０２が加速度センサー２０２ｂからの出力に基づいて第１モーター２６１の速度を制御することにより、角速度による第２アーム２４のロール軸周りの振動を抑制し、第１位置制御部３０１が振動によってずれた分を位置制御で目標位置に移動させる。これにより、第２アーム２４の先端部をより短時間に、且つより正確に目標位置に到達させることができる。
【０１４３】
第１位置制御部３０１は、例えば予め記憶部３９に記憶されている位置指令に基づいて第１アーム２３を第１回動軸Ｊ１周りに回動させる第１モーター２６１への速度指令を生成する部分である。
【０１４４】
第１速度制御部３０２は、第１位置制御部３０１で生成された速度指令に基づいて第１モーター２６１を駆動する電流指令を生成する部分である。
【０１４５】
第２モーター制御部３１は、第２位置制御部３１１および第２速度制御部３１２を含み、第２アーム２４を第１回動軸Ｊ１周りに回動させる第２モーター２７１の作動を制御する。ここで、第２モーター２７１は、第２モーター制御部３１の作動制御により、減速機２７３を介して第２アーム２４を回動させることができる。
【０１４６】
第２位置制御部３１１は、例えば予め記憶部３９に記憶されている位置指令に基づいて第２アーム２４を第２回動軸Ｊ２周りに回動させる第２モーター２７１への速度指令を生成する部分である。
【０１４７】
第２速度制御部３１２は、第２位置制御部３１１で生成された速度指令に基づいて第２モーター２７１を駆動する電流指令を生成する部分である。
【０１４８】
微分回路４０１は、第２エンコーダー２７２からの出力によって得られた第１アーム２３の第１回動軸Ｊ１周りの回動角度を微分する部分である。この微分されることにより生成された指令である角速度指令は、第１速度制御部３０２に入力されて、第１モーター２６１を駆動する電流指令に重畳される。
【０１４９】
積分回路４０４は、加速度センサー２０２ｂによって得られた第２アーム２４の先端部、すなわちアーム２２の先端部の先端加速度と重力Ｗ１との差分をとった検出値を積分し、速度情報に変換する部分である。この積分により生成されたアーム２２の先端の垂直方向における速度情報である先端速度は、センサー角速度算出部４０５に入力されて、アーム２２先端の水平方向のセンサー角速度に変換される。
【０１５０】
センサー角速度算出部４０５は、積分回路４０４から出力されたアーム２２の先端速度を、アーム２２の先端部における垂直方向のアーム２２先端のセンサー角速度を算出する。
【０１５１】
感度補正量処理部４０２は、加速度センサー２０２ｂの検出した加速度から、積分回路４０４と、センサー角速度算出部４０５とによって算出された、アーム２２のロール軸周りの振動成分のみの角速度に対して、定義してあった感度補正量をかけ、フィードバック制御に使用可能な制御量とする処理を行う。この処理として、本実施形態では、角速度に係数ｋ１を乗じる。なお、係数ｋ１は、０を超える任意の数値である。例えば、０＜ｋ１＜１の場合、角速度は、感度補正量処理部４０２で減少される。これに対し、感度補正量処理部４０２での補正を省略した場合には、角速度がそのままの大きさで、すなわち、減少されずにフィードバック量算出部４０３に入力されてしまい、その結果、第１アーム２３の第１回動軸Ｊ１周りの円滑な回動が困難となるおそれがある。
【０１５２】
フィードバック量算出部４０３は、感度補正量処理部４０２で処理した垂直方向の振動成分の角速度に基づく制御量から角速度フィードバック値を算出し、第１速度制御部３０２に送る。すなわち、加速度センサー２０２ｂの検出した加速度から算出された垂直方向の振動成分の角速度に基づくフィードバックは、第１位置制御部３０１には行わず、第１速度制御部３０２に対して行う。
【０１５３】
このようなロボット２００ｂおよび制御装置３００ｂを用いたロボットシステム１００ｂの制御方法では、加速度センサー２０２ｂの検出した加速度から算出された図１０中のＺ軸に沿った垂直方向の振動成分の角速度、およびロール軸周りのアーム２２の回動方向を示す情報である補正符号に基づくフィードバック制御によって、第１アーム２３を回動する第１モーター２６１が、位置指令および速度指令に合った駆動状態となる。そして、この駆動状態は、第２アーム２４の先端部に設けられているスプラインシャフト２５３の第３角速度検出軸Ａ３周りの移動が相殺され、振動を抑制することができる状態となっている。これにより、スプラインシャフト２５３の位置が、短時間で定まることとなる。
【０１５４】
以上、説明した第２実施形態の実施例２に係るロボットシステム１００ｂによれば、第１モーター制御部３０は、慣性センサー２０の一例である加速度センサー２０２ｂの検出したアーム２２の垂直方向の加速度から算出された垂直方向の振動成分の角速度、およびロール軸周りのアーム２２の回動方向を示す情報である補正符号に基づいて第１モーター２６１に対しフィードバック制御を行う。このフィードバック制御は、第２アーム２４の先端部に設けられているスプラインシャフト２５３に生じるアーム２２のロール軸周りの振動を抑制するように第１モーター２６１の作動を制御することから、第２アーム２４の先端部に設けられているスプラインシャフト２５３の振動を抑制し、スプラインシャフト２５３の位置を定めることができる。
【０１５５】
なお、上述した第１実施形態および第２実施形態では、ロボットシステム１，１００ａ，１００ｂの構成として、制御装置３，３００ａ，３００ｂがロボット２，２００ａ，２００ｂの外部に設けられている構成で説明したが、これに限らない。制御装置３，３００ａ，３００ｂは、ロボット２，２００ａ，２００ｂの外部に設けられていてもよいし、内部に設けられていてもよい。
【０１５６】
また、上述した第１実施形態および第２実施形態では、慣性センサー２０が第２アーム２４に設けられている構成で説明したが、これに限らない。慣性センサー２０は、作業ヘッド２５を構成するスプラインシャフト２５３に設けられていてもよい。
【０１５７】
また、ロボットシステム１によるフィードバック制御は、ロボット２，２００ａ，２００ｂのような、外表面に柔軟性を有する材料を含む構成の第１アーム２３のように、捻れ変位の生じ易し構成のアームを有するロボットに対して好適である。
【０１５８】
以下に、上述した実施形態から導き出される内容を、各態様として記載する。
【０１５９】
［態様１］本態様に係るロボットシステムは、回動軸周りに回動するアームと、前記アームを前記回動軸周りに回動させるモーターと、前記アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、前記アームまたはシャフトに設けられた慣性センサーと、を有するロボットと、前記モーターを制御する制御部を有する制御装置と、を備え、前記慣性センサーは、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を検出し、前記制御部は、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、前記慣性センサーからの出力とに基づいて、前記モーターを制御する。
【０１６０】
本態様のロボットシステムによれば、制御装置の制御部は、アームの停止時または減速時において、アームの停止時または減速時におけるアームのロール軸周りの回動方向を考慮し、慣性センサーから出力される、回動軸および直動軸に対して直交するロール軸周りの角速度、またはロール軸を中心とした円の接線方向の加速度に基づいてモーターを制御することから、アームのロール軸周りの振動を抑制することができる。
【０１６１】
［態様２］本態様に係るロボットシステムは、第１回動軸周りに回動する第１アームと、前記第１アームに接続され前記第１回動軸と平行な第２回動軸周りに回動する第２アームと、を含むアームと、前記第１アームを前記第１回動軸周りに回動させる第１モーターと、前記第２アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、前記第２アームまたは前記シャフトに設けられた慣性センサーと、を有するロボットと、前記第１モーターを制御する制御部を有する制御装置と、を備え、前記慣性センサーは、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を検出し、前記制御部は、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、前記慣性センサーからの出力とに基づいて、前記第１モーターを制御する。
【０１６２】
本態様のロボットシステムによれば、第１モーターを制御する制御装置の制御部は、第１回動軸周りに回動する第１アームと第１アームに接続され第１回動軸と平行な第２回動軸周りに回動する第２アームとを含むアームの停止時または減速時において、アームの停止時または減速時におけるアームのロール軸周りの回動方向を考慮し、慣性センサーから出力される、回動軸および直動軸に対して直交するロール軸周りの角速度、またはロール軸を中心とした円の接線方向の加速度に基づいて第１モーターを制御することから、アームのロール軸周りの振動を抑制することができる。
【０１６３】
［態様３］上記態様に記載のロボットシステムにおいて、前記情報は、前記慣性センサーからの出力に基づいて求められることとしてもよい。
【０１６４】
本態様によれば、アームの停止時または減速時におけるアームの回動方向を示す情報が、慣性センサーからの出力に基づいて求められることから、実際のアームの回動状態に即した的確なモーターの制御を行うことができる。
【０１６５】
［態様４］上記態様に記載のロボットシステムにおいて、前記制御部は、記憶部を有し、前記情報は、前記記憶部に記憶されていることとしてもよい。
【０１６６】
本態様によれば、制御部は、記憶部に記憶されているアームの停止時または減速時におけるアームの回動方向を示す情報と、ロール軸周りの慣性センサーからの出力とに基づいてモーターを制御することから、アームのロール軸周りの振動を抑制することができる。
【０１６７】
［態様５］上記態様に記載のロボットシステムにおいて、前記情報は、前記シャフトが第１位置に位置する場合の前記回動方向を示す第１情報と、前記シャフトが前記第１情報よりも高い第２位置に位置する場合の前記回動方向を示す第２情報とを有することとしてもよい。
【０１６８】
本態様によれば、シャフトが第１位置に位置する場合の回動方向を示す第１情報、およびシャフトが第１情報よりも高い第２位置に位置する場合の回動方向を示す第２情報の二つの情報と、ロール軸周りの慣性センサーからの出力とに基づいてモーターを制御することから、アームのロール軸周りの振動をより効果的に抑制することができる。
【０１６９】
［態様６］上記態様に記載のロボットシステムにおいて、前記制御部は、前記シャフトが前記第１位置と前記第２位置との間に位置する場合、前記情報を用いずに前記モーターを制御することとしてもよい。
【０１７０】
本態様によれば、制御部は、第１位置と第２位置との間におけるシャフトの回動が生じない位置でのモーターの制御を、アームの停止時または減速時におけるアームの回動方向を示す情報を用いずに行うことから、安定したモーターの制御を行うことができる。
【０１７１】
［態様７］上記態様に記載のロボットシステムにおいて、前記シャフトには負荷が設けられ、前記情報は、前記負荷の重さに基づいていることとしてもよい。
【０１７２】
本態様によれば、制御部は、アームの停止時または減速時におけるアームの回動方向を示す情報を、シャフトの負荷の重さに基づいて算出し、モーターを制御することから、アームのロール軸周りの振動をより効果的に抑制することができる。
【０１７３】
［態様８］上記態様に記載のロボットシステムにおいて、前記アームの外表面を構成する部材は、樹脂を含むこととしてもよい。
【０１７４】
本態様によれば、アームの外表面を構成する樹脂の有する柔軟性による緩衝作用により、アームとの接触衝撃を小さくすることができる。このように、緩衝作用を有する樹脂でアームの外表面を構成しても、慣性センサーの検出結果に基づいてモーターが制御されることから、アームのロール軸周りの振動を抑制することができる。
【０１７５】
［態様９］本態様に係る制御装置は、モーターによって回動軸周りに回動するアームと、前記アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を検出する慣性センサーと、を有するロボットの制御装置であって、前記モーターを制御する制御部を有し、前記制御部は、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、前記慣性センサーからの出力とに基づいて、前記モーターを制御する。
【０１７６】
本態様の制御装置によれば、制御部は、ロボットの有するアームの停止時または減速時における、ロール軸の軸方向から見たときのアームの慣性によって移動する回動方向を考慮し、ロール軸周りの慣性センサーからの出力に基づいてモーターを制御することから、アームのロール軸周りの振動を抑制することができる。
【０１７７】
［態様１０］上記態様に記載の制御装置において、前記情報は、前記慣性センサーからの出力に基づいて求められることとしてもよい。
【０１７８】
本態様によれば、制御装置は、アームの停止時または減速時におけるアームの回動方向を示す情報を、慣性センサーからの出力に基づいて求めることから、実際のアームの回動状態に即した的確なモーターの制御を行うことができる。
【０１７９】
［態様１１］上記態様に記載の制御装置において、前記制御部は、記憶部を有し、前記情報は、前記記憶部に記憶されていることとしてもよい。
【０１８０】
本態様によれば、制御装置は、記憶部に記憶されているアームの停止時または減速時におけるアームの回動方向を示す情報と、ロール軸周りの慣性センサーからの出力とに基づいてモーターを制御することから、アームのロール軸周りの振動を抑制することができる。
【０１８１】
［態様１２］上記態様に記載の制御装置において、前記情報は、前記シャフトが第１位置に位置する場合の前記回動方向を示す第１情報と、前記シャフトが前記第１位置よりも高い第２位置に位置する場合の前記回動方向を示す第２情報と、を有することとしてもよい。
【０１８２】
本態様によれば、制御装置は、シャフトが第１位置に位置する場合の回動方向を示す第１情報、およびシャフトが第１位置よりも高い第２位置に位置する場合の回動方向を示す第２情報の二つの情報と、ロール軸周りの慣性センサーからの出力とに基づいてモーターを制御することから、アームのロール軸周りの振動をより効果的に抑制することができる。
【０１８３】
［態様１３］上記態様に記載の制御装置において、前記制御部は、前記シャフトが前記第１位置と前記第２位置との間に位置する場合、前記情報を用いずに前記モーターを制御することとしてもよい。
【０１８４】
本態様によれば、制御装置は、第１位置と第２位置との間におけるシャフトの回動が生じない位置でのモーターの制御を、アームの停止時または減速時におけるアームの回動方向を示す情報を用いずに行うことから、効率的な制御を行うことができる。
【０１８５】
［態様１４］上記態様に記載の制御装置において、前記シャフトには負荷が設けられ、前記情報は、前記負荷の重さに基づいていることとしてもよい。
【０１８６】
本態様によれば、制御装置は、アームの停止時または減速時におけるアームの回動方向を示す情報を、シャフトの負荷の重さに基づいて算出し、モーターを制御することから、アームのロール軸周りの振動をより効果的に抑制することができる。
【０１８７】
［態様１５］本態様に係る制御方法は、モーターによって回動軸周りに回動するアームと、前記アームに接続され前記回動軸と平行な直動軸の軸方向に移動するシャフトと、慣性センサーと、を有するロボットの制御方法であって、前記回動軸および前記直動軸に対して直交するロール軸周りの角速度、または、前記ロール軸を中心とした円の接線方向の加速度を、前記慣性センサーによって検出する検出工程と、検出した前記角速度または前記加速度と、前記アームの停止時または減速時における前記アームの前記ロール軸周りの回動方向を示す情報と、に基づいて、前記モーターを制御する制御工程と、を備える。
【０１８８】
本態様の制御方法によれば、回動軸および直動軸に対して直交するロール軸周りの角速度、または、ロール軸を中心とした円の接線方向の加速度を、慣性センサーによって検出する検出工程と、検出した角速度または加速度と、アームの停止時または減速時におけるアームのロール軸周りの回動方向を示す情報と、に基づいて、モーターを制御する制御工程とにより、ロボットの有するアームの停止時または減速時における、ロール軸の軸方向から見たときのアームの慣性によって移動する回動方向を考慮し、ロール軸周りの慣性センサーからの出力に基づいてモーターを制御することから、停止時または減速時におけるアームのロール軸周りの振動を抑制することができる。
【０１８９】
［態様１６］上記態様に記載の制御方法において、前記情報は、前記慣性センサーからの出力に基づいて求められることとしてもよい。
【０１９０】
本態様の制御方法によれば、アームの停止時または減速時におけるアームの回動方向を示す情報を、慣性センサーからの出力に基づいて求めることから、実際のアームの回動状態に即した的確なモーターの制御を行うことができる。
【０１９１】
［態様１７］上記態様に記載の制御方法において、前記情報は、記憶されている情報であることとしてもよい。
【０１９２】
本態様の制御方法によれば、記憶されているアームの停止時または減速時におけるアームの回動方向を示す情報と、ロール軸周りの慣性センサーからの出力とに基づいてモーターを制御することから、アームのロール軸周りの振動を抑制することができる。
【０１９３】
［態様１８］上記態様に記載の制御方法において、前記情報は、前記シャフトが第１位置に位置する場合の前記回動方向を示す第１情報と、前記シャフトが前記第１位置よりも高い第２位置に位置する場合の前記回動方向を示す第２情報と、を有することとしてもよい。
【０１９４】
本態様の制御方法によれば、シャフトが第１位置に位置する場合の回動方向を示す第１情報、およびシャフトが第１位置よりも高い第２位置に位置する場合の回動方向を示す第２情報の二つの情報と、ロール軸周りの慣性センサーからの出力とに基づいてモーターを制御することから、アームのロール軸周りの振動をより効果的に抑制することができる。
【０１９５】
［態様１９］上記態様に記載の制御方法において、前記制御工程は、前記シャフトが前記第１位置と前記第２位置との間に位置する場合、前記情報を用いずに前記モーターを制御する工程を含むこととしてもよい。
【０１９６】
本態様の制御方法によれば、制御工程は、第１位置と第２位置との間におけるシャフトの回動が生じない位置でのモーターの制御を、アームの停止時または減速時におけるアームの回動方向を示す情報を用いずに行う工程を含むことから、効率的な制御を行うことができる。
【０１９７】
［態様２０］上記態様に記載の制御方法において、前記シャフトには負荷が設けられ、前記情報は、前記負荷の重さに基づいていることとしてもよい。
【０１９８】
本態様の制御方法によれば、アームの停止時または減速時におけるアームの回動方向を示す情報を、シャフトの負荷の重さに基づいて算出し、モーターを制御することから、アームのロール軸周りの振動をより効果的に抑制することができる。
【符号の説明】
【０１９９】
１，１００ａ，１００ｂ…ロボットシステム、２，２００ａ，２００ｂ…ロボット、３，３００ａ，３００ｂ…制御装置、４…エンドエフェクター、２０…慣性センサー、２１…基台、２２…アーム、２３…第１アーム、２４…第２アーム、２５…作業ヘッド、２６…アーム駆動部、２８…作業ヘッド駆動部、３０…第１モーター制御部、３１…第２モーター制御部、３８…入力部、３９…記憶部、４０…演算処理部、２０１…角速度センサー、２０２ａ，２０２ｂ…加速度センサー、２５１…スプラインナット、２５２…ボールネジナット、２５３…スプラインシャフト、２５４…ペイロード、２６１…第１モーター、２６２…第１エンコーダー、２７１…第２モーター、２７２…第２エンコーダー、２８１…第３モーター、２８２…第３エンコーダー、２９１…第４モーター、２９２…第４エンコーダー、３０１…位置制御部としての第１位置制御部、３０２…速度制御部としての第１速度制御部、３１１…位置制御部としての第２位置制御部、３１２…速度制御部としての第２速度制御部、４０１…微分回路、４０２…感度補正量処理部、４０３…フィードバック量算出部、Ｊ１…第１回動軸、Ｊ２…第２回動軸、Ｊ３…第３回動軸、Ａ１…第１角速度検出軸、Ａ２…第２角速度検出軸、Ａ３…第３角速度検出軸、ｋ１…係数、Ｐ１…制御点、ＶＰ…仮想平面、Ｗ，Ｗａ，Ｗｂ…対象物、Ｗ１…重力、ωＡ１…第１角速度、ωＡ２…第２角速度、ωＡ３…第３角速度。
【図１】
2020146794.tif 000003
【図２】
2020146794.tif 000004
【図３】
2020146794.tif 000005
【図４】
2020146794.tif 000006
【図５Ａ】
2020146794.tif 000007
【図５Ｂ】
2020146794.tif 000008
【図６】
2020146794.tif 000009
【図７Ａ】
2020146794.tif 000010
【図７Ｂ】
2020146794.tif 000011
【図８】
2020146794.tif 000012
【図９】
2020146794.tif 000013
【図１０】
2020146794.tif 000014
【図１１】
2020146794.tif 000015
【図１２】
2020146794.tif 000016
【図１３】
2020146794.tif 000017