螺子締めロボットのパラメータ自動調整装置およびパラメータ自動調整方法
【課題】熟練度に関わらず少ない動作テスト回数で精度の高いパラメータが自動的に設定されるとともに、初期特性の取得の際における過剰な動作による損傷を回避する螺子締めロボットのパラメータ自動調整装置およびパラメータ自動調整方法を提供する。
【解決手段】第二期初期回転量設定部56は、初期特性の取得に際して第二期における回転量の初期値を、「1回」に設定する。これにより、ワーク32に対する螺子34のねじ込み量が不明なときでも、初期特性調査処理における第二期の回転量は過剰となることがない。したがって、初期特性の取得の際における過剰な動作によるテストピースおよび螺子締めロボット10の損傷を回避することができる。
【解決手段】第二期初期回転量設定部56は、初期特性の取得に際して第二期における回転量の初期値を、「1回」に設定する。これにより、ワーク32に対する螺子34のねじ込み量が不明なときでも、初期特性調査処理における第二期の回転量は過剰となることがない。したがって、初期特性の取得の際における過剰な動作によるテストピースおよび螺子締めロボット10の損傷を回避することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、螺子締めロボットのパラメータ自動調整装置およびパラメータ自動調整方法に関する。
【背景技術】
【0002】
従来、対象となるワークに螺子を締付ける螺子締めロボットとして特許文献1が公知である。このような螺子締めロボットは、ワークに対する螺子の締め付けを、噛み合わせの第一期、締め込みの第二期、トルク調整のために締め上げる第三期、および締付けトルクの安定を図る第四期の順で実行する。この場合、螺子締めロボットの正確な作動を確保するためには、第一期から第四期までの各ステップにおいてモータへの供給電流値、螺子の回転速度および螺子の回転数などのパラメータを精密に調整する必要がある。特に、これらのパラメータには、螺子の締付けトルクを目標締付けトルクに正確に合致させ、かつ締付けトルクのばらつきが小さく、さらにパラメータの調整に必要な時間が短いことが要求される。
【0003】
しかしながら、従来の螺子締めロボットにおけるパラメータの設定は、実際に螺子締めロボットでテストピースを組み付けることによって行われている。すなわち、パラメータの設定は、螺子締めロボットを用いたテストピースの組み付けによって得られたデータからユーザの自己の経験および勘に基づいて行われている。この場合、テストピースの消費量は、ユーザの熟練度に左右される。例えば熟練度の高いユーザであればテストピースを用いた数十回程度の動作テストでパラメータの設定を行えるのに対し、熟練度の低いユーザは百回以上の動作テストを行っても目標とするパラメータの近似値が得られない場合もある。一方、すべての現場に熟練度の高いユーザが所在するとは限らないことから、熟練度の高いユーザのみでパラメータの設定を行うのは現実的でない。また、熟練度の低いユーザは、上記の通りテストピースの消費量が増大するにも関わらず、十分な数のテストピースを確保することも現実的でない。
【0004】
ところで、螺子締めロボットに限らず各種のロボットは、各ステップにおけるパラメータの設定に先立って初期特性の取得も必要となる。すなわち、設備に設置されるロボットは、例えば作業の対象となる部材の関係やロボットの個体差などが初期特性として取得される。螺子締めロボットの場合、最初にテストピースを組み付ける際に、対象となる螺子とワークとの関係が初期特性として取得される。このような螺子締めロボットの場合、上述の通り螺子を締付ける工程として、第一期から第四期を含んでいる。ここで、第二期は、第一期でワークと噛み合わされた螺子が螺子穴に締め込まれる工程である。そのため、螺子締めロボットを用いた螺子締め作業では、第二期における回転速度は、作業時間の短縮のために他の第一期、第三期および第四期に比較して高速に設定されている。一方、テストピースを最初に組み付けるとき、螺子とワークとの関係を示すパラメータ、すなわちワークに対する螺子のねじ込み量は不明である。そのため、初期特性を取得する際に、不用意に螺子締めロボットを作動させると、第二期において高速でねじ込まれる螺子がワークに衝突し、螺子やワークだけでなく螺子締めロボットの損傷を招くという問題がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第3811999号明細書
【発明の概要】
【発明が解決しようとする課題】
【0006】
そこで、本発明の目的は、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータが自動的に設定されるとともに、初期特性の取得の際における過剰な動作による損傷を回避する螺子締めロボットのパラメータ自動調整装置およびパラメータ自動調整方法を提供することにある。
【課題を解決するための手段】
【0007】
請求項1記載の発明または請求項3記載の発明では、螺子締めロボットにおいて最初にテストピースを組み付けて螺子締めロボットの初期特性を取得するとき、第二期における初期回転量は任意に設定している。上述の通り、初期特性の取得のために螺子締めロボットを最初に作動させてテストピースを組み付けるとき、ワークに対し螺子をねじ込む量は不明である。そのため、第二期における回転量すなわちねじ込み量はどの程度に設定するのがよいかは不明である。一方、第二期における回転速度は、他の期に比較して高速である。そのため、第二期における回転量が大きすぎると、ねじ込まれた螺子は最終的に大きな衝撃をともなってワークに着座する。その結果、ワークや螺子だけでなく、螺子締めロボットの損傷も招くおそれがある。そこで、請求項1記載の発明または請求項3記載の発明では、第二期における回転量を任意に設定した状態で螺子締めロボットの動作をテストする。特に、請求項2記載の発明では、第二期における回転量の初期値は、「1回」に設定される。ここで、第二期における回転量の初期値を「0回」とすると、第一期から第三期へ直接移行することとなり、第二期が消失したことと同義になる。そのため、第二期のない螺子締めロボットの特性は、実際に用いる螺子締めロボットの特性と異なることとなり、パラメータ調整の困難を招くことになる。そこで、請求項2記載の発明では、第二期における回転量の初期値を「1回」に設定し、初期特性の取得を行っている。したがって、初期特性の取得の際における過剰な動作による損傷を回避することができる。
【0008】
また、請求項1から3のいずれか記載の発明では、初期特性を取得する際に第二期における回転量の初期値を設定した後、この初期値を用いてテストピースを組み付けて第二期における回転量を設定するためのパラメータを推定する。つまり、第二期における回転量の初期値として例えば「1回」が設定された後、徐々に回転量を増しながらテストピースの組み付けを実行する。これにより、熟練者の経験および勘に頼ったパラメータ調整によらずに、第二期におけるパラメータが調整される。また、各テストピースの組み付けで得られたデータを利用しながらパラメータを設定するため、動作テストの回数すなわち消費するテストピースの数も減少する。したがって、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータを自動的に設定することができる。
【図面の簡単な説明】
【0009】
【図1】一実施形態による螺子締めロボットのパラメータ自動調整装置を示すブロック図
【図2】螺子締めロボットの例を示す模式図
【図3】図3に示す螺子締めロボットの要部を拡大した部分断面図
【図4】螺子締めロボットの作動の流れを示す概略図
【図5】一実施形態によるパラメータ自動調整装置に入力される初期データを示す概略図
【図6】一実施形態によるパラメータ自動調整装置が螺子締めロボットから取得するデータを示す概略図
【図7】一実施形態によるパラメータ自動調整装置が内部処理によって生成するデータを示す概略図
【図8】第三期における電流の変化を示す模式図
【図9】一実施形態によるパラメータ自動調整装置が出力するデータを示す概略図
【図10】一実施形態によるパラメータ自動調整装置における初期特性調査処理の流れを示す概略図
【図11】第二期における回転量と第三期における安定回転量との関係を示す概略図
【図12】第二期における回転量と第三期における安定回転量との関係を線形回帰した結果を示す模式図
【図13】第二期における回転量と第三期における安定回転量との関係をロバスト線形回帰によって求める手順を説明するための説明図
【図14】一実施形態によるパラメータ自動調整装置において第四期電流値−第三期速度をケース1によってテストする例を示す概略図
【図15】一実施形態によるパラメータ自動調整装置において第四期電流値−第三期速度をケース2によってテストする例を示す概略図
【図16】一実施形態によるパラメータ自動調整装置において第四期電流値−第三期速度をケース3によってテストする例を示す概略図
【図17】一実施形態によるパラメータ自動調整装置におけるパラメータ調整処理の流れを示す概略図
【図18】第二期における回転量と第三期における安定回転量と第二期における回転量との関係を示す概略図
【図19】第三期における回転速度と締付け時間との関係を示す概略図
【図20】第三期における電流値、第三期における着座電流値および第四期における判定電流値を算出するための係数を示す概略図
【図21】一実施形態によるパラメータ自動調整装置で算出された4期電流値の最適パラメータの表示例を示す模式図
【図22】一実施形態によるパラメータ自動調整装置で算出された2期回転量の最適パラメータの表示例を示す模式図
【発明を実施するための形態】
【0010】
以下、螺子締めロボットのパラメータ自動調整装置の一実施形態を図面に基づいて説明する。
(螺子締めロボット)
まず、パラメータ自動調節装置がパラメータを設定する対象となる螺子締めロボットについて説明する。
図2に示すように螺子締めロボット10は、ヘッド部11、ステー12およびコネクタボックス13を備えている。ヘッド部11は、図2および図3に示すように直線駆動機構部14、回転駆動機構部15およびビット16を有している。直線駆動機構部14は、ステー12に対してヘッド部11を直線状に往復駆動する。図2に示す場合、直線駆動機構部14は、図2の上下方向へヘッド部11を駆動する。直線駆動機構部14は、例えば図3に示すように動力源となるモータ17、ラック18およびピニオン19などを有している。これにより、ヘッド部11は、モータ17へ通電することによって、図2の上下方向へ移動する。回転駆動機構部15は、特許請求の範囲の駆動部に相当し、図3に示すようにモータ21およびシャフト22を有している。モータ21は、回転軸23がシャフト22に接続しており、電力を供給することによりシャフト22を回転駆動する。ビット16は、シャフト22のモータ21と反対側の端部に接続され、シャフト22によって回転駆動される。また、ヘッド部11は、吸着パイプ24を有している。吸着パイプ24は、ビット16の外周側を覆っており、ビット16側の先端が開口している。吸着パイプ24は、開口している先端と反対側がパイプ25を経由して吸引部26に接続している。吸引部26は、パイプ25を経由して吸着パイプ24の内側を減圧する。これにより、螺子締めの対象となる図示しない螺子は、吸着パイプ24の先端に吸引されるとともに、ビット16に装着される。
【0011】
図3の破線で示すように、モータ21の回転軸23にはトルクセンサ27が装着可能である。トルクセンサ27は、モータ21の回転軸23に着脱可能に装着される。トルクセンサ27は、後述するパラメータ自動調節装置でパラメータを設定する際にヘッド部11に装着され、パラメータの設定が完了するとヘッド部11から取り外される。このトルクセンサ27は、特許請求の範囲の実測締付けトルク取得手段に相当する。ヘッド部11のモータ21や吸引部26などは、カバー28に覆われている。
【0012】
次に、上記の構成の螺子締めロボット10の作動について説明する。
螺子締めロボット10は、図1に示すようにベース31に載置されたワーク32の螺子穴33に螺子34を締め込む。このとき、螺子締めロボット10は、図4に示すように第一期、第二期、第三期および第四期の手順で螺子34をワーク32に締め込む。
螺子締めロボット10は、第一期において、螺子34を螺子穴33に噛み合わせる。すなわち、螺子締めロボット10は、吸引部26の減圧によってビット16の先端に装着した螺子34を、ワーク32の螺子穴33の軸線と一致させる。そして、螺子締めロボット10は、ビット16に装着した螺子34を回転させることにより、螺子34と螺子穴33とを噛み合わせる。このとき、ビット16の回転速度は、第二期よりも低速であり、第三期よりも高速である中速に設定される。これにより、螺子34と螺子穴33との確実な噛み合いが達成される。また、螺子34をワーク32に押さえつける力は、他の第二期から第四期に比較して小さく設定されている。これにより、螺子34の傾きおよび無用な噛み込みにともなう螺子34の固着が回避される。
【0013】
第一期が終了すると、螺子締めロボット10は、第一期で螺子穴33に噛み合わされた螺子34を螺子穴33にねじ込む第二期へ移行する。螺子締めロボット10は、他の第一期および第三期よりも高速でビット16を回転させ、第一期で螺子穴33に噛み合わされた螺子34を螺子穴33にねじ込む。これにより、螺子34は、螺子穴33に対し高速にねじ込まれ、ねじ込みの所要時間が短縮される。また、螺子34をワーク32に押さえつける力は、第一期よりも強く、第三期および第四期よりも小さく設定されている。これにより、螺子34は、安定して螺子穴33にねじ込まれる。
【0014】
第二期が終了すると、螺子締めロボット10は、第二期でねじ込まれた螺子34を締め上げて螺子34に加わるトルクを予め設定された締付けトルクに調整する第三期へ移行する。螺子締めロボット10は、他の第一期および第二期よりも低速でビット16を回転させ、第二期で高速でねじ込まれた螺子34を締め上げる。これにより、螺子穴33にねじ込まれた螺子34は、予め設定された締付けトルクに高い精度で調整される。また、螺子34をワーク32に押さえつける力は、第一期および第二期よりも大きく設定されている。これにより、螺子34は、螺子頭のつぶれが回避される。
第三期が終了すると、螺子締めロボット10は、第三期で締付けトルクが調整された螺子34の締め込みを停止して螺子34に加わる締付けトルクを安定させる第四期へ移行する。螺子締めロボット10は、ビット16の回転を停止させ、ワーク32に対する螺子34のねじ込みを停止させる。また、螺子34をワーク32に押さえつける力は、第三期と同様に強く設定されている。これにより、第三期と同様に螺子34は、螺子頭のつぶれが回避される。
【0015】
以上のように、螺子締めロボット10は、第一期から第四期までを順に実行することにより、螺子34をワーク32の螺子穴33に締め込む。この螺子締めロボット10の作動は、図1に示すように螺子締めロボット10に接続するコントローラ36からの指示により、一連の流れとして実行される。パラメータ自動調整装置でパラメータを調整する場合、螺子締めロボット10は、螺子34およびワーク32からなるテストピースを組み付ける。このテストピースは、螺子締めロボット10で実際に組み付ける螺子34およびワーク32と同一の部材である。
【0016】
(パラメータ自動調整装置)
次に、上記の構成による螺子締めロボットの制御パラメータを自動で調節するパラメータ自動調整装置について説明する。
図1に示すようにパラメータ自動調整装置40は、螺子締めロボット10のコントローラ36と通信可能に接続されている。パラメータ自動調整装置40は、例えば図示しないCPU、RAMおよびROMからなる制御部41を有するパーソナルコンピュータにおいて、パラメータ自動調整プログラムを実行することによりソフトウェア的に実現されている。パラメータ自動調整装置40を構成するパーソナルコンピュータは、マウスやキーボードなどの入力部42、ディスプレイやプリンタなどの出力部43、HDDやEEPROMなどの記憶部44およびコントローラとの通信を実行する通信インターフェイス45などを有している。
【0017】
パラメータ自動調整装置40は、制御部41においてパラメータ自動調整プログラムを実行することにより、螺子締めロボット10から取得した各種のデータなどに基づいてパラメータの自動調整を実行する。具体的には、パラメータ自動調整装置40は、螺子締めロボット10のコントローラ36から各種のデータを取得する第三期回転速度取得部51、第四期供給電流取得部52および実測締付けトルク取得部53を有している。また、パラメータ自動調整装置40は、ユーザが設定するデータの入力を受け付ける回転速度入力部54、目標トルク入力部55および第二期初期回転量設定部56を有している。さらに、パラメータ自動調整装置40は、定数決定部57およびパラメータ推定部58を有している。第三期回転速度取得部51は、螺子締めロボット10の第三期におけるビット16の回転数すなわちモータ21の回転数をコントローラ36から取得する。モータ21の回転数は、例えばモータ21へ供給する電流やモータ21へ印加する電圧、またはモータ21やビット16の回転数を直接検出する機器を用いて取得される。第四期供給電流取得部52は、螺子締めロボット10の第四期におけるモータ21への供給電流をコントローラ36から取得する。実測締付けトルク取得部53は、トルクセンサ27と協働して構成され、トルクセンサ27で検出した締付けトルクの実測値をコントローラ36から取得する。回転速度入力部54、目標トルク入力部55および第二期初期回転量設定部56は、出力部43の表示画面を利用して入力部42を経由して入力されるユーザからのデータ入力を受け付ける。定数決定部57およびパラメータ推定部58は、パラメータ自動調整プログラムを実行することによりパラメータ自動調整装置40においてソフトウェア的に実現されている。パラメータ推定部58は、テストパラメータ生成部61、締付けトルク推定モデル生成部62および締付けトルク学習部63を構成している。
【0018】
第三期回転速度取得部51は、第三期において螺子34をワーク32に締め込む回転速度ω3を取得する。具体的には、第三期回転速度取得部51は、例えばモータ21に供給される電流、モータ21に印加される電圧、あるいは回転数センサ71で直接検出した回転数などから、第三期において螺子34をワーク32に締め込む回転速度ω3を取得する。第四期供給電流取得部52は、第四期において回転駆動機構部15のモータ21に供給する電流τ4を取得する。実測締付けトルク取得部53は、上述のトルクセンサ27から螺子34をワーク32の螺子穴33にねじ込む際に螺子34に加わるトルク、すなわちシャフト22を経由してビット16に接続するモータ21の回転軸23に加わるトルクを取得する。
【0019】
回転速度入力部54は、第三期において螺子34を締め込む回転速度として任意の高信頼回転速度ω3c1、中信頼回転速度ω3c2および低信頼回転速度ω3c3の入力を受け付ける。これら高信頼回転速度ω3c1、中信頼回転速度ω3c2および低信頼回転速度ω3c3は、いずれもユーザが設定可能な任意の値である。目標トルク入力部55は、第三期における締付けトルクの目標値である目標締付けトルクτgの入力を受け付ける。この目標締付けトルクτgも、第三期において螺子締めロボット10に期待するユーザの任意の締付けトルクの目標値である。定数決定部57は、この目標締付けトルクτgに、予め設定された任意の誤差範囲を含めた定数Cτを算出する。第二期初期回転量設定部56は、螺子締めロボット10において最初にテストピースを組み付けてこの螺子締めロボット10の初期特性を取得するとき、第二期における初期回転量を「1回」に設定する。パラメータ推定部58は、上記で取得した各種のデータおよびユーザからの入力によって設定された各種の値に基づいて、螺子締めロボット10を調整するパラメータを推定する。テストパラメータ生成部61は、テストピースを組み付けるごとに、螺子34の締付けトルクに関係するテストパラメータを生成する。記憶部44は、テストピースを組み付けるごとに、テストパラメータ生成部61で生成したテストパラメータ、および実測締付けトルク取得部53で取得したトルク実測値τfを関連づけた履歴を記憶する。締付けトルク推定モデル生成部62は、螺子締めロボット10の螺子締めパラメータに基づいて締付けトルクを推定した締付けトルク推定モデルを生成する。締付けトルク学習部63は、記憶部44に記憶されたテストパラメータおよびトルク実測値τfの履歴を用いて、締付けトルク推定モデル生成部62で生成した締付けトルク推定モデルを学習して学習後締付けトルク推定モデルを生成する。パラメータ推定部58は、締付けトルク学習部63で学習した学習後締付けトルク推定モデルを用いて螺子締めロボット10における螺子締めパラメータの最適値を推定する。これらパラメータ推定部58の詳細な処理については後述する。
【0020】
(パラメータ調整処理)
以下、上述の構成によるパラメータ自動調整装置40によるパラメータ調整処理の流れについて詳細に説明する。
<記号および定数の定義>
以下の説明において使用する記号および定数について次のように定義する。
【0021】
【数1】
【0022】
上記で定義した定数は、本実施形態で用いたものであり、螺子締めロボット10の特性や対象となる螺子34およびワーク32の種類などによって任意に変更することができる。また、本件の明細書および特許請求の範囲では、文書内で表示している文字と数式のイメージで表示した文字との間に書体の差があるものの、特に説明しない限り書体の差は同一の文字として扱うものとする。また、以下の説明では、「第一期」を「1期」、「第二期」を「2期」、「第三期」を「3期」および「第四期」を「4期」と簡略化して表記することもあるが、相互に同一の意義として扱うものとする。さらに、各係数Cの右肩に示されている文字は、「べき数」ではなく、各係数を識別するための「文字」である。
【0023】
<初期設定データ>
ユーザは、パラメータ自動調整装置40を用いてパラメータ調整を実行するに際し、図5に示す各種の初期データを入力する。初期データは、パラメータ自動調整装置40を構成するパーソナルコンピュータのディスプレイなどの出力部43に表示された入力画面を利用して、パーソナルコンピュータの入力部42から入力される。図5において、「呼び」とは、例えばM3やM4などの螺子34の規格を意味するものである。「目標締付けトルクτg」とは、「締付けトルクの目標値」に相当する。「調整モード」とは、パラメータ自動調整装置40を利用してパラメータを調整する際に用意されている任意に選択可能なモードである。本実施形態の場合、パラメータ自動調整装置40は、「精度優先モード」、「時間優先モード」および「速度固定モード」を用意している。「精度優先モード」は、調整した締付けトルクが目標値に近似するように第三期の回転速度の精度を優先するモードである。「時間優先モード」は、平均締付け時間が短縮されるように第三期の回転速度を優先するモードである。「速度固定モード」は、第三期の回転速度を固定するモードである。「3期速度候補」とは、第三期における速度候補である。本実施形態の場合、任意の速度候補を三つ設定することができる。この場合、「3期速度候補1」は、上述の調整モードのすべてにおいて設定される。一方、「精度優先モード」の場合、三つの速度候補である「3期速度候補1」、「3期速度候補2」および「3期速度候補3」のすべてを設定する。この場合、「3期速度候補1」は、第一速度候補に相当し、第三期において想定される範囲内で最も期待値の高い、すなわち第三期における回転速度として最も相応しいと思われる任意の値として設定される。一方、「3期速度候補2」は、第二速度候補に相当し、「3期速度候補1」よりも期待値が低いものの安全性が高い任意の値として設定される。同様に「3期速度候補3」は、「3期速度候補2」よりも期待値が低いものの安全性がさらに高い任意の値として設定される。
【0024】
<螺子締めロボットの動作テスト結果>
螺子締めロボット10の動作テストを実行することにより、パラメータ自動調整装置40は、螺子締めロボット10から図6に示すデータを取得する。図6に示す「締付けトルク」は、螺子締めロボット10の動作テストによって得られる螺子34の締付けに加わったトルクである。この「締付けトルク」は、トルクセンサ27から実測締付けトルク取得部53に取得される。なお、「締付けトルク」は、螺子締めロボット10で締付け動作を実行した後、手動で増し締めトルクや緩みトルクを計測して入力してもよい。「制御電流データ」は、ビット16を回転するモータ21の回転軸23の電流波形である。「制御ステップデータ」は、螺子締め動作が現在いずれの「期」にあるかを示すデータである。「締付け時間」は、螺子締めロボット10が動作テストにおいて螺子締めに所要した時間である。
【0025】
<動作テスト結果を処理して得られるデータ>
パラメータ自動調整装置40は、螺子締めロボット10から取得したデータを用いて、図7に示す次のようなデータを内部処理によって生成する。ここで、第三期安定区間は、第三期のうち、螺子34に取り付けられている座金などがワーク32の端面に着座する影響を受けない区間とする。図7に示す「3期安定時間」は、第三期安定区間の所要時間を意味する。また、「3期安定回転量」は、第三期安定区間の回転量を意味する。
【0026】
パラメータ自動調整装置40は、「制御ステップデータ」が第三期である範囲において、「制御電流データ」が最大となる値を、第三期最大電流値「τ3max」として取得する。ここで、パラメータ自動調整装置40は、第三期において、τ3≦τ3max×CStThの区間を第三期安定区間とする。また、パラメータ自動調整装置40は、この第三期安定区間の時間を、上述の通り「3期安定時間ts3」とする。
【0027】
なお、仮に第三期の区間が複数に分かれたときは、最も長い区間を第三期安定区間とする。例えば第二期において螺子34を回転駆動するモータ21は高速で回転するため、多くの電流が供給される。そのため、この第二期における電流が第三期の開始時に維持され、第三期の初期において短い区間が算出される場合がある。上述のように最も長い区間を第三期安定区間とすることにより、この短い区間が以下の処理に与える影響は排除される。
【0028】
また、生じるおそれは小さいものの、係数CStThが小さいとき、ねじ込み中の負荷による電流の変化にともない第三期安定区間が分かれてしまうおそれがある。これは、次のような手順によって検出することができる。すなわち、通常であれば、第三期の所要時間t3と第三期における安定区間の時間つまり3期安定時間ts3とが大きく異なることはない。そこで、ts3/t3<Cxとして、第三期安定区間の分割を検出することができる。この場合、パラメータ自動調整装置40は、例えばCStTh=CStTh+(1−CStTh)/2として更新し、螺子締めロボット10の動作テストをやり直したり、CStThが低い旨を通知して調整を「NG」として終了してもよい。
【0029】
パラメータ自動調整装置40は、次の式によって「3期安定回転量Rs3」を算出する。
3期安定回転量Rs3=3期安定時間ts3×3期回転速度ω3/モータ速度係数Cms
ここで、係数は、図8に基づいて以下のように設定する。図8は、第三期における電流τ3の変化を示す模式図である。
【0030】
・3期安定区間算出係数[−]:CStTh=0.33
このCStThの値は、螺子締めロボット10によるねじ込み動作中に当然に生じる自然な負荷の変化、すなわち図8におけるリップル状の変化を検出することなく、かつ螺子34に取り付けられた座金などの影響による電流の上昇を排除できる値である。本実施形態では、経験的に、CStTh=0.33としている。
【0031】
・モータ速度係数[ms]:Cms=1200
このモータ速度係数Cmsは、モータ21の回転速度が1(%)のとき、モータ21が1回転に要する時間(ms)に相当する。そのため、モータ速度係数Cmsは、モータ21の種類または形式などが決定すれば、自動的に決定される値である。本実施形態では、上述の通りCms=1200としている。
【0032】
<パラメータ自動調整装置が螺子締めロボットに出力するパラメータ>
パラメータ自動調整装置40は、螺子締めロボット10に対し、図9に示す次のようなデータを出力する。具体的には、パラメータ自動調整装置40は、「第二期における回転量」、「第三期における螺子締めトルクの制限値」、「第三期における着座判定トルク」、「第三期における螺子締め速度」、「第四期における螺子締めトルク制限値」、および「第四期における螺子締めトルク判定値」を出力する。これらのパラメータは、公知の螺子締めロボット10において出力されるパラメータと相違がない。
【0033】
<テスト履歴データ>
パラメータ自動調整装置40は、螺子締めロボット10において動作テストを実行するごとに、取得したデータおよび出力したデータを履歴として記憶部44に蓄積する。
【0034】
<初期特性調査処理の流れ>
パラメータ自動調整装置40は、上記の初期設定データの入力が行われると、初期特性調査処理へ移行する。図10に基づいて初期特性調査処理について説明する。初期特性調査処理は、螺子締めロボット10において最初にテストピースを組み付けて螺子締めロボット10の初期特性を取得する処理である。ここで、テストピースとは、上述のように螺子締めロボット10を実際に適用して組み立てる対象となる螺子34とワーク32とからなる試験用の部材である。
【0035】
パラメータ自動調整装置40は、初期特性調査処理において、より安全性の高いパラメータを用いて螺子締めロボット10を動作させ、螺子締めロボット10の初期特性を調査する。すなわち、パラメータ自動調整装置40を用いたパラメータ調整の開始直後、つまり螺子締めロボット10を最初に作動させてテストピースを組み付けるとき、ワーク32に対し螺子34をねじ込む量は不明である。そのため、第二期における回転量はどの程度に設定するのがよいのかは不明である。ここで、第二期における回転速度は図4に示す通り他の期に比較して高速である。そのため、第二期における回転量が大きすぎると、ねじ込まれた螺子34は最終的に大きな衝撃をともなってワーク32に着座する。その結果、ワーク32や螺子34だけでなく、螺子締めロボット10の損傷を招くおそれがある。そこで、パラメータ自動調整装置40は、初期特性処理において、まず回転量特性テストを実行し、段階的に第二期における回転量を増加させる。そして、パラメータ自動調整装置40は、第二期における回転量を概略的に設定した後、第二期における電流および速度と締付けトルクとの関係を調査する。
【0036】
初期特性調査処理に移行すると、パラメータ自動調整装置40は、「回転量特性テスト1」を実行し、この「回転量特性テスト1」におけるパラメータを取得する(S101)。そして、パラメータ自動調整装置40は、螺子締めロボット10の動作をテストし(S102)、「回転量特性テスト1」が完了したか否かを判断する(S103)。
【0037】
「回転量特性テスト1」では、パラメータ自動調整装置40は、第二期における回転量を最小とした状態で螺子締めロボット10の動作をテストする。すなわち、「回転量特性テスト1」のとき、第二期初期回転量設定部56は、第二期おける回転量の初期値を「1回」に設定する。なお、第二期における回転量の初期値を「0回」とすると、第一期から第三期へ直接移行し、第二期が消失したことと同義となる。そのため、第二期のない螺子締めロボット10の特性は実際に用いる螺子締めロボット10の特性と異なることとなり、パラメータの調整が困難になる。そこで、第二期初期回転量設定部56は、第二期における回転量の初期値を「1回」に設定している。また、「回転量特性テスト1」のとき、パラメータ自動調整装置40は、第三期における回転速度として図5に示す「3期速度候補1」を用いるとともに、第四期における電流値は予め設定されているデフォルト値を用いる。なお、本実施形態では、螺子締めロボット10の第二期における回転量が「1回未満」となるような特殊な螺子については想定していない。
したがって、テストパラメータ生成部61は、「回転量テスト1」におけるテストパラメータを次の通り設定する。
【0038】
【数2】
【0039】
パラメータ自動調整装置40は、S101において「回転量特性テスト1」を実行することにより、得られた「3期安定回転量の平均値」の精度が十分高くなると、「回転量特性テスト1」を終了する。ここで、精度を確保するための基準として、一般に平均値の点推定を行い、推定された区間が予め設定された閾値以下であるとき、精度が確保されたとする手法がある。しかし、第三期における安定的な回転量の平均値すなわち「3期安定回転量の平均値」は、その分散がワーク32や螺子34を変更してもほとんど変化しない。そこで、推定された区間は、実質的にテストの回数によって決定される。そのため、本実施形態の場合、パラメータ自動調整装置40は、S102においてテスト回数が「3回」つまり「回転量特性テスト1」によるテストピースの組み立てを「3回」実行すると、「回転量特性テスト1」を完了としている。なお、例えば第一期における螺子34とワーク32との噛み合いが達成できない場合のようにテストが「NG」となった場合、テスト回数はカウントしない。
【0040】
パラメータ自動調整装置40は、S102に螺子締めロボット10の動作をテストする場合、まず螺子締めロボット10へ各種パラメータを転送する。この場合、パラメータ自動調整装置40は、転送する段階で設定されているすべてのパラメータを螺子締めロボット10へ転送する。螺子締めロボット10は、パラメータ自動調整装置40から転送された各種パラメータを用いて動作し、ワーク32に対する螺子34のねじ込みを実行する。このとき、パラメータ自動調整装置40は、動作する螺子締めロボット10からモータ21の電流波形およびトルクセンサ27で検出した締付けトルクを取得する。パラメータ自動調整装置40は、取得した電流波形および締付けトルクを記憶部44に記憶する。
【0041】
パラメータ自動調整装置40は、S103において「回転量特性テスト1」が完了したと判断すると(S103:Yes)、「回転量特性テスト2」を実行し、この「回転量特性テスト2」におけるパラメータを取得する(S104)。そして、パラメータ自動調整装置40は、螺子締めロボット10の動作をテストし(S105)、「回転量特性テスト2」が完了したか否かを判断する(S106)。パラメータ自動調整装置40は、S103において「回転量特性テスト1」が完了していないと判断すると(S103:No)、S101へリターンし、「回転量特性テスト1」を繰り返し実行する。
【0042】
「回転量特性テスト2」では、パラメータ自動調整装置40は、第二期における回転量を「回転量特性テスト1」よりも大きく設定する。すなわち、「回転量特性テスト1」で第二期における回転量の初期値が「1回」と設定して動作をテストした後、「回転量特性テスト2」では「回転量特性テスト1」で取得したパラメータを利用して第二期における回転量の初期値を「回転量特性テスト1」よりも大きく設定する。「回転量特性テスト2」において設定する第二期の回転量は、次の考え方に基づいて算出される。ここで、上記のように第二期における回転量から第三期における安定回転量への変換係数Cr23として、Cr23=−1.2を設定すると、第二期における回転量と第三期における安定回転量との関係は、次のように算出することができる。
【0043】
【数3】
【0044】
上式より、「3期安定回転量の平均値」とCrm3との中間の値を安全にテストできる第二期における回転量と考えることができる。そこで、第二期における回転量は、
【0045】
【数4】
【0046】
と設定する。
ここで、第三期回転量マージンCrm3について検証する。
第二期における回転量を調整する場合、次の三つの要件を満たすことが必要である。
・条件1:第二期において螺子34がワーク32に着座してはならない。
上述のように第二期における回転速度は高速である。そのため、第二期において螺子34がワーク32に着座すると、ワーク32および螺子34にとどまらず螺子締めロボット10の損傷を招く。一方、螺子34がワーク32に着座する限界値を算出するには、第三期における安定回転量すなわち「3期安定回転量:Rs3」のばらつきを考慮する必要がある。ワーク32に螺子34をねじ込む場合、第一期における噛み合いによって少なくとも1回転の誤差が生じる。そのため、ワーク32または螺子34のいずれか一方で0.5回転が誤差の最小値となる。さらに、この回転の誤差に螺子締めロボット10の特性のばらつきが加算される。本実施形態の場合、実験的な値として螺子締めロボット10の特性のばらつきによる誤差は0.7回転に設定している。
【0047】
・条件2:第三期の安定回転量を確保する。
第二期における回転の勢いが残存したまま第三期を経て第四期に移行すると、締付けトルクのばらつきは大きくなる。そのため、第三期における安定回転量すなわち「3期安定回転量」は一定以上の量を確保することが望ましい。実験的に第三期における安定回転量が0.5回転確保されると、締付けトルクのばらつきが低減される。そこで、本実施形態では、第三期における安定回転量として0.5回転を確保している。
・条件3:条件1および条件2を満たしつつ第二期における回転量を増す。
【0048】
螺子締めロボット10における第一期から第四期までを通した螺子締めの所要時間は、できる限り短縮することが望ましい。したがって、第二期における回転量は、大きいほど好ましい。
以上の条件1から条件3から、本実施形態では、第三期における安定回転量のマージンである「3期安定回転量マージン」は、
Crm3=0.5+0.7+0.5=1.7
に設定する。
【0049】
次に、第二期における回転量から第三期における安定回転量への変換係数Cr23について検証する。
定性的に、第二期における回転量R2が増加すると、第三期における安定回転量Rs3は、回転量R2の増加分だけ減少する。すなわち、Cr23=−1となるのが妥当である。しかしながら、実際には、例えば螺子34とワーク32との間の滑りや螺子締めロボット10のヒステリシスなどに起因して、Cr23=−1とはならない。すなわち、実験的にデータを収集すると、図11に示すように変換係数Cr23は、「−1」からずれた値となる。ここで、この変換係数Cr23を検証するために、第二期における回転量R2に対する第三期における安定回転量Rs3の関係を求め、図12に示している。図12に示すようにこれらの関係をロバスト(Robust)線形回帰、および線形(Normal)回帰すると、変換係数Cr23に相当する傾きは、Cr23=−1.18≒−1.2となっている。そこで、本実施形態では、この傾向を考慮して、Cr23=−1.2と設定する。
以上の理由から、テストパラメータ生成部61は、「回転量テスト2」におけるテストパラメータを次の通り設定する。
【0050】
【数5】
【0051】
パラメータ自動調整装置40は、「回転量特性テスト1」と同様に、S104およびS105において「回転量特性テスト2」を3回実行する。そして、パラメータ自動調整装置40は、S106において「回転量特性テスト2」が完了したと判断すると(S106:Yes)、電流−速度特性のテストパラメータの生成へ移行する(S107)。そして、パラメータ自動調整装置40は、螺子締めロボット10の動作をテストし(S108)、電流−速度特性のテストパラメータの生成が完了したか否かを判断する(S109)。パラメータ自動調整装置40は、S106において「回転量特性テスト2」が完了してないと判断すると(S106:No)、S104へリターンし、「回転量特性テスト2」を繰り返し実行する。また、パラメータ自動調整装置40は、S109において電流−速度特性のテストパラメータの生成が完了したと判断すると(S109:Yes)、初期特性調査処理を完了する。一方、パラメータ自動調整装置40は、S109において電流−速度特性のテストパラメータの生成が完了していないと判断すると(S109:No)、S107へリターンし、テストパラメータの生成処理を繰り返す。
【0052】
電流−速度特性のテスト(以下、「電流−速度テスト」とする。)について詳細に説明する。パラメータ自動調整装置40は、電流−速度テストにおいて、電流および回転速度と締付けトルクとの関係を、予め初期的に設定されたデフォルトパラメータの付近で微少に変更しながら調査する。この調査は、後続するパラメータの調整処理において回帰分析がランク落ちになるのを防止する目的がある。この目的に従えば、回帰分析のパラメータが3個であることから、最低3点において関係を取得すれば足りる。本実施形態では、いわゆるロバスト性を高めるために、4点において関係を取得する。
【0053】
電流−速度テストにおけるテストパラメータは、以下に示す第二期における回転量R2、および第四期電流値−第三期速度を用いる。
【0054】
【数6】
【0055】
第二期における回転量は、上述のS101における「回転量特性テスト1」およびS104における「回転量特性テスト2」の各結果、ならびにS107における電流−速度テストの各結果から、下記の式1に示す第三期安定回転量のモデルRs3を学習し、Rs3=Crm3となるようにR2を決定する。
【0056】
具体的には、第二期における回転量は、「回転量特性テスト1」および「回転量特性テスト2」の結果に基づいて、式1からaI、bIを求める。つまり、「回転量特性テスト1」および「回転量特性テスト2」において固定値とした係数は、図13に示すようにロバスト線形回帰によって求められる。そして、第三期安定回転量Rs3とCrm3とが等しくなるようにR2を設定する。具体的には、下記の式2とする。
【0057】
【数7】
【0058】
第四期電流値−第三期速度は、予め初期的に設定されたデフォルトパラメータ付近で微少に変更しながらテストを行う。但し、先に実行した「回転量特性テスト1」および「回転量特性テスト2」においてデフォルトパラメータを用いて試験した結果が得られている。そのため、既に「回転量特性テスト1」および「回転量特性テスト2」で得られた試験結果を参考にして次の三つのケースに分類する。
【0059】
●ケース1:「回転量特性テスト1」および「回転量特性テスト2」における締付けトルクのすべてが目標締付けトルクよりも小さい場合
●ケース2:「回転量特性テスト1」および「回転量特性テスト2」における締付けトルクのすべてが目標締付けトルクよりも大きい場合
●ケース3:ケース1およびケース2のいずれにも該当しない場合
【0060】
ケース1の場合、第四期における電流値は、デフォルトパラメータにおいて、締付けトルクが不十分であることが明らかになっている。そのため、パラメータ自動調整装置40は、デフォルトパラメータを1.0〜1.2倍した範囲で電流−速度テストを実行する。
【0061】
また、ケース2の場合、第四期における電流値は、デフォルトパラメータにおいて、締付けトルクが過剰であることが明らかになっている。そのため、パラメータ自動調整装置40は、デフォルトパラメータを0.85〜1.0倍した範囲で電流−速度テストを実行する。
さらに、ケース3の場合、第四期における電流値は、デフォルトパラメータにおいて、締付けトルクが不足する場合および過剰な場合が混在している。そのため、パラメータ自動調整装置40は、デフォルトパラメータを0.85〜1.15倍した範囲で電流−速度テストを実行する。
【0062】
一方、パラメータ自動調整装置40は、第三期における回転速度について、最も信頼度が高いと思われるω3=ω3c1を中心として、微少に回転速度を変更する。ここで、精度優先モードが選択されている場合、第三期における回転速度ω3として三種類の候補が設定されている。この場合、パラメータ自動調整装置40は、すべての候補を用いて電流−速度テストを実行する。これにより、ケース1の場合、パラメータ自動調整装置40は、図14に示すように上述のパラメータ条件を用いて4回のテスト、すなわちS108における螺子締めロボット10の動作テストを実行する。同様に、パラメータ自動調整装置40は、ケース2の場合、図15に示すように上述のパラメータ条件を用いて4回のテストを実行し、ケース3の場合、図16に示すように上述のパラメータ条件を用いて4回のテストを実行する。
パラメータ自動調整装置40は、S109において、S108における螺子締めロボット10の動作テストが4回実行されたと判断すると、電流−速度特性テストが完了したと判断する。
【0063】
<パラメータ調整処理>
上述の初期特性調査処理が完了すると、パラメータ自動調整装置40は、パラメータ調整処理へ移行する。図17に基づいてパラメータ調整処理について説明する。パラメータ自動調整装置40は、図10に示す上述の初期特性調査処理を完了すると、初期特性調査処理で取得した各種のパラメータおよび既に入力された初期設定データを利用してパラメータ調整処理を実行する。
【0064】
テストパラメータ生成部61は、パラメータ調整処理へ移行すると、第二期におけるテストパラメータを生成する(S201)。そして、テストパラメータ生成部61は、第三期における回転速度および第四期における電流値のテストパラメータを生成した後(S202)、第三期における電流値、第三期における螺子34がワーク32に着座したときの着座電流値、および第四期における判定電流値のテストパラメータを生成する(S203)。これらS201からS203においてテストパラメータが生成されると、パラメータ自動調整装置40は、螺子締めロボット10へ生成したパラメータを転送し(S204)、螺子締めロボット10において動作テストを実行する(S205)。そして、パラメータ自動調整装置40は、螺子締めロボット10から電流波形および締付けトルクの実測値を取得する(S206)。本実施形態の場合、パラメータ自動調整装置40は、このS204からS206の螺子締めロボット10における動作テストの処理を5回繰り返して実行する。したがって、パラメータ自動調整装置40は、螺子締めロボット10から電流波形および締付けトルクを取得すると、動作テストの実行回数が「5回」に到達したか否かを判断する(S207)。
【0065】
パラメータ自動調整装置40は、S207において螺子締めロボット10の動作テストが「5回」繰り返して実行されていないと判断すると(S207:No)、S204へリターンし、S204からS206の処理を繰り返す。一方、パラメータ自動調整装置40は、S207において螺子締めロボット10の動作テストが「5回」繰り返して実行されたと判断すると(S207:Yes)、最適パラメータを設定するとともにこの最適パラメータの収束状態を報知する(S208)。そして、パラメータ自動調整装置40は、処理の途中に処理を中断する指示があったか否かを判断し(S209)、処理を中断する指示がなければ(S209:No)、パラメータ調整処理が完了したか否かを判断する(S210)。パラメータ自動調整装置40は、S209において処理を中断する指示があったとき(S209:Yes)およびS210においてパラメータ調整処理が完了したと判断したとき(S210:Yes)、パラメータ調整処理を終了する。一方、パラメータ自動調整装置は、S210においてパラメータ調整処理が完了していないと判断すると(S210:No)、S201へリターンし、処理を繰り返す。
【0066】
以下、このパラメータ調整処理の詳細について説明する。
図17に示すパラメータ調整処理において、第二期における回転量は、すべての調整モードにおいて共通に設定する。
テストパラメータ生成部61は、パラメータ調整処理のS201における第二期における回転量のテストパラメータを、次の手順で算出する。
まず、パラメータ自動調整装置40は、初期特性調査処理を含む過去のすべてのテスト結果に基づいて、第三期における回転量について式3を用いて学習し、係数asおよびbsを算出する。そして、パラメータ自動調整装置40は、第三期における安定回転量すなわち3期安定回転量Rs3がCrm3に等しくなるように式4に基づいて第二期における回転量を設定する。つまり、図18に示すように第二期における回転量R2と第三期における安定回転量Rs3との間には相関が得られる。
【0067】
【数8】
【0068】
テストパラメータ生成部61は、パラメータ調整処理のS202における第三期の回転速度、第四期における電流値のテストパラメータを、次の手順で算出する。ここで、S202において生成する第三期の回転速度および第四期の電流値のテストパラメータは、「精度優先モード−通常」、「精度優先モード−簡易」、「時間優先モード」および「速度固定−簡易モード」のいずれかを任意に選択することができる。以下、これらをモードごとに説明する。
【0069】
●「精度優先モード−通常」のとき
第三期の回転速度ω3および第四期の電流値τ4に対する締付けトルクτfを算出する場合、これらの間には次のようなモデルが成立する。このモデルは、実験的に収集されたデータについて二乗誤差を最小にする観点で作成している。
【0070】
【数9】
【0071】
しかし、このモデルのように係数がa1からa7と多数存在する場合、テストピースを用いた螺子締めロボット10の動作テストを多数回繰り返す必要がある。そこで、係数を低減するために、締付けトルク推定モデル生成部62は、次の式をモデル1として生成する。
【0072】
【数10】
【0073】
ここで、上記の式において「log」の項を含めているのは、第三期における回転速度ω3が小さいとき、非線形に近似されるためである。そのため、第三期における回転速度ω3が比較的大きく、その影響を排除可能であるとき、締付けトルク推定モデル生成部62は、次の式をモデル2として生成してもよい。
【0074】
【数11】
【0075】
ここで、締付けトルク学習部63は、螺子締めロボット10において実行したテストピースを組み立てる動作テストによって取得したデータから、上記の式のいずれかを用いて、係数u、w、vをそれぞれ学習する。この係数u、w、vは、螺子締めロボット10、螺子34およびワーク32の特性を表現している。
【0076】
螺子締めロボット10の動作テストを実行するとき、ワーク32および螺子34からなるテストピースが動作テストごとに消費される。そのため、パラメータ調整処理は、可能な限り少ない動作テスト回数で終了することが望ましい。すなわち、係数u、w、vの推定精度を効率よく向上させるようにテストパラメータを選択する必要がある。そこで、本実施形態では、次のような考え方を導入している。
【0077】
(1)最適パラメータ付近でのみ精度を向上する
最適パラメータを求めるということは、τf=τgとなるτ4およびω3を求めることを意味する。そのため、上記したモデルでは、τg付近においてのみ精度が高ければ十分である。よって、τf=τgが成立する可能性が高い領域では動作テストの回数を増加させることが望ましい。特に上記のモデルは、係数をu、v、wの三つに絞った近似式であるため、広い範囲の特性を求める場合、τgから遠い領域では精度が著しく低下するからである。
【0078】
(2)線形回帰における一般的な最適計画を導入する
線形回帰において係数の精度を高める一般的な方法として、D最適計画が用いられている。
本実施形態の場合、(1)で説明したτf=τgが成立する可能性が高い領域、すなわち信頼区間で制限された範囲に、(2)におけるD最適計画を適用して、テスト水準を決定する。具体的には、パラメータ推定部58は、次の手順でテストパラメータを算出する。
まず、パラメータ推定部58は、係数u、w、vの信頼区間を計算する。この信頼区間の上限値および下限値を用いて、τf=τgが成立する可能性が高いパラメータ範囲を限定していく。この信頼区間は、螺子締めロボット10において動作テストを繰り返して実行するごとに逐次的に絞られていく。具体的な手順は、次の通りである。
【0079】
パラメータ推定部58は、図10に示す初期特性調査処理において取得した第三期における回転速度ω3、および第四期における電流値τ4から、上記のモデル1を用いて係数u、v、wを求める。なお、モデル1に代えてモデル2を用いてもよい。
そして、τg付近での精度を高めるために、線形回帰による予測分布を利用して、信頼区間におけるテストパラメータの範囲を制限する。ここで、螺子締めロボット10の動作回数nを、n=1、2、・・・、Nとして、得られたデータを、
【0080】
【数12】
【0081】
とする。なお、上記の式で文字の右肩に示されている「n」は「べき数」ではなく、上記の動作回数「n」を識別するためのものである。また、係数w(ベクトル)および次のテストパラメータxは、それぞれ、
【0082】
【数13】
【0083】
とする。
このとき、学習済のwは次のように学習できる。「∧」は学習済であることを示している。
【0084】
【数14】
【0085】
このとき事後予測分布は、統計的手法に基づいて次の式から算出される。ここで、「p」は係数の数に相当し、モデル1およびモデル2の場合、「p=3」である。
【0086】
【数15】
【0087】
上記の式により、100(1−α)%の予測応答の信頼区間は次のように示される。
【0088】
【数16】
【0089】
tはt分布であり、自由度はn−p−1である。このうち「n」はデータの数であり、「p」は係数の数である。また、α=0.05と設定することにより、95%の確率で設定した信頼区間に含まれることを意味する。本実施形態では、上述の信頼区間の範囲に、目標締め付けトルクτgが含まれていることを、次のテストパラメータの条件としている。具体的には、次のテストパラメータxは、次の式を満たすように制限している。
【0090】
【数17】
【0091】
以上によって設定した信頼区間において、D最適計画を計算する。具体的には、
【0092】
【数18】
【0093】
を小さくするようなサンプルの取得方法が望ましい。そこで、
【0094】
【数19】
【0095】
を次のテストパラメータとした。ただし、第三期における回転速度ω3は「3期速度候補1」、「3期速度候補2」および「3期速度候補3」に最近傍法を用いて近似させる。
上記の信頼区間の設定については、「パターン認識と機械学習 上−ベイズ理論による統計的予測:C.M.ビショップ 著」を参考にしている。また、D最適計画については、「実験計画法 方法編―基盤的方法から応答曲面法 タグチメソッド 最適計画まで:山田秀 著」を参考にしている。
【0096】
ところで、螺子締めロボット10の特性によっては、第三期における回転速度ω3の影響が小さい場合がある。このように第三期における回転速度ω3の影響が小さい場合、信頼区間による制限はω3軸方向へ拡大し、適切な結果が得られない場合がある。この場合、モデル1およびモデル2から第三期における回転速度ω3を除き、τf=uτ4+vとしてもよい。そして、下記の通り、p=2として変数を減らすことにより、第四期による電流値τ4の計算を簡略化させてもよい。
【0097】
【数20】
【0098】
この場合、第三期における回転速度ω3は、次の三つの水準において動作テストの回数が等しくなるように決定する。
【0099】
【数21】
【0100】
以上において、同一のパラメータで5回を1セットとして螺子締めロボット10における動作テストを実行する。これにより、パラメータごとに標準偏差σが算出される。
【0101】
次に、上記の第三期における回転速度ω3、および第四期における電流値τ4のテストパラメータの生成を完了する条件を説明する。
最適パラメータは、次の式によって算出される。
【0102】
【数22】
【0103】
これを、以下の式に当てはめることにより、信頼区間が計算される。
【0104】
【数23】
【0105】
これにより、以下の式が成立すればパラメータの生成は完了と判断することができる。
【0106】
【数24】
【0107】
なお、信頼区間は、大まかにはテスト回数の平方根に反比例する。そのため、より簡易的には、テスト回数が予め設定したテスト回数に到達すればパラメータの生成は完了としてもよい。一般的には、螺子締めロボット10における30回程度の動作テストがあるように設定することが望ましい。
パラメータの生成が完了すると、S208において最適パラメータを設定する。
【0108】
【数25】
【0109】
パラメータ推定部58は、S204からS206において5回を1セットとして螺子締めロボット10の動作テストを実行し、1セットごとに標準偏差σfを計算する。この結果に基づいて、σf=rω3+sを学習し、係数r、sを求める。
パラメータ推定部58は、第三期における三種類の速度候補のうち、σf=rω3+s<σgを満たす中でもっとも速度の速い速度候補を選択する。パラメータ推定部58は、いずれの速度候補もこの条件を満たさない場合は、安全性を考慮して最も遅い速度候補を選択する。この場合、パラメータ自動調整装置40は、ディスプレイなどの出力部43にすべての速度候補で目標精度を出せなかった旨を報知する.
【0110】
●「精度優先モード−簡易」のとき
上述の「精度優先モード−通常」は、複雑な計算を実行するため、パラメータの自動調整を実行する所要時間が長くなる。そこで、以下の手順により、精度を優先しつつ簡易的なパラメータの自動調整を行うこともできる。すなわち、信頼区間は、上述の通り動作テストの回数の平方根に反比例すると考えられる。そのため、数十回の動作テストを行う場合、初期を除くと信頼区間が大きく変化することはない。そこで、信頼区間を以下に示す固定値とすることにより、簡易的な計算が可能となる。また、D最適計画についても、多くの場合、一般的に信頼区間の端同士が選択される傾向にある。そのため、信頼区間の端点を順に選択することにより、簡易的な計算が可能となる。
【0111】
【数26】
【0112】
上記に示す定数「Cτ」は、信頼区間の計算値から大きく外れない値とすることが好ましい。この定数「Cτ」は、定数決定部57において算出される。すなわち、定数決定部57は、目標トルク入力部55から入力された目標締付けトルクτgに、予め設定された任意の誤差範囲を含め、下記の式に基づいて定数「Cτ」を設定する。
【0113】
【数27】
【0114】
このように、簡易に計算を行う場合も、既に取得した第四期における電流値τ4を用いてτf=uτ4+vを学習し、係数u、vを算出する。ここで、水準は、上記した9つの水準から動作テストの回数が等しくなるように水準1から順に少なくとも四つを選択する。そして、同一のパラメータについて、S204からS206において5回を1セットとして動作テストを実行する。パラメータ生成の完了条件、および最適パラメータの設定は、上記の「精度優先モード−通常」の場合と同様である。
【0115】
●「時間優先モード」のとき
時間優先モードで計算を行う場合、既に取得した第三期における回転速度ω3を用いて、tf=g/ω3+hを学習し、係数g、hを算出する。目標締付け時間をtgとすると、第三期における回転速度ω3は、下記で示される。
【0116】
【数28】
【0117】
この場合、第四期における電流値τ4は、電流値候補として任意の水準1から水準3として設定することができる。また、「時間優先モード」の場合、標準偏差σの計算が不要であるため、同一のパラメータごとに1回の動作テストを実行する。第三期における回転速度と第三期における締付け時間との間には、図19に示すような関係が成立する。
パラメータ生成の完了条件は、上記の「精度優先モード−通常」の場合と同様である。
一方、最適パラメータは、次のように設定される。
【0118】
【数29】
【0119】
●「速度固定モード−簡易」のとき
「速度固定モード−簡易」は、「精度優先モード−簡易」をさらに簡略化した計算によってパラメータを生成する。この場合も、既に取得した第四期における電流値τ4を用いてτf=uτ4+vを学習し、係数u、vを算出する。そして、標準偏差σの計算が不要であるため、以下の三つの水準について、同一のパラメータでS204からS206において1回の動作テストを実行する。第三期における回転速度は、固定であるため、ω3=ω3c1である。パラメータの生成の完了条件は、上記の「精度優先モード−簡易」の場合と同様である。
一方、最適パラメータは、次のように設定される。
【0120】
【数30】
【0121】
パラメータ自動調整装置40は、パラメータ調整処理のS203における第三期の電流値、第三期の着座電流値および第四期の判定電流値のテストパラメータを、次の手順で算出する。
なお、第四期電流値については、モータ21の特性によって決定される。具体的には、自動調整処理の初期などのように螺子締めロボット10の動作回数が少ないとき、パラメータ推定部58は、第四期電流値を線形変換によって算出する。この値をデフォルトパラメータと定義する。この値は、以下に示すように目標締付けトルクτgとモータ21の電流との関係を示しており、上述の通りモータ21の特性によって決定される。
【0122】
【数31】
【0123】
第三期における電流値τ3、第三期における着座電流値τh3、および第四期における判定電流値τh4は、上述の第四期における電流値に基づいて線形変換によって算出する。本実施形態の場合、これらの値を算出するための係数Cは、実験的に求め、図20に示すように設定している。ここで、第三期における着座電流値τh3とは、第三期において締め上げられている螺子34の頭部がワーク32の端面に接したときの電流値である。また、第四期における判定電流値τh4とは、第四期において螺子34のねじ込みが停止したと判定したときの電流値である。
【0124】
【数32】
【0125】
以上のような手順によりS201からS203において各種のパラメータが生成され、生成されたパラメータに基づいてS204からS206において螺子締めロボット10の動作テストが実行されると、パラメータ自動調整装置40は、S207において求められた最適パラメータがあるときディスプレイなどの出力部43に表示するとともに、収束状態が不適切であるときその旨をディスプレイなどの出力部43に表示する。これにより、パラメータ調整処理は終了する。
【0126】
ところで、上述の手順にしたがって求められた最適パラメータは、テストピースの組み付け回数が増すごとに、徐々に特定の値に収束していく。そこで、パラメータ自動調整装置40は、テストピースの組み付けによって最適パラメータが更新されるごとに、更新された最適パラメータを図21および図22に示すようにディスプレイなどの出力部43に出力する。この図21および図22に示すグラフは、横軸にテストピースの組み付け回数を設定し、縦軸に各組み付け回数における最適パラメータである。なお、図21および図22において、下側の図は上側の図の縦軸のスケールを拡大したものである。これにより、ユーザは、テストピースの組み付けによる螺子締めロボット10の動作テストの繰り返しともなう最適パラメータの推移を認識することができる。その結果、特に熟練者の場合、この出力部43の表示を確認することにより、パラメータの調整の打ち切りや継続の判断をすることができる。
なお、上述の説明では、特にテストパラメータの範囲について説明していないが、安全性を確保するためにテストパラメータの上限値および下限値は予め設定することが望ましい。
【0127】
以上説明した一実施形態では、パラメータ推定部58は、簡略化したモデルを用いてパラメータを推定している。すなわち、パラメータ推定部58は、簡略化したモデルを用いて、締付けトルクの実測値τfが目標とする締付けトルクτgに近似する第三期の回転速度ω3および第四期の電流τ4を推定している。このとき、求める係数は、三種類であるので、これらの値を収束させるために必要な動作テストの回数、すなわち消費するテストピースの数は、数十個程度と熟練者に近くなる。したがって、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータを自動的に設定することができる。
【0128】
また、一実施形態では、パラメータ推定部58は、簡略化したモデルを用いて第三期および第四期における螺子締めパラメータ、すなわちτf=τgとなる回転速度ω3および電流τ4を推定している。このとき、簡略化したモデルで用いる締付けトルクの実測値τfは、これらのパラメータを設定する際にのみ必要となる。つまり、螺子締めロボット10についてパラメータを設定することにより、螺子締めロボット10は、ラインにおいて動作するとき、トルクセンサ27による締付けトルクの実測値を用いることなく第三期における締付けトルクを調整する。したがって、パラメータを設定した後、ラインにおいて螺子締めロボット10を動作させるとき、ラインに設けられたすべての螺子締めロボット10に高価なトルクセンサ27を設置する必要がない。特に、一実施形態のようにトルクセンサ27を螺子締めロボット10から着脱可能とすることにより、複数の螺子締めロボット10のパラメータを自動調整するとき、、一つのトルクセンサ27があればよい。したがって、高価なトルクセンサ27を数多く用意することなく、複数の螺子締めロボット10のパラメータを自動調整することができる。
【0129】
さらに、一実施形態では、「精度優先モード−簡易」のとき、予め設定する速度候補は三つの固定値となっている。パラメータ推定部58は、三つの速度候補に対応して設定された九つの水準から四つの水準を選択して螺子締めロボット10の動作テストを実行する。そのため、パラメータを収束させるために必要な動作テストの回数、すなわち消費されるテストピースの数は、数十個程度と熟練者に近くなる。例えば一実施形態のように四つの水準について五回ずつ動作テストを実行する場合、合計20回程度の動作テストでパラメータは収束する。したがって、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータを自動的に設定することができる。
【0130】
さらに、一実施形態では、第二期初期回転量設定部56は、螺子締めロボット10の初期特性を取得するとき第二期における回転量を最小とした状態で螺子締めロボット10の動作をテストする。すなわち、第二期初期回転量設定部56は、第二期における回転量の初期値を、「1回」に設定する。これにより、ワーク32に対する螺子34のねじ込み量が不明なときでも、初期特性調査処理における第二期の回転量は過剰となることがない。したがって、初期特性の取得の際における過剰な動作によるテストピースおよび螺子締めロボット10の損傷を回避することができる。
【0131】
さらに、一実施形態では、パラメータ自動調整装置40は、第二期における回転量の初期値として「1回」が設定された後、徐々に回転量を増しながらテストピースの組み付けを実行する。これにより、熟練者の経験および勘に頼ったパラメータ調整によらずに、第二期におけるパラメータが調整される。また、各テストピースの組み付けで得られたデータを利用しながらパラメータを設定するため、動作テストの回数すなわち消費するテストピースの数も減少する。したがって、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータを自動的に設定することができる。
【0132】
(その他の実施形態)
以上説明した一実施形態では、螺子締めロボット10の締付けトルクを検出するトルクセンサ27をヘッド部11に着脱可能に設ける例について説明した。しかし、トルクセンサ27は、ワーク32側に取り付け、ワーク32の螺子穴33に取り付けられる螺子34の締付けトルクを検出する構成としてもよい。また、「精度優先モード−簡易」において、九つの水準から四つの水準を選択する例を説明したが、四つ以上の水準を選択してもよい。また、このとき、動作テストの回数として「5回」を例に説明したが、各パラメータの収束が確保されるのであれば「5回」に限るものではない。さらに、第二期初期回転量設定部56が設定する第二期における回転量の初期値は、「1回」に限るものではない。すなわち、第二期における回転量の初期値は、安全性が確保される範囲であれば「2回」以上に設定することもできる。
以上説明した本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能である。
【符号の説明】
【0133】
図面中、10は螺子締めロボット、15は回転駆動機構部(駆動部)、16はビット、27はトルクセンサ(実測締付けトルク取得手段)、33は螺子穴、34は螺子、40はパラメータ自動調整装置、51は第三期回転速度取得部(第三期回転速度取得手段)、52は第四期供給電流取得部(第四期供給電流取得手段)、53はトルク取得部(実測締付けトルク取得手段)、54は回転速度入力部(回転速度入力手段)、55は目標トルク入力部(目標トルク入力手段)、56は第二期初期回転量設定部(第二期初期回転量設定手段)、57は定数決定部(定数決定手段)、58はパラメータ推定部、61はテストパラメータ生成部(テストパラメータ生成手段)、62は締付けトルク推定モデル生成部(締付けトルク推定モデル生成手段)、63は締付けトルク学習部(締付けトルク学習部)を示す。
【技術分野】
【0001】
本発明は、螺子締めロボットのパラメータ自動調整装置およびパラメータ自動調整方法に関する。
【背景技術】
【0002】
従来、対象となるワークに螺子を締付ける螺子締めロボットとして特許文献1が公知である。このような螺子締めロボットは、ワークに対する螺子の締め付けを、噛み合わせの第一期、締め込みの第二期、トルク調整のために締め上げる第三期、および締付けトルクの安定を図る第四期の順で実行する。この場合、螺子締めロボットの正確な作動を確保するためには、第一期から第四期までの各ステップにおいてモータへの供給電流値、螺子の回転速度および螺子の回転数などのパラメータを精密に調整する必要がある。特に、これらのパラメータには、螺子の締付けトルクを目標締付けトルクに正確に合致させ、かつ締付けトルクのばらつきが小さく、さらにパラメータの調整に必要な時間が短いことが要求される。
【0003】
しかしながら、従来の螺子締めロボットにおけるパラメータの設定は、実際に螺子締めロボットでテストピースを組み付けることによって行われている。すなわち、パラメータの設定は、螺子締めロボットを用いたテストピースの組み付けによって得られたデータからユーザの自己の経験および勘に基づいて行われている。この場合、テストピースの消費量は、ユーザの熟練度に左右される。例えば熟練度の高いユーザであればテストピースを用いた数十回程度の動作テストでパラメータの設定を行えるのに対し、熟練度の低いユーザは百回以上の動作テストを行っても目標とするパラメータの近似値が得られない場合もある。一方、すべての現場に熟練度の高いユーザが所在するとは限らないことから、熟練度の高いユーザのみでパラメータの設定を行うのは現実的でない。また、熟練度の低いユーザは、上記の通りテストピースの消費量が増大するにも関わらず、十分な数のテストピースを確保することも現実的でない。
【0004】
ところで、螺子締めロボットに限らず各種のロボットは、各ステップにおけるパラメータの設定に先立って初期特性の取得も必要となる。すなわち、設備に設置されるロボットは、例えば作業の対象となる部材の関係やロボットの個体差などが初期特性として取得される。螺子締めロボットの場合、最初にテストピースを組み付ける際に、対象となる螺子とワークとの関係が初期特性として取得される。このような螺子締めロボットの場合、上述の通り螺子を締付ける工程として、第一期から第四期を含んでいる。ここで、第二期は、第一期でワークと噛み合わされた螺子が螺子穴に締め込まれる工程である。そのため、螺子締めロボットを用いた螺子締め作業では、第二期における回転速度は、作業時間の短縮のために他の第一期、第三期および第四期に比較して高速に設定されている。一方、テストピースを最初に組み付けるとき、螺子とワークとの関係を示すパラメータ、すなわちワークに対する螺子のねじ込み量は不明である。そのため、初期特性を取得する際に、不用意に螺子締めロボットを作動させると、第二期において高速でねじ込まれる螺子がワークに衝突し、螺子やワークだけでなく螺子締めロボットの損傷を招くという問題がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第3811999号明細書
【発明の概要】
【発明が解決しようとする課題】
【0006】
そこで、本発明の目的は、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータが自動的に設定されるとともに、初期特性の取得の際における過剰な動作による損傷を回避する螺子締めロボットのパラメータ自動調整装置およびパラメータ自動調整方法を提供することにある。
【課題を解決するための手段】
【0007】
請求項1記載の発明または請求項3記載の発明では、螺子締めロボットにおいて最初にテストピースを組み付けて螺子締めロボットの初期特性を取得するとき、第二期における初期回転量は任意に設定している。上述の通り、初期特性の取得のために螺子締めロボットを最初に作動させてテストピースを組み付けるとき、ワークに対し螺子をねじ込む量は不明である。そのため、第二期における回転量すなわちねじ込み量はどの程度に設定するのがよいかは不明である。一方、第二期における回転速度は、他の期に比較して高速である。そのため、第二期における回転量が大きすぎると、ねじ込まれた螺子は最終的に大きな衝撃をともなってワークに着座する。その結果、ワークや螺子だけでなく、螺子締めロボットの損傷も招くおそれがある。そこで、請求項1記載の発明または請求項3記載の発明では、第二期における回転量を任意に設定した状態で螺子締めロボットの動作をテストする。特に、請求項2記載の発明では、第二期における回転量の初期値は、「1回」に設定される。ここで、第二期における回転量の初期値を「0回」とすると、第一期から第三期へ直接移行することとなり、第二期が消失したことと同義になる。そのため、第二期のない螺子締めロボットの特性は、実際に用いる螺子締めロボットの特性と異なることとなり、パラメータ調整の困難を招くことになる。そこで、請求項2記載の発明では、第二期における回転量の初期値を「1回」に設定し、初期特性の取得を行っている。したがって、初期特性の取得の際における過剰な動作による損傷を回避することができる。
【0008】
また、請求項1から3のいずれか記載の発明では、初期特性を取得する際に第二期における回転量の初期値を設定した後、この初期値を用いてテストピースを組み付けて第二期における回転量を設定するためのパラメータを推定する。つまり、第二期における回転量の初期値として例えば「1回」が設定された後、徐々に回転量を増しながらテストピースの組み付けを実行する。これにより、熟練者の経験および勘に頼ったパラメータ調整によらずに、第二期におけるパラメータが調整される。また、各テストピースの組み付けで得られたデータを利用しながらパラメータを設定するため、動作テストの回数すなわち消費するテストピースの数も減少する。したがって、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータを自動的に設定することができる。
【図面の簡単な説明】
【0009】
【図1】一実施形態による螺子締めロボットのパラメータ自動調整装置を示すブロック図
【図2】螺子締めロボットの例を示す模式図
【図3】図3に示す螺子締めロボットの要部を拡大した部分断面図
【図4】螺子締めロボットの作動の流れを示す概略図
【図5】一実施形態によるパラメータ自動調整装置に入力される初期データを示す概略図
【図6】一実施形態によるパラメータ自動調整装置が螺子締めロボットから取得するデータを示す概略図
【図7】一実施形態によるパラメータ自動調整装置が内部処理によって生成するデータを示す概略図
【図8】第三期における電流の変化を示す模式図
【図9】一実施形態によるパラメータ自動調整装置が出力するデータを示す概略図
【図10】一実施形態によるパラメータ自動調整装置における初期特性調査処理の流れを示す概略図
【図11】第二期における回転量と第三期における安定回転量との関係を示す概略図
【図12】第二期における回転量と第三期における安定回転量との関係を線形回帰した結果を示す模式図
【図13】第二期における回転量と第三期における安定回転量との関係をロバスト線形回帰によって求める手順を説明するための説明図
【図14】一実施形態によるパラメータ自動調整装置において第四期電流値−第三期速度をケース1によってテストする例を示す概略図
【図15】一実施形態によるパラメータ自動調整装置において第四期電流値−第三期速度をケース2によってテストする例を示す概略図
【図16】一実施形態によるパラメータ自動調整装置において第四期電流値−第三期速度をケース3によってテストする例を示す概略図
【図17】一実施形態によるパラメータ自動調整装置におけるパラメータ調整処理の流れを示す概略図
【図18】第二期における回転量と第三期における安定回転量と第二期における回転量との関係を示す概略図
【図19】第三期における回転速度と締付け時間との関係を示す概略図
【図20】第三期における電流値、第三期における着座電流値および第四期における判定電流値を算出するための係数を示す概略図
【図21】一実施形態によるパラメータ自動調整装置で算出された4期電流値の最適パラメータの表示例を示す模式図
【図22】一実施形態によるパラメータ自動調整装置で算出された2期回転量の最適パラメータの表示例を示す模式図
【発明を実施するための形態】
【0010】
以下、螺子締めロボットのパラメータ自動調整装置の一実施形態を図面に基づいて説明する。
(螺子締めロボット)
まず、パラメータ自動調節装置がパラメータを設定する対象となる螺子締めロボットについて説明する。
図2に示すように螺子締めロボット10は、ヘッド部11、ステー12およびコネクタボックス13を備えている。ヘッド部11は、図2および図3に示すように直線駆動機構部14、回転駆動機構部15およびビット16を有している。直線駆動機構部14は、ステー12に対してヘッド部11を直線状に往復駆動する。図2に示す場合、直線駆動機構部14は、図2の上下方向へヘッド部11を駆動する。直線駆動機構部14は、例えば図3に示すように動力源となるモータ17、ラック18およびピニオン19などを有している。これにより、ヘッド部11は、モータ17へ通電することによって、図2の上下方向へ移動する。回転駆動機構部15は、特許請求の範囲の駆動部に相当し、図3に示すようにモータ21およびシャフト22を有している。モータ21は、回転軸23がシャフト22に接続しており、電力を供給することによりシャフト22を回転駆動する。ビット16は、シャフト22のモータ21と反対側の端部に接続され、シャフト22によって回転駆動される。また、ヘッド部11は、吸着パイプ24を有している。吸着パイプ24は、ビット16の外周側を覆っており、ビット16側の先端が開口している。吸着パイプ24は、開口している先端と反対側がパイプ25を経由して吸引部26に接続している。吸引部26は、パイプ25を経由して吸着パイプ24の内側を減圧する。これにより、螺子締めの対象となる図示しない螺子は、吸着パイプ24の先端に吸引されるとともに、ビット16に装着される。
【0011】
図3の破線で示すように、モータ21の回転軸23にはトルクセンサ27が装着可能である。トルクセンサ27は、モータ21の回転軸23に着脱可能に装着される。トルクセンサ27は、後述するパラメータ自動調節装置でパラメータを設定する際にヘッド部11に装着され、パラメータの設定が完了するとヘッド部11から取り外される。このトルクセンサ27は、特許請求の範囲の実測締付けトルク取得手段に相当する。ヘッド部11のモータ21や吸引部26などは、カバー28に覆われている。
【0012】
次に、上記の構成の螺子締めロボット10の作動について説明する。
螺子締めロボット10は、図1に示すようにベース31に載置されたワーク32の螺子穴33に螺子34を締め込む。このとき、螺子締めロボット10は、図4に示すように第一期、第二期、第三期および第四期の手順で螺子34をワーク32に締め込む。
螺子締めロボット10は、第一期において、螺子34を螺子穴33に噛み合わせる。すなわち、螺子締めロボット10は、吸引部26の減圧によってビット16の先端に装着した螺子34を、ワーク32の螺子穴33の軸線と一致させる。そして、螺子締めロボット10は、ビット16に装着した螺子34を回転させることにより、螺子34と螺子穴33とを噛み合わせる。このとき、ビット16の回転速度は、第二期よりも低速であり、第三期よりも高速である中速に設定される。これにより、螺子34と螺子穴33との確実な噛み合いが達成される。また、螺子34をワーク32に押さえつける力は、他の第二期から第四期に比較して小さく設定されている。これにより、螺子34の傾きおよび無用な噛み込みにともなう螺子34の固着が回避される。
【0013】
第一期が終了すると、螺子締めロボット10は、第一期で螺子穴33に噛み合わされた螺子34を螺子穴33にねじ込む第二期へ移行する。螺子締めロボット10は、他の第一期および第三期よりも高速でビット16を回転させ、第一期で螺子穴33に噛み合わされた螺子34を螺子穴33にねじ込む。これにより、螺子34は、螺子穴33に対し高速にねじ込まれ、ねじ込みの所要時間が短縮される。また、螺子34をワーク32に押さえつける力は、第一期よりも強く、第三期および第四期よりも小さく設定されている。これにより、螺子34は、安定して螺子穴33にねじ込まれる。
【0014】
第二期が終了すると、螺子締めロボット10は、第二期でねじ込まれた螺子34を締め上げて螺子34に加わるトルクを予め設定された締付けトルクに調整する第三期へ移行する。螺子締めロボット10は、他の第一期および第二期よりも低速でビット16を回転させ、第二期で高速でねじ込まれた螺子34を締め上げる。これにより、螺子穴33にねじ込まれた螺子34は、予め設定された締付けトルクに高い精度で調整される。また、螺子34をワーク32に押さえつける力は、第一期および第二期よりも大きく設定されている。これにより、螺子34は、螺子頭のつぶれが回避される。
第三期が終了すると、螺子締めロボット10は、第三期で締付けトルクが調整された螺子34の締め込みを停止して螺子34に加わる締付けトルクを安定させる第四期へ移行する。螺子締めロボット10は、ビット16の回転を停止させ、ワーク32に対する螺子34のねじ込みを停止させる。また、螺子34をワーク32に押さえつける力は、第三期と同様に強く設定されている。これにより、第三期と同様に螺子34は、螺子頭のつぶれが回避される。
【0015】
以上のように、螺子締めロボット10は、第一期から第四期までを順に実行することにより、螺子34をワーク32の螺子穴33に締め込む。この螺子締めロボット10の作動は、図1に示すように螺子締めロボット10に接続するコントローラ36からの指示により、一連の流れとして実行される。パラメータ自動調整装置でパラメータを調整する場合、螺子締めロボット10は、螺子34およびワーク32からなるテストピースを組み付ける。このテストピースは、螺子締めロボット10で実際に組み付ける螺子34およびワーク32と同一の部材である。
【0016】
(パラメータ自動調整装置)
次に、上記の構成による螺子締めロボットの制御パラメータを自動で調節するパラメータ自動調整装置について説明する。
図1に示すようにパラメータ自動調整装置40は、螺子締めロボット10のコントローラ36と通信可能に接続されている。パラメータ自動調整装置40は、例えば図示しないCPU、RAMおよびROMからなる制御部41を有するパーソナルコンピュータにおいて、パラメータ自動調整プログラムを実行することによりソフトウェア的に実現されている。パラメータ自動調整装置40を構成するパーソナルコンピュータは、マウスやキーボードなどの入力部42、ディスプレイやプリンタなどの出力部43、HDDやEEPROMなどの記憶部44およびコントローラとの通信を実行する通信インターフェイス45などを有している。
【0017】
パラメータ自動調整装置40は、制御部41においてパラメータ自動調整プログラムを実行することにより、螺子締めロボット10から取得した各種のデータなどに基づいてパラメータの自動調整を実行する。具体的には、パラメータ自動調整装置40は、螺子締めロボット10のコントローラ36から各種のデータを取得する第三期回転速度取得部51、第四期供給電流取得部52および実測締付けトルク取得部53を有している。また、パラメータ自動調整装置40は、ユーザが設定するデータの入力を受け付ける回転速度入力部54、目標トルク入力部55および第二期初期回転量設定部56を有している。さらに、パラメータ自動調整装置40は、定数決定部57およびパラメータ推定部58を有している。第三期回転速度取得部51は、螺子締めロボット10の第三期におけるビット16の回転数すなわちモータ21の回転数をコントローラ36から取得する。モータ21の回転数は、例えばモータ21へ供給する電流やモータ21へ印加する電圧、またはモータ21やビット16の回転数を直接検出する機器を用いて取得される。第四期供給電流取得部52は、螺子締めロボット10の第四期におけるモータ21への供給電流をコントローラ36から取得する。実測締付けトルク取得部53は、トルクセンサ27と協働して構成され、トルクセンサ27で検出した締付けトルクの実測値をコントローラ36から取得する。回転速度入力部54、目標トルク入力部55および第二期初期回転量設定部56は、出力部43の表示画面を利用して入力部42を経由して入力されるユーザからのデータ入力を受け付ける。定数決定部57およびパラメータ推定部58は、パラメータ自動調整プログラムを実行することによりパラメータ自動調整装置40においてソフトウェア的に実現されている。パラメータ推定部58は、テストパラメータ生成部61、締付けトルク推定モデル生成部62および締付けトルク学習部63を構成している。
【0018】
第三期回転速度取得部51は、第三期において螺子34をワーク32に締め込む回転速度ω3を取得する。具体的には、第三期回転速度取得部51は、例えばモータ21に供給される電流、モータ21に印加される電圧、あるいは回転数センサ71で直接検出した回転数などから、第三期において螺子34をワーク32に締め込む回転速度ω3を取得する。第四期供給電流取得部52は、第四期において回転駆動機構部15のモータ21に供給する電流τ4を取得する。実測締付けトルク取得部53は、上述のトルクセンサ27から螺子34をワーク32の螺子穴33にねじ込む際に螺子34に加わるトルク、すなわちシャフト22を経由してビット16に接続するモータ21の回転軸23に加わるトルクを取得する。
【0019】
回転速度入力部54は、第三期において螺子34を締め込む回転速度として任意の高信頼回転速度ω3c1、中信頼回転速度ω3c2および低信頼回転速度ω3c3の入力を受け付ける。これら高信頼回転速度ω3c1、中信頼回転速度ω3c2および低信頼回転速度ω3c3は、いずれもユーザが設定可能な任意の値である。目標トルク入力部55は、第三期における締付けトルクの目標値である目標締付けトルクτgの入力を受け付ける。この目標締付けトルクτgも、第三期において螺子締めロボット10に期待するユーザの任意の締付けトルクの目標値である。定数決定部57は、この目標締付けトルクτgに、予め設定された任意の誤差範囲を含めた定数Cτを算出する。第二期初期回転量設定部56は、螺子締めロボット10において最初にテストピースを組み付けてこの螺子締めロボット10の初期特性を取得するとき、第二期における初期回転量を「1回」に設定する。パラメータ推定部58は、上記で取得した各種のデータおよびユーザからの入力によって設定された各種の値に基づいて、螺子締めロボット10を調整するパラメータを推定する。テストパラメータ生成部61は、テストピースを組み付けるごとに、螺子34の締付けトルクに関係するテストパラメータを生成する。記憶部44は、テストピースを組み付けるごとに、テストパラメータ生成部61で生成したテストパラメータ、および実測締付けトルク取得部53で取得したトルク実測値τfを関連づけた履歴を記憶する。締付けトルク推定モデル生成部62は、螺子締めロボット10の螺子締めパラメータに基づいて締付けトルクを推定した締付けトルク推定モデルを生成する。締付けトルク学習部63は、記憶部44に記憶されたテストパラメータおよびトルク実測値τfの履歴を用いて、締付けトルク推定モデル生成部62で生成した締付けトルク推定モデルを学習して学習後締付けトルク推定モデルを生成する。パラメータ推定部58は、締付けトルク学習部63で学習した学習後締付けトルク推定モデルを用いて螺子締めロボット10における螺子締めパラメータの最適値を推定する。これらパラメータ推定部58の詳細な処理については後述する。
【0020】
(パラメータ調整処理)
以下、上述の構成によるパラメータ自動調整装置40によるパラメータ調整処理の流れについて詳細に説明する。
<記号および定数の定義>
以下の説明において使用する記号および定数について次のように定義する。
【0021】
【数1】
【0022】
上記で定義した定数は、本実施形態で用いたものであり、螺子締めロボット10の特性や対象となる螺子34およびワーク32の種類などによって任意に変更することができる。また、本件の明細書および特許請求の範囲では、文書内で表示している文字と数式のイメージで表示した文字との間に書体の差があるものの、特に説明しない限り書体の差は同一の文字として扱うものとする。また、以下の説明では、「第一期」を「1期」、「第二期」を「2期」、「第三期」を「3期」および「第四期」を「4期」と簡略化して表記することもあるが、相互に同一の意義として扱うものとする。さらに、各係数Cの右肩に示されている文字は、「べき数」ではなく、各係数を識別するための「文字」である。
【0023】
<初期設定データ>
ユーザは、パラメータ自動調整装置40を用いてパラメータ調整を実行するに際し、図5に示す各種の初期データを入力する。初期データは、パラメータ自動調整装置40を構成するパーソナルコンピュータのディスプレイなどの出力部43に表示された入力画面を利用して、パーソナルコンピュータの入力部42から入力される。図5において、「呼び」とは、例えばM3やM4などの螺子34の規格を意味するものである。「目標締付けトルクτg」とは、「締付けトルクの目標値」に相当する。「調整モード」とは、パラメータ自動調整装置40を利用してパラメータを調整する際に用意されている任意に選択可能なモードである。本実施形態の場合、パラメータ自動調整装置40は、「精度優先モード」、「時間優先モード」および「速度固定モード」を用意している。「精度優先モード」は、調整した締付けトルクが目標値に近似するように第三期の回転速度の精度を優先するモードである。「時間優先モード」は、平均締付け時間が短縮されるように第三期の回転速度を優先するモードである。「速度固定モード」は、第三期の回転速度を固定するモードである。「3期速度候補」とは、第三期における速度候補である。本実施形態の場合、任意の速度候補を三つ設定することができる。この場合、「3期速度候補1」は、上述の調整モードのすべてにおいて設定される。一方、「精度優先モード」の場合、三つの速度候補である「3期速度候補1」、「3期速度候補2」および「3期速度候補3」のすべてを設定する。この場合、「3期速度候補1」は、第一速度候補に相当し、第三期において想定される範囲内で最も期待値の高い、すなわち第三期における回転速度として最も相応しいと思われる任意の値として設定される。一方、「3期速度候補2」は、第二速度候補に相当し、「3期速度候補1」よりも期待値が低いものの安全性が高い任意の値として設定される。同様に「3期速度候補3」は、「3期速度候補2」よりも期待値が低いものの安全性がさらに高い任意の値として設定される。
【0024】
<螺子締めロボットの動作テスト結果>
螺子締めロボット10の動作テストを実行することにより、パラメータ自動調整装置40は、螺子締めロボット10から図6に示すデータを取得する。図6に示す「締付けトルク」は、螺子締めロボット10の動作テストによって得られる螺子34の締付けに加わったトルクである。この「締付けトルク」は、トルクセンサ27から実測締付けトルク取得部53に取得される。なお、「締付けトルク」は、螺子締めロボット10で締付け動作を実行した後、手動で増し締めトルクや緩みトルクを計測して入力してもよい。「制御電流データ」は、ビット16を回転するモータ21の回転軸23の電流波形である。「制御ステップデータ」は、螺子締め動作が現在いずれの「期」にあるかを示すデータである。「締付け時間」は、螺子締めロボット10が動作テストにおいて螺子締めに所要した時間である。
【0025】
<動作テスト結果を処理して得られるデータ>
パラメータ自動調整装置40は、螺子締めロボット10から取得したデータを用いて、図7に示す次のようなデータを内部処理によって生成する。ここで、第三期安定区間は、第三期のうち、螺子34に取り付けられている座金などがワーク32の端面に着座する影響を受けない区間とする。図7に示す「3期安定時間」は、第三期安定区間の所要時間を意味する。また、「3期安定回転量」は、第三期安定区間の回転量を意味する。
【0026】
パラメータ自動調整装置40は、「制御ステップデータ」が第三期である範囲において、「制御電流データ」が最大となる値を、第三期最大電流値「τ3max」として取得する。ここで、パラメータ自動調整装置40は、第三期において、τ3≦τ3max×CStThの区間を第三期安定区間とする。また、パラメータ自動調整装置40は、この第三期安定区間の時間を、上述の通り「3期安定時間ts3」とする。
【0027】
なお、仮に第三期の区間が複数に分かれたときは、最も長い区間を第三期安定区間とする。例えば第二期において螺子34を回転駆動するモータ21は高速で回転するため、多くの電流が供給される。そのため、この第二期における電流が第三期の開始時に維持され、第三期の初期において短い区間が算出される場合がある。上述のように最も長い区間を第三期安定区間とすることにより、この短い区間が以下の処理に与える影響は排除される。
【0028】
また、生じるおそれは小さいものの、係数CStThが小さいとき、ねじ込み中の負荷による電流の変化にともない第三期安定区間が分かれてしまうおそれがある。これは、次のような手順によって検出することができる。すなわち、通常であれば、第三期の所要時間t3と第三期における安定区間の時間つまり3期安定時間ts3とが大きく異なることはない。そこで、ts3/t3<Cxとして、第三期安定区間の分割を検出することができる。この場合、パラメータ自動調整装置40は、例えばCStTh=CStTh+(1−CStTh)/2として更新し、螺子締めロボット10の動作テストをやり直したり、CStThが低い旨を通知して調整を「NG」として終了してもよい。
【0029】
パラメータ自動調整装置40は、次の式によって「3期安定回転量Rs3」を算出する。
3期安定回転量Rs3=3期安定時間ts3×3期回転速度ω3/モータ速度係数Cms
ここで、係数は、図8に基づいて以下のように設定する。図8は、第三期における電流τ3の変化を示す模式図である。
【0030】
・3期安定区間算出係数[−]:CStTh=0.33
このCStThの値は、螺子締めロボット10によるねじ込み動作中に当然に生じる自然な負荷の変化、すなわち図8におけるリップル状の変化を検出することなく、かつ螺子34に取り付けられた座金などの影響による電流の上昇を排除できる値である。本実施形態では、経験的に、CStTh=0.33としている。
【0031】
・モータ速度係数[ms]:Cms=1200
このモータ速度係数Cmsは、モータ21の回転速度が1(%)のとき、モータ21が1回転に要する時間(ms)に相当する。そのため、モータ速度係数Cmsは、モータ21の種類または形式などが決定すれば、自動的に決定される値である。本実施形態では、上述の通りCms=1200としている。
【0032】
<パラメータ自動調整装置が螺子締めロボットに出力するパラメータ>
パラメータ自動調整装置40は、螺子締めロボット10に対し、図9に示す次のようなデータを出力する。具体的には、パラメータ自動調整装置40は、「第二期における回転量」、「第三期における螺子締めトルクの制限値」、「第三期における着座判定トルク」、「第三期における螺子締め速度」、「第四期における螺子締めトルク制限値」、および「第四期における螺子締めトルク判定値」を出力する。これらのパラメータは、公知の螺子締めロボット10において出力されるパラメータと相違がない。
【0033】
<テスト履歴データ>
パラメータ自動調整装置40は、螺子締めロボット10において動作テストを実行するごとに、取得したデータおよび出力したデータを履歴として記憶部44に蓄積する。
【0034】
<初期特性調査処理の流れ>
パラメータ自動調整装置40は、上記の初期設定データの入力が行われると、初期特性調査処理へ移行する。図10に基づいて初期特性調査処理について説明する。初期特性調査処理は、螺子締めロボット10において最初にテストピースを組み付けて螺子締めロボット10の初期特性を取得する処理である。ここで、テストピースとは、上述のように螺子締めロボット10を実際に適用して組み立てる対象となる螺子34とワーク32とからなる試験用の部材である。
【0035】
パラメータ自動調整装置40は、初期特性調査処理において、より安全性の高いパラメータを用いて螺子締めロボット10を動作させ、螺子締めロボット10の初期特性を調査する。すなわち、パラメータ自動調整装置40を用いたパラメータ調整の開始直後、つまり螺子締めロボット10を最初に作動させてテストピースを組み付けるとき、ワーク32に対し螺子34をねじ込む量は不明である。そのため、第二期における回転量はどの程度に設定するのがよいのかは不明である。ここで、第二期における回転速度は図4に示す通り他の期に比較して高速である。そのため、第二期における回転量が大きすぎると、ねじ込まれた螺子34は最終的に大きな衝撃をともなってワーク32に着座する。その結果、ワーク32や螺子34だけでなく、螺子締めロボット10の損傷を招くおそれがある。そこで、パラメータ自動調整装置40は、初期特性処理において、まず回転量特性テストを実行し、段階的に第二期における回転量を増加させる。そして、パラメータ自動調整装置40は、第二期における回転量を概略的に設定した後、第二期における電流および速度と締付けトルクとの関係を調査する。
【0036】
初期特性調査処理に移行すると、パラメータ自動調整装置40は、「回転量特性テスト1」を実行し、この「回転量特性テスト1」におけるパラメータを取得する(S101)。そして、パラメータ自動調整装置40は、螺子締めロボット10の動作をテストし(S102)、「回転量特性テスト1」が完了したか否かを判断する(S103)。
【0037】
「回転量特性テスト1」では、パラメータ自動調整装置40は、第二期における回転量を最小とした状態で螺子締めロボット10の動作をテストする。すなわち、「回転量特性テスト1」のとき、第二期初期回転量設定部56は、第二期おける回転量の初期値を「1回」に設定する。なお、第二期における回転量の初期値を「0回」とすると、第一期から第三期へ直接移行し、第二期が消失したことと同義となる。そのため、第二期のない螺子締めロボット10の特性は実際に用いる螺子締めロボット10の特性と異なることとなり、パラメータの調整が困難になる。そこで、第二期初期回転量設定部56は、第二期における回転量の初期値を「1回」に設定している。また、「回転量特性テスト1」のとき、パラメータ自動調整装置40は、第三期における回転速度として図5に示す「3期速度候補1」を用いるとともに、第四期における電流値は予め設定されているデフォルト値を用いる。なお、本実施形態では、螺子締めロボット10の第二期における回転量が「1回未満」となるような特殊な螺子については想定していない。
したがって、テストパラメータ生成部61は、「回転量テスト1」におけるテストパラメータを次の通り設定する。
【0038】
【数2】
【0039】
パラメータ自動調整装置40は、S101において「回転量特性テスト1」を実行することにより、得られた「3期安定回転量の平均値」の精度が十分高くなると、「回転量特性テスト1」を終了する。ここで、精度を確保するための基準として、一般に平均値の点推定を行い、推定された区間が予め設定された閾値以下であるとき、精度が確保されたとする手法がある。しかし、第三期における安定的な回転量の平均値すなわち「3期安定回転量の平均値」は、その分散がワーク32や螺子34を変更してもほとんど変化しない。そこで、推定された区間は、実質的にテストの回数によって決定される。そのため、本実施形態の場合、パラメータ自動調整装置40は、S102においてテスト回数が「3回」つまり「回転量特性テスト1」によるテストピースの組み立てを「3回」実行すると、「回転量特性テスト1」を完了としている。なお、例えば第一期における螺子34とワーク32との噛み合いが達成できない場合のようにテストが「NG」となった場合、テスト回数はカウントしない。
【0040】
パラメータ自動調整装置40は、S102に螺子締めロボット10の動作をテストする場合、まず螺子締めロボット10へ各種パラメータを転送する。この場合、パラメータ自動調整装置40は、転送する段階で設定されているすべてのパラメータを螺子締めロボット10へ転送する。螺子締めロボット10は、パラメータ自動調整装置40から転送された各種パラメータを用いて動作し、ワーク32に対する螺子34のねじ込みを実行する。このとき、パラメータ自動調整装置40は、動作する螺子締めロボット10からモータ21の電流波形およびトルクセンサ27で検出した締付けトルクを取得する。パラメータ自動調整装置40は、取得した電流波形および締付けトルクを記憶部44に記憶する。
【0041】
パラメータ自動調整装置40は、S103において「回転量特性テスト1」が完了したと判断すると(S103:Yes)、「回転量特性テスト2」を実行し、この「回転量特性テスト2」におけるパラメータを取得する(S104)。そして、パラメータ自動調整装置40は、螺子締めロボット10の動作をテストし(S105)、「回転量特性テスト2」が完了したか否かを判断する(S106)。パラメータ自動調整装置40は、S103において「回転量特性テスト1」が完了していないと判断すると(S103:No)、S101へリターンし、「回転量特性テスト1」を繰り返し実行する。
【0042】
「回転量特性テスト2」では、パラメータ自動調整装置40は、第二期における回転量を「回転量特性テスト1」よりも大きく設定する。すなわち、「回転量特性テスト1」で第二期における回転量の初期値が「1回」と設定して動作をテストした後、「回転量特性テスト2」では「回転量特性テスト1」で取得したパラメータを利用して第二期における回転量の初期値を「回転量特性テスト1」よりも大きく設定する。「回転量特性テスト2」において設定する第二期の回転量は、次の考え方に基づいて算出される。ここで、上記のように第二期における回転量から第三期における安定回転量への変換係数Cr23として、Cr23=−1.2を設定すると、第二期における回転量と第三期における安定回転量との関係は、次のように算出することができる。
【0043】
【数3】
【0044】
上式より、「3期安定回転量の平均値」とCrm3との中間の値を安全にテストできる第二期における回転量と考えることができる。そこで、第二期における回転量は、
【0045】
【数4】
【0046】
と設定する。
ここで、第三期回転量マージンCrm3について検証する。
第二期における回転量を調整する場合、次の三つの要件を満たすことが必要である。
・条件1:第二期において螺子34がワーク32に着座してはならない。
上述のように第二期における回転速度は高速である。そのため、第二期において螺子34がワーク32に着座すると、ワーク32および螺子34にとどまらず螺子締めロボット10の損傷を招く。一方、螺子34がワーク32に着座する限界値を算出するには、第三期における安定回転量すなわち「3期安定回転量:Rs3」のばらつきを考慮する必要がある。ワーク32に螺子34をねじ込む場合、第一期における噛み合いによって少なくとも1回転の誤差が生じる。そのため、ワーク32または螺子34のいずれか一方で0.5回転が誤差の最小値となる。さらに、この回転の誤差に螺子締めロボット10の特性のばらつきが加算される。本実施形態の場合、実験的な値として螺子締めロボット10の特性のばらつきによる誤差は0.7回転に設定している。
【0047】
・条件2:第三期の安定回転量を確保する。
第二期における回転の勢いが残存したまま第三期を経て第四期に移行すると、締付けトルクのばらつきは大きくなる。そのため、第三期における安定回転量すなわち「3期安定回転量」は一定以上の量を確保することが望ましい。実験的に第三期における安定回転量が0.5回転確保されると、締付けトルクのばらつきが低減される。そこで、本実施形態では、第三期における安定回転量として0.5回転を確保している。
・条件3:条件1および条件2を満たしつつ第二期における回転量を増す。
【0048】
螺子締めロボット10における第一期から第四期までを通した螺子締めの所要時間は、できる限り短縮することが望ましい。したがって、第二期における回転量は、大きいほど好ましい。
以上の条件1から条件3から、本実施形態では、第三期における安定回転量のマージンである「3期安定回転量マージン」は、
Crm3=0.5+0.7+0.5=1.7
に設定する。
【0049】
次に、第二期における回転量から第三期における安定回転量への変換係数Cr23について検証する。
定性的に、第二期における回転量R2が増加すると、第三期における安定回転量Rs3は、回転量R2の増加分だけ減少する。すなわち、Cr23=−1となるのが妥当である。しかしながら、実際には、例えば螺子34とワーク32との間の滑りや螺子締めロボット10のヒステリシスなどに起因して、Cr23=−1とはならない。すなわち、実験的にデータを収集すると、図11に示すように変換係数Cr23は、「−1」からずれた値となる。ここで、この変換係数Cr23を検証するために、第二期における回転量R2に対する第三期における安定回転量Rs3の関係を求め、図12に示している。図12に示すようにこれらの関係をロバスト(Robust)線形回帰、および線形(Normal)回帰すると、変換係数Cr23に相当する傾きは、Cr23=−1.18≒−1.2となっている。そこで、本実施形態では、この傾向を考慮して、Cr23=−1.2と設定する。
以上の理由から、テストパラメータ生成部61は、「回転量テスト2」におけるテストパラメータを次の通り設定する。
【0050】
【数5】
【0051】
パラメータ自動調整装置40は、「回転量特性テスト1」と同様に、S104およびS105において「回転量特性テスト2」を3回実行する。そして、パラメータ自動調整装置40は、S106において「回転量特性テスト2」が完了したと判断すると(S106:Yes)、電流−速度特性のテストパラメータの生成へ移行する(S107)。そして、パラメータ自動調整装置40は、螺子締めロボット10の動作をテストし(S108)、電流−速度特性のテストパラメータの生成が完了したか否かを判断する(S109)。パラメータ自動調整装置40は、S106において「回転量特性テスト2」が完了してないと判断すると(S106:No)、S104へリターンし、「回転量特性テスト2」を繰り返し実行する。また、パラメータ自動調整装置40は、S109において電流−速度特性のテストパラメータの生成が完了したと判断すると(S109:Yes)、初期特性調査処理を完了する。一方、パラメータ自動調整装置40は、S109において電流−速度特性のテストパラメータの生成が完了していないと判断すると(S109:No)、S107へリターンし、テストパラメータの生成処理を繰り返す。
【0052】
電流−速度特性のテスト(以下、「電流−速度テスト」とする。)について詳細に説明する。パラメータ自動調整装置40は、電流−速度テストにおいて、電流および回転速度と締付けトルクとの関係を、予め初期的に設定されたデフォルトパラメータの付近で微少に変更しながら調査する。この調査は、後続するパラメータの調整処理において回帰分析がランク落ちになるのを防止する目的がある。この目的に従えば、回帰分析のパラメータが3個であることから、最低3点において関係を取得すれば足りる。本実施形態では、いわゆるロバスト性を高めるために、4点において関係を取得する。
【0053】
電流−速度テストにおけるテストパラメータは、以下に示す第二期における回転量R2、および第四期電流値−第三期速度を用いる。
【0054】
【数6】
【0055】
第二期における回転量は、上述のS101における「回転量特性テスト1」およびS104における「回転量特性テスト2」の各結果、ならびにS107における電流−速度テストの各結果から、下記の式1に示す第三期安定回転量のモデルRs3を学習し、Rs3=Crm3となるようにR2を決定する。
【0056】
具体的には、第二期における回転量は、「回転量特性テスト1」および「回転量特性テスト2」の結果に基づいて、式1からaI、bIを求める。つまり、「回転量特性テスト1」および「回転量特性テスト2」において固定値とした係数は、図13に示すようにロバスト線形回帰によって求められる。そして、第三期安定回転量Rs3とCrm3とが等しくなるようにR2を設定する。具体的には、下記の式2とする。
【0057】
【数7】
【0058】
第四期電流値−第三期速度は、予め初期的に設定されたデフォルトパラメータ付近で微少に変更しながらテストを行う。但し、先に実行した「回転量特性テスト1」および「回転量特性テスト2」においてデフォルトパラメータを用いて試験した結果が得られている。そのため、既に「回転量特性テスト1」および「回転量特性テスト2」で得られた試験結果を参考にして次の三つのケースに分類する。
【0059】
●ケース1:「回転量特性テスト1」および「回転量特性テスト2」における締付けトルクのすべてが目標締付けトルクよりも小さい場合
●ケース2:「回転量特性テスト1」および「回転量特性テスト2」における締付けトルクのすべてが目標締付けトルクよりも大きい場合
●ケース3:ケース1およびケース2のいずれにも該当しない場合
【0060】
ケース1の場合、第四期における電流値は、デフォルトパラメータにおいて、締付けトルクが不十分であることが明らかになっている。そのため、パラメータ自動調整装置40は、デフォルトパラメータを1.0〜1.2倍した範囲で電流−速度テストを実行する。
【0061】
また、ケース2の場合、第四期における電流値は、デフォルトパラメータにおいて、締付けトルクが過剰であることが明らかになっている。そのため、パラメータ自動調整装置40は、デフォルトパラメータを0.85〜1.0倍した範囲で電流−速度テストを実行する。
さらに、ケース3の場合、第四期における電流値は、デフォルトパラメータにおいて、締付けトルクが不足する場合および過剰な場合が混在している。そのため、パラメータ自動調整装置40は、デフォルトパラメータを0.85〜1.15倍した範囲で電流−速度テストを実行する。
【0062】
一方、パラメータ自動調整装置40は、第三期における回転速度について、最も信頼度が高いと思われるω3=ω3c1を中心として、微少に回転速度を変更する。ここで、精度優先モードが選択されている場合、第三期における回転速度ω3として三種類の候補が設定されている。この場合、パラメータ自動調整装置40は、すべての候補を用いて電流−速度テストを実行する。これにより、ケース1の場合、パラメータ自動調整装置40は、図14に示すように上述のパラメータ条件を用いて4回のテスト、すなわちS108における螺子締めロボット10の動作テストを実行する。同様に、パラメータ自動調整装置40は、ケース2の場合、図15に示すように上述のパラメータ条件を用いて4回のテストを実行し、ケース3の場合、図16に示すように上述のパラメータ条件を用いて4回のテストを実行する。
パラメータ自動調整装置40は、S109において、S108における螺子締めロボット10の動作テストが4回実行されたと判断すると、電流−速度特性テストが完了したと判断する。
【0063】
<パラメータ調整処理>
上述の初期特性調査処理が完了すると、パラメータ自動調整装置40は、パラメータ調整処理へ移行する。図17に基づいてパラメータ調整処理について説明する。パラメータ自動調整装置40は、図10に示す上述の初期特性調査処理を完了すると、初期特性調査処理で取得した各種のパラメータおよび既に入力された初期設定データを利用してパラメータ調整処理を実行する。
【0064】
テストパラメータ生成部61は、パラメータ調整処理へ移行すると、第二期におけるテストパラメータを生成する(S201)。そして、テストパラメータ生成部61は、第三期における回転速度および第四期における電流値のテストパラメータを生成した後(S202)、第三期における電流値、第三期における螺子34がワーク32に着座したときの着座電流値、および第四期における判定電流値のテストパラメータを生成する(S203)。これらS201からS203においてテストパラメータが生成されると、パラメータ自動調整装置40は、螺子締めロボット10へ生成したパラメータを転送し(S204)、螺子締めロボット10において動作テストを実行する(S205)。そして、パラメータ自動調整装置40は、螺子締めロボット10から電流波形および締付けトルクの実測値を取得する(S206)。本実施形態の場合、パラメータ自動調整装置40は、このS204からS206の螺子締めロボット10における動作テストの処理を5回繰り返して実行する。したがって、パラメータ自動調整装置40は、螺子締めロボット10から電流波形および締付けトルクを取得すると、動作テストの実行回数が「5回」に到達したか否かを判断する(S207)。
【0065】
パラメータ自動調整装置40は、S207において螺子締めロボット10の動作テストが「5回」繰り返して実行されていないと判断すると(S207:No)、S204へリターンし、S204からS206の処理を繰り返す。一方、パラメータ自動調整装置40は、S207において螺子締めロボット10の動作テストが「5回」繰り返して実行されたと判断すると(S207:Yes)、最適パラメータを設定するとともにこの最適パラメータの収束状態を報知する(S208)。そして、パラメータ自動調整装置40は、処理の途中に処理を中断する指示があったか否かを判断し(S209)、処理を中断する指示がなければ(S209:No)、パラメータ調整処理が完了したか否かを判断する(S210)。パラメータ自動調整装置40は、S209において処理を中断する指示があったとき(S209:Yes)およびS210においてパラメータ調整処理が完了したと判断したとき(S210:Yes)、パラメータ調整処理を終了する。一方、パラメータ自動調整装置は、S210においてパラメータ調整処理が完了していないと判断すると(S210:No)、S201へリターンし、処理を繰り返す。
【0066】
以下、このパラメータ調整処理の詳細について説明する。
図17に示すパラメータ調整処理において、第二期における回転量は、すべての調整モードにおいて共通に設定する。
テストパラメータ生成部61は、パラメータ調整処理のS201における第二期における回転量のテストパラメータを、次の手順で算出する。
まず、パラメータ自動調整装置40は、初期特性調査処理を含む過去のすべてのテスト結果に基づいて、第三期における回転量について式3を用いて学習し、係数asおよびbsを算出する。そして、パラメータ自動調整装置40は、第三期における安定回転量すなわち3期安定回転量Rs3がCrm3に等しくなるように式4に基づいて第二期における回転量を設定する。つまり、図18に示すように第二期における回転量R2と第三期における安定回転量Rs3との間には相関が得られる。
【0067】
【数8】
【0068】
テストパラメータ生成部61は、パラメータ調整処理のS202における第三期の回転速度、第四期における電流値のテストパラメータを、次の手順で算出する。ここで、S202において生成する第三期の回転速度および第四期の電流値のテストパラメータは、「精度優先モード−通常」、「精度優先モード−簡易」、「時間優先モード」および「速度固定−簡易モード」のいずれかを任意に選択することができる。以下、これらをモードごとに説明する。
【0069】
●「精度優先モード−通常」のとき
第三期の回転速度ω3および第四期の電流値τ4に対する締付けトルクτfを算出する場合、これらの間には次のようなモデルが成立する。このモデルは、実験的に収集されたデータについて二乗誤差を最小にする観点で作成している。
【0070】
【数9】
【0071】
しかし、このモデルのように係数がa1からa7と多数存在する場合、テストピースを用いた螺子締めロボット10の動作テストを多数回繰り返す必要がある。そこで、係数を低減するために、締付けトルク推定モデル生成部62は、次の式をモデル1として生成する。
【0072】
【数10】
【0073】
ここで、上記の式において「log」の項を含めているのは、第三期における回転速度ω3が小さいとき、非線形に近似されるためである。そのため、第三期における回転速度ω3が比較的大きく、その影響を排除可能であるとき、締付けトルク推定モデル生成部62は、次の式をモデル2として生成してもよい。
【0074】
【数11】
【0075】
ここで、締付けトルク学習部63は、螺子締めロボット10において実行したテストピースを組み立てる動作テストによって取得したデータから、上記の式のいずれかを用いて、係数u、w、vをそれぞれ学習する。この係数u、w、vは、螺子締めロボット10、螺子34およびワーク32の特性を表現している。
【0076】
螺子締めロボット10の動作テストを実行するとき、ワーク32および螺子34からなるテストピースが動作テストごとに消費される。そのため、パラメータ調整処理は、可能な限り少ない動作テスト回数で終了することが望ましい。すなわち、係数u、w、vの推定精度を効率よく向上させるようにテストパラメータを選択する必要がある。そこで、本実施形態では、次のような考え方を導入している。
【0077】
(1)最適パラメータ付近でのみ精度を向上する
最適パラメータを求めるということは、τf=τgとなるτ4およびω3を求めることを意味する。そのため、上記したモデルでは、τg付近においてのみ精度が高ければ十分である。よって、τf=τgが成立する可能性が高い領域では動作テストの回数を増加させることが望ましい。特に上記のモデルは、係数をu、v、wの三つに絞った近似式であるため、広い範囲の特性を求める場合、τgから遠い領域では精度が著しく低下するからである。
【0078】
(2)線形回帰における一般的な最適計画を導入する
線形回帰において係数の精度を高める一般的な方法として、D最適計画が用いられている。
本実施形態の場合、(1)で説明したτf=τgが成立する可能性が高い領域、すなわち信頼区間で制限された範囲に、(2)におけるD最適計画を適用して、テスト水準を決定する。具体的には、パラメータ推定部58は、次の手順でテストパラメータを算出する。
まず、パラメータ推定部58は、係数u、w、vの信頼区間を計算する。この信頼区間の上限値および下限値を用いて、τf=τgが成立する可能性が高いパラメータ範囲を限定していく。この信頼区間は、螺子締めロボット10において動作テストを繰り返して実行するごとに逐次的に絞られていく。具体的な手順は、次の通りである。
【0079】
パラメータ推定部58は、図10に示す初期特性調査処理において取得した第三期における回転速度ω3、および第四期における電流値τ4から、上記のモデル1を用いて係数u、v、wを求める。なお、モデル1に代えてモデル2を用いてもよい。
そして、τg付近での精度を高めるために、線形回帰による予測分布を利用して、信頼区間におけるテストパラメータの範囲を制限する。ここで、螺子締めロボット10の動作回数nを、n=1、2、・・・、Nとして、得られたデータを、
【0080】
【数12】
【0081】
とする。なお、上記の式で文字の右肩に示されている「n」は「べき数」ではなく、上記の動作回数「n」を識別するためのものである。また、係数w(ベクトル)および次のテストパラメータxは、それぞれ、
【0082】
【数13】
【0083】
とする。
このとき、学習済のwは次のように学習できる。「∧」は学習済であることを示している。
【0084】
【数14】
【0085】
このとき事後予測分布は、統計的手法に基づいて次の式から算出される。ここで、「p」は係数の数に相当し、モデル1およびモデル2の場合、「p=3」である。
【0086】
【数15】
【0087】
上記の式により、100(1−α)%の予測応答の信頼区間は次のように示される。
【0088】
【数16】
【0089】
tはt分布であり、自由度はn−p−1である。このうち「n」はデータの数であり、「p」は係数の数である。また、α=0.05と設定することにより、95%の確率で設定した信頼区間に含まれることを意味する。本実施形態では、上述の信頼区間の範囲に、目標締め付けトルクτgが含まれていることを、次のテストパラメータの条件としている。具体的には、次のテストパラメータxは、次の式を満たすように制限している。
【0090】
【数17】
【0091】
以上によって設定した信頼区間において、D最適計画を計算する。具体的には、
【0092】
【数18】
【0093】
を小さくするようなサンプルの取得方法が望ましい。そこで、
【0094】
【数19】
【0095】
を次のテストパラメータとした。ただし、第三期における回転速度ω3は「3期速度候補1」、「3期速度候補2」および「3期速度候補3」に最近傍法を用いて近似させる。
上記の信頼区間の設定については、「パターン認識と機械学習 上−ベイズ理論による統計的予測:C.M.ビショップ 著」を参考にしている。また、D最適計画については、「実験計画法 方法編―基盤的方法から応答曲面法 タグチメソッド 最適計画まで:山田秀 著」を参考にしている。
【0096】
ところで、螺子締めロボット10の特性によっては、第三期における回転速度ω3の影響が小さい場合がある。このように第三期における回転速度ω3の影響が小さい場合、信頼区間による制限はω3軸方向へ拡大し、適切な結果が得られない場合がある。この場合、モデル1およびモデル2から第三期における回転速度ω3を除き、τf=uτ4+vとしてもよい。そして、下記の通り、p=2として変数を減らすことにより、第四期による電流値τ4の計算を簡略化させてもよい。
【0097】
【数20】
【0098】
この場合、第三期における回転速度ω3は、次の三つの水準において動作テストの回数が等しくなるように決定する。
【0099】
【数21】
【0100】
以上において、同一のパラメータで5回を1セットとして螺子締めロボット10における動作テストを実行する。これにより、パラメータごとに標準偏差σが算出される。
【0101】
次に、上記の第三期における回転速度ω3、および第四期における電流値τ4のテストパラメータの生成を完了する条件を説明する。
最適パラメータは、次の式によって算出される。
【0102】
【数22】
【0103】
これを、以下の式に当てはめることにより、信頼区間が計算される。
【0104】
【数23】
【0105】
これにより、以下の式が成立すればパラメータの生成は完了と判断することができる。
【0106】
【数24】
【0107】
なお、信頼区間は、大まかにはテスト回数の平方根に反比例する。そのため、より簡易的には、テスト回数が予め設定したテスト回数に到達すればパラメータの生成は完了としてもよい。一般的には、螺子締めロボット10における30回程度の動作テストがあるように設定することが望ましい。
パラメータの生成が完了すると、S208において最適パラメータを設定する。
【0108】
【数25】
【0109】
パラメータ推定部58は、S204からS206において5回を1セットとして螺子締めロボット10の動作テストを実行し、1セットごとに標準偏差σfを計算する。この結果に基づいて、σf=rω3+sを学習し、係数r、sを求める。
パラメータ推定部58は、第三期における三種類の速度候補のうち、σf=rω3+s<σgを満たす中でもっとも速度の速い速度候補を選択する。パラメータ推定部58は、いずれの速度候補もこの条件を満たさない場合は、安全性を考慮して最も遅い速度候補を選択する。この場合、パラメータ自動調整装置40は、ディスプレイなどの出力部43にすべての速度候補で目標精度を出せなかった旨を報知する.
【0110】
●「精度優先モード−簡易」のとき
上述の「精度優先モード−通常」は、複雑な計算を実行するため、パラメータの自動調整を実行する所要時間が長くなる。そこで、以下の手順により、精度を優先しつつ簡易的なパラメータの自動調整を行うこともできる。すなわち、信頼区間は、上述の通り動作テストの回数の平方根に反比例すると考えられる。そのため、数十回の動作テストを行う場合、初期を除くと信頼区間が大きく変化することはない。そこで、信頼区間を以下に示す固定値とすることにより、簡易的な計算が可能となる。また、D最適計画についても、多くの場合、一般的に信頼区間の端同士が選択される傾向にある。そのため、信頼区間の端点を順に選択することにより、簡易的な計算が可能となる。
【0111】
【数26】
【0112】
上記に示す定数「Cτ」は、信頼区間の計算値から大きく外れない値とすることが好ましい。この定数「Cτ」は、定数決定部57において算出される。すなわち、定数決定部57は、目標トルク入力部55から入力された目標締付けトルクτgに、予め設定された任意の誤差範囲を含め、下記の式に基づいて定数「Cτ」を設定する。
【0113】
【数27】
【0114】
このように、簡易に計算を行う場合も、既に取得した第四期における電流値τ4を用いてτf=uτ4+vを学習し、係数u、vを算出する。ここで、水準は、上記した9つの水準から動作テストの回数が等しくなるように水準1から順に少なくとも四つを選択する。そして、同一のパラメータについて、S204からS206において5回を1セットとして動作テストを実行する。パラメータ生成の完了条件、および最適パラメータの設定は、上記の「精度優先モード−通常」の場合と同様である。
【0115】
●「時間優先モード」のとき
時間優先モードで計算を行う場合、既に取得した第三期における回転速度ω3を用いて、tf=g/ω3+hを学習し、係数g、hを算出する。目標締付け時間をtgとすると、第三期における回転速度ω3は、下記で示される。
【0116】
【数28】
【0117】
この場合、第四期における電流値τ4は、電流値候補として任意の水準1から水準3として設定することができる。また、「時間優先モード」の場合、標準偏差σの計算が不要であるため、同一のパラメータごとに1回の動作テストを実行する。第三期における回転速度と第三期における締付け時間との間には、図19に示すような関係が成立する。
パラメータ生成の完了条件は、上記の「精度優先モード−通常」の場合と同様である。
一方、最適パラメータは、次のように設定される。
【0118】
【数29】
【0119】
●「速度固定モード−簡易」のとき
「速度固定モード−簡易」は、「精度優先モード−簡易」をさらに簡略化した計算によってパラメータを生成する。この場合も、既に取得した第四期における電流値τ4を用いてτf=uτ4+vを学習し、係数u、vを算出する。そして、標準偏差σの計算が不要であるため、以下の三つの水準について、同一のパラメータでS204からS206において1回の動作テストを実行する。第三期における回転速度は、固定であるため、ω3=ω3c1である。パラメータの生成の完了条件は、上記の「精度優先モード−簡易」の場合と同様である。
一方、最適パラメータは、次のように設定される。
【0120】
【数30】
【0121】
パラメータ自動調整装置40は、パラメータ調整処理のS203における第三期の電流値、第三期の着座電流値および第四期の判定電流値のテストパラメータを、次の手順で算出する。
なお、第四期電流値については、モータ21の特性によって決定される。具体的には、自動調整処理の初期などのように螺子締めロボット10の動作回数が少ないとき、パラメータ推定部58は、第四期電流値を線形変換によって算出する。この値をデフォルトパラメータと定義する。この値は、以下に示すように目標締付けトルクτgとモータ21の電流との関係を示しており、上述の通りモータ21の特性によって決定される。
【0122】
【数31】
【0123】
第三期における電流値τ3、第三期における着座電流値τh3、および第四期における判定電流値τh4は、上述の第四期における電流値に基づいて線形変換によって算出する。本実施形態の場合、これらの値を算出するための係数Cは、実験的に求め、図20に示すように設定している。ここで、第三期における着座電流値τh3とは、第三期において締め上げられている螺子34の頭部がワーク32の端面に接したときの電流値である。また、第四期における判定電流値τh4とは、第四期において螺子34のねじ込みが停止したと判定したときの電流値である。
【0124】
【数32】
【0125】
以上のような手順によりS201からS203において各種のパラメータが生成され、生成されたパラメータに基づいてS204からS206において螺子締めロボット10の動作テストが実行されると、パラメータ自動調整装置40は、S207において求められた最適パラメータがあるときディスプレイなどの出力部43に表示するとともに、収束状態が不適切であるときその旨をディスプレイなどの出力部43に表示する。これにより、パラメータ調整処理は終了する。
【0126】
ところで、上述の手順にしたがって求められた最適パラメータは、テストピースの組み付け回数が増すごとに、徐々に特定の値に収束していく。そこで、パラメータ自動調整装置40は、テストピースの組み付けによって最適パラメータが更新されるごとに、更新された最適パラメータを図21および図22に示すようにディスプレイなどの出力部43に出力する。この図21および図22に示すグラフは、横軸にテストピースの組み付け回数を設定し、縦軸に各組み付け回数における最適パラメータである。なお、図21および図22において、下側の図は上側の図の縦軸のスケールを拡大したものである。これにより、ユーザは、テストピースの組み付けによる螺子締めロボット10の動作テストの繰り返しともなう最適パラメータの推移を認識することができる。その結果、特に熟練者の場合、この出力部43の表示を確認することにより、パラメータの調整の打ち切りや継続の判断をすることができる。
なお、上述の説明では、特にテストパラメータの範囲について説明していないが、安全性を確保するためにテストパラメータの上限値および下限値は予め設定することが望ましい。
【0127】
以上説明した一実施形態では、パラメータ推定部58は、簡略化したモデルを用いてパラメータを推定している。すなわち、パラメータ推定部58は、簡略化したモデルを用いて、締付けトルクの実測値τfが目標とする締付けトルクτgに近似する第三期の回転速度ω3および第四期の電流τ4を推定している。このとき、求める係数は、三種類であるので、これらの値を収束させるために必要な動作テストの回数、すなわち消費するテストピースの数は、数十個程度と熟練者に近くなる。したがって、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータを自動的に設定することができる。
【0128】
また、一実施形態では、パラメータ推定部58は、簡略化したモデルを用いて第三期および第四期における螺子締めパラメータ、すなわちτf=τgとなる回転速度ω3および電流τ4を推定している。このとき、簡略化したモデルで用いる締付けトルクの実測値τfは、これらのパラメータを設定する際にのみ必要となる。つまり、螺子締めロボット10についてパラメータを設定することにより、螺子締めロボット10は、ラインにおいて動作するとき、トルクセンサ27による締付けトルクの実測値を用いることなく第三期における締付けトルクを調整する。したがって、パラメータを設定した後、ラインにおいて螺子締めロボット10を動作させるとき、ラインに設けられたすべての螺子締めロボット10に高価なトルクセンサ27を設置する必要がない。特に、一実施形態のようにトルクセンサ27を螺子締めロボット10から着脱可能とすることにより、複数の螺子締めロボット10のパラメータを自動調整するとき、、一つのトルクセンサ27があればよい。したがって、高価なトルクセンサ27を数多く用意することなく、複数の螺子締めロボット10のパラメータを自動調整することができる。
【0129】
さらに、一実施形態では、「精度優先モード−簡易」のとき、予め設定する速度候補は三つの固定値となっている。パラメータ推定部58は、三つの速度候補に対応して設定された九つの水準から四つの水準を選択して螺子締めロボット10の動作テストを実行する。そのため、パラメータを収束させるために必要な動作テストの回数、すなわち消費されるテストピースの数は、数十個程度と熟練者に近くなる。例えば一実施形態のように四つの水準について五回ずつ動作テストを実行する場合、合計20回程度の動作テストでパラメータは収束する。したがって、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータを自動的に設定することができる。
【0130】
さらに、一実施形態では、第二期初期回転量設定部56は、螺子締めロボット10の初期特性を取得するとき第二期における回転量を最小とした状態で螺子締めロボット10の動作をテストする。すなわち、第二期初期回転量設定部56は、第二期における回転量の初期値を、「1回」に設定する。これにより、ワーク32に対する螺子34のねじ込み量が不明なときでも、初期特性調査処理における第二期の回転量は過剰となることがない。したがって、初期特性の取得の際における過剰な動作によるテストピースおよび螺子締めロボット10の損傷を回避することができる。
【0131】
さらに、一実施形態では、パラメータ自動調整装置40は、第二期における回転量の初期値として「1回」が設定された後、徐々に回転量を増しながらテストピースの組み付けを実行する。これにより、熟練者の経験および勘に頼ったパラメータ調整によらずに、第二期におけるパラメータが調整される。また、各テストピースの組み付けで得られたデータを利用しながらパラメータを設定するため、動作テストの回数すなわち消費するテストピースの数も減少する。したがって、熟練度に関わらず少ない動作テスト回数で精度の高いパラメータを自動的に設定することができる。
【0132】
(その他の実施形態)
以上説明した一実施形態では、螺子締めロボット10の締付けトルクを検出するトルクセンサ27をヘッド部11に着脱可能に設ける例について説明した。しかし、トルクセンサ27は、ワーク32側に取り付け、ワーク32の螺子穴33に取り付けられる螺子34の締付けトルクを検出する構成としてもよい。また、「精度優先モード−簡易」において、九つの水準から四つの水準を選択する例を説明したが、四つ以上の水準を選択してもよい。また、このとき、動作テストの回数として「5回」を例に説明したが、各パラメータの収束が確保されるのであれば「5回」に限るものではない。さらに、第二期初期回転量設定部56が設定する第二期における回転量の初期値は、「1回」に限るものではない。すなわち、第二期における回転量の初期値は、安全性が確保される範囲であれば「2回」以上に設定することもできる。
以上説明した本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能である。
【符号の説明】
【0133】
図面中、10は螺子締めロボット、15は回転駆動機構部(駆動部)、16はビット、27はトルクセンサ(実測締付けトルク取得手段)、33は螺子穴、34は螺子、40はパラメータ自動調整装置、51は第三期回転速度取得部(第三期回転速度取得手段)、52は第四期供給電流取得部(第四期供給電流取得手段)、53はトルク取得部(実測締付けトルク取得手段)、54は回転速度入力部(回転速度入力手段)、55は目標トルク入力部(目標トルク入力手段)、56は第二期初期回転量設定部(第二期初期回転量設定手段)、57は定数決定部(定数決定手段)、58はパラメータ推定部、61はテストパラメータ生成部(テストパラメータ生成手段)、62は締付けトルク推定モデル生成部(締付けトルク推定モデル生成手段)、63は締付けトルク学習部(締付けトルク学習部)を示す。
【特許請求の範囲】
【請求項1】
螺子に接するビットと、電力により前記ビットを回転駆動する駆動部とを備え、
螺子を螺子穴に噛み合わせる第一期、前記第一期で噛み合わされた前記螺子を前記螺子穴に前記第一期よりも高速でねじ込む第二期、前記第二期でねじ込まれた前記螺子を前記第二期よりも低速で締め上げて前記螺子に加わるトルクを予め設定された締付けトルクに調整する第三期、および前記螺子のねじ込みを停止して前記第三期で前記締付けトルクに調整された前記螺子の安定を図る第四期を含む螺子締めを行う螺子締めロボットにおいて、
前記螺子と前記螺子穴が形成された対象物とからなる複数のテストピースを組み付けて、前記螺子締めロボットの制御パラメータを自動で調整する螺子締めロボットのパラメータ自動調整装置であって、
前記螺子締めロボットにおいて最初に前記テストピースを組み付けて前記螺子締めロボットの初期特性を取得するとき、前記第二期における任意の初期回転量を受け付ける第二期初期回転量設定手段と、
前記第二期初期回転回数設定手段で設定した前記初期回転量を用いて前記テストピースを組み付けて前記第二期における回転量を設定するためのパラメータを推定するパラメータ推定手段と、
を備える螺子締めロボットのパラメータ自動調整装置。
【請求項2】
前記第二期初期回転量設定手段は、前記第二期における初期回転量を一回に設定する請求項1記載の螺子締めロボットのパラメータ自動調整装置。
【請求項3】
螺子に接するビットと、電力により前記ビットを回転駆動する駆動部とを備え、
螺子を螺子穴に噛み合わせる第一期、前記第一期で噛み合わされた前記螺子を前記螺子穴に前記第一期よりも高速でねじ込む第二期、前記第二期でねじ込まれた前記螺子を前記第二期よりも低速で締め上げて前記螺子に加わるトルクを予め設定された締付けトルクに調整する第三期、および前記螺子のねじ込みを停止して前記第三期で前記締付けトルクに調整された前記螺子の安定を図る第四期を含む螺子締めを行う螺子締めロボットにおいて、
前記螺子と前記螺子穴が形成された対象物とからなる複数のテストピースを組み付けて、前記螺子締めロボットの制御パラメータを自動で調整する螺子締めロボットのパラメータ自動調整方法であって、
前記螺子締めロボットにおいて最初に前記テストピースを組み付けるとき、前記第二期における初期回転量を一回に設定して前記螺子締めロボットの初期特性を取得する工程を含む螺子締めロボットのパラメータ自動調整方法。
【請求項1】
螺子に接するビットと、電力により前記ビットを回転駆動する駆動部とを備え、
螺子を螺子穴に噛み合わせる第一期、前記第一期で噛み合わされた前記螺子を前記螺子穴に前記第一期よりも高速でねじ込む第二期、前記第二期でねじ込まれた前記螺子を前記第二期よりも低速で締め上げて前記螺子に加わるトルクを予め設定された締付けトルクに調整する第三期、および前記螺子のねじ込みを停止して前記第三期で前記締付けトルクに調整された前記螺子の安定を図る第四期を含む螺子締めを行う螺子締めロボットにおいて、
前記螺子と前記螺子穴が形成された対象物とからなる複数のテストピースを組み付けて、前記螺子締めロボットの制御パラメータを自動で調整する螺子締めロボットのパラメータ自動調整装置であって、
前記螺子締めロボットにおいて最初に前記テストピースを組み付けて前記螺子締めロボットの初期特性を取得するとき、前記第二期における任意の初期回転量を受け付ける第二期初期回転量設定手段と、
前記第二期初期回転回数設定手段で設定した前記初期回転量を用いて前記テストピースを組み付けて前記第二期における回転量を設定するためのパラメータを推定するパラメータ推定手段と、
を備える螺子締めロボットのパラメータ自動調整装置。
【請求項2】
前記第二期初期回転量設定手段は、前記第二期における初期回転量を一回に設定する請求項1記載の螺子締めロボットのパラメータ自動調整装置。
【請求項3】
螺子に接するビットと、電力により前記ビットを回転駆動する駆動部とを備え、
螺子を螺子穴に噛み合わせる第一期、前記第一期で噛み合わされた前記螺子を前記螺子穴に前記第一期よりも高速でねじ込む第二期、前記第二期でねじ込まれた前記螺子を前記第二期よりも低速で締め上げて前記螺子に加わるトルクを予め設定された締付けトルクに調整する第三期、および前記螺子のねじ込みを停止して前記第三期で前記締付けトルクに調整された前記螺子の安定を図る第四期を含む螺子締めを行う螺子締めロボットにおいて、
前記螺子と前記螺子穴が形成された対象物とからなる複数のテストピースを組み付けて、前記螺子締めロボットの制御パラメータを自動で調整する螺子締めロボットのパラメータ自動調整方法であって、
前記螺子締めロボットにおいて最初に前記テストピースを組み付けるとき、前記第二期における初期回転量を一回に設定して前記螺子締めロボットの初期特性を取得する工程を含む螺子締めロボットのパラメータ自動調整方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【公開番号】特開2012−200809(P2012−200809A)
【公開日】平成24年10月22日(2012.10.22)
【国際特許分類】
【出願番号】特願2011−66074(P2011−66074)
【出願日】平成23年3月24日(2011.3.24)
【出願人】(501428545)株式会社デンソーウェーブ (1,155)
【出願人】(502324066)株式会社デンソーアイティーラボラトリ (332)
【Fターム(参考)】
【公開日】平成24年10月22日(2012.10.22)
【国際特許分類】
【出願日】平成23年3月24日(2011.3.24)
【出願人】(501428545)株式会社デンソーウェーブ (1,155)
【出願人】(502324066)株式会社デンソーアイティーラボラトリ (332)
【Fターム(参考)】
[ Back to top ]