本発明は、モータ駆動によりねじを締め付けるねじ締め装置に関する。
技術背景
ねじ締め装置には、駆動源であるモータと、ねじのリセスと噛み合うビットとがこれらの径方向にオフセットしたタイプがある(例えば、特許文献1参照)。このようなオフセットタイプのねじ締め装置は、例えば、複数のねじ締め装置を相互に隣接するように配置した上でモータ間のピッチよりも狭いピッチで配置された複数のねじの一括締め付けを行う場合に使用される場合が多い。
また、このようなオフセットタイプのねじ締め装置では、一般に、モータ出力は、歯車列を介して、ビットに連結される出力軸に伝達される。
ねじの締め付け時にビットとリセスとの噛み合いが外れないように、出力軸はばね力で押し下げられる。このため、出力軸は、回転と軸方向スライドの2軸動作を同時に行う必要がある。
従来、出力軸の回転とスライドの2軸動作を可能とする構成としては、以下のようなものが一般的である。モータからの駆動力を受ける歯車の中央に穴を形成し、ここに出力軸を通す。該中空歯車の内周には軸方向に延びるキーが設けられ、このキーを出力軸に形成されたキー溝に係合させる。これにより、中空歯車と出力軸はスプライン結合によって一体的に回転可能であるとともに、中空歯車に対して出力軸が軸方向にスライド可能となる。なお、同様の構成を有するねじ締め装置として、特許文献2にて開示されたものがある。
ところで、最近の精密機器等の製品の小型化に伴い、該製品に使用されるねじが微細化し、さらにねじ間のピッチもより狭くなってきている。このような極狭ピッチで配置された微細ねじを締め付けるためには、ビットやこれが連結される出力軸の径も細くしなければならない。
しかしながら、出力軸の径が細くなると、出力軸に前述したキー溝を精度良く形成することが困難になる。仮にキー溝を精度良く形成できたとしても、その幅がきわめて小さくなるため、中空歯車からの十分なトルク伝達を行えなくなる可能性がある。
また、ねじが締め込まれる精密機器等の製品には、静電気に弱い部品を使用するものが多い。このため、ビットで発生した静電気がねじを介して製品に流れ、製品に悪影響を及ぼすのを避ける必要がある。
出力軸は、ねじ締め装置本体に固定された玉軸受けによって回転自在に支持されている。しかしながら、玉軸受けを構成する金属部品間にはグリスが介在しており、導電性は弱い。また、中空歯車と出力軸との間にもこれらの相対スライドをスムーズにするためにグリスが塗布されることが多いため、出力軸から中空歯車への導電性も弱い。このように、従来は、ビットで発生した静電気を効果的に逃がす経路を確保することが難しかった。
なお、ねじ締め装置からの静電気除去を目的とした構成としては、特許文献3に開示されたものがある。特許文献3には、装置本体を構成するベアリングケースやモータブロックに、回転する出力軸の外周が摺動可能な導電ブラシを取り付けた構成が開示されている。しかし、特許文献3に開示されたねじ締め装置では、装置本体に取り付けられた導電ブラシが、装置本体に対して軸方向に移動しない出力軸の外周に接触する。このため、この構成を出力軸が軸方向に移動するねじ締め装置においてそのまま適用した場合に、導電ブラシが軸方向に変形する等の不都合が生じる可能性がある。
特開2003−25164号公報
実開平6−53037号公報
特開2001−293666号公報
本発明は、軸方向に移動する出力軸から装置本体への良好な導通が得られ、ビットに発生した静電気を確実に除去できるようにしたねじ締め装置を提供することを例示的な目的とする。
本発明の一側面としてのねじ締め装置は、モータと、ねじ締め用ビットが結合され、該モータによって回転駆動されるとともに、軸方向に移動可能な出力軸と、一端が該ねじ締め装置の本体を構成する部材に当接するばねと、該ばねの他端が当接し、ばねの付勢力を出力軸に伝達するばね受け部材とを有する。そして、出力軸とばね受け部材とに接触する導電部材を有することを特徴とする。
これにより、ビットに発生した静電気を、出力軸、導電部材、ばね受け部材およびばねを介して装置本体(グランド)に確実に逃がすことができる。しかも、導電部材は、軸方向に相対移動しない出力軸とばね受け部材とに接触するため、出力軸が回転しても導電性を良好に維持することができる。また、導電部材には軸方向の力が作用しないため、軸方向への変形やこれに伴う導電性の悪化を確実に回避することができる。
なお、導電部材は、出力軸に固定し、出力軸が回転している間ばね受け部材に対して摺動する構成としてもよい。ばね受け部材の方が出力軸よりも径が大きいので、出力軸の回転中に導電部材を安定的にばね受け部材に摺動させることができる。
また、導電部材は、ばねの内側に配置されて出力軸とばね受け部材に接触するとよい。これにより、ばねと出力軸やばね受け部材との間の空間を有効利用することができ、ねじ締め装置を大型化することなく、導電部材を設けることができる。
本発明の他の目的と更なる特徴は、以下、添付図面を参照して説明される実施例において明らかになるであろう。
本発明の実施例1であるねじ締めシステムの外観図。
実施例1のねじ締めシステムの制御系を示すブロック図。
実施例1のねじ締めシステムでねじ締めを行うハードディスク装置の平面図。
図3Aに示すハードディスク装置の側面図。
実施例1のねじ締めシステムの動作を示すタイミングチャート。
実施例1のねじ締めシステムのモータ制御部の構成を示すブロック図。
実施例1のねじ締めシステムにおけるウェイトタイマ等の設定例を示す表図。
実施例1のねじ締めシステムの制御系の動作を示すフローチャート。
実施例1のねじ締めシステムの制御系の動作を示すフローチャート。
実施例1のねじ締めシステムの制御系の動作を示すフローチャート。
本発明の実施例2であるねじ締めシステムの制御系の構成を示すブロック図。
本発明の実施例3である位置決めシステムの制御系の構成を示すブロック図。
実施例3の同期制御動作を示すタイミングチャート。
本発明の実施例4であるトルク測定装置の外観図。
実施例4のトルク測定装置の構成を示すブロック図。
実施例4のトルク測定装置の制御動作を示すフローチャート。
実施例4のトルク測定装置によるトルク測定結果の例を示す図。
本発明の実施例5であるトルク変動補正システムの構成を示すブロック図。
実施例5のトルク変動補正手順を示すフローチャート。
実施例5のトルク変動補正システムで用いるトルク補正データの例を示す図。
実施例5のトルク変動補正システムによる補正前後のトルク測定結果の例を示す図。
本発明の実施例6であるねじ締めドライバの構成を示す断面図。
実施例6のねじ締めドライバの一部構成を示す拡大断面図。
実施例6のねじ締めドライバの一部構成を示す斜視図。
本発明の実施例7であるねじ締めドライバの構成を示す斜視図。
実施例7のねじ締めドライバを応用したねじ締めシステムの構成例を示すブロック図。
本発明の実施例8であるねじ締めドライバの構成を示す断面図。
実施例8のねじ締めドライバの変形例を示す断面図。
以下、本発明の好ましい実施例について図面を参照しながら説明する。
図1には、本発明の実施例1であるねじ締めシステムの概略構成を示している。1は本実施例のねじ締めシステム全体を示す。2はねじ締めシステム1の装置本体である。3は装置本体2に取り付けられた昇降機構であり、支持台4を昇降移動させる。
支持台4の水平板4a上には、複数台(図1では4台)のねじ締めドライバ(ねじ締め装置)Dが取り付けられている。これらのねじ締めドライバDは、水平板4aに形成された貫通穴4cを通して該水平板4aの下方に延びるねじ締め用ビットBを回転させ、該水平板4aの下側に配置された不図示のワーク(ねじ締め対象物)に対するねじ締め動作を行う。
なお、図1には、4台のねじ締めドライバDを示したが、この台数は例であり、3台以下又は5台以上のねじ締めドライバを設けてもよい。
MCは、メインコントローラであり、ドライバDごとに設けられたサーボコントローラSCに動作開始コマンド等を送信する。メインコントローラMCは、コンピュータによって構成されている。
図2には、上記ねじ締めシステムの制御系の概略構成を示している。ここでは、6台のねじ締めドライバ(第1〜第6のねじ締めドライバ)D1〜D6を制御する場合について説明する。但し、図2には、第1,2および第6のねじ締めドライバD1,D2,D6のみを示している。
各ねじ締めドライバは、駆動源としてのモータMと、下端(先端)がねじの頭部に形成されたリセスに係合するねじ締め用ビットBと、モータMから伝達された駆動力によりビットBを駆動するビット駆動部BDとを有する。図示しないが、ビット駆動部BD内には、ビットBが着脱可能に結合される出力軸が配置されている。
図中においてモータMとビット駆動部BDとを保持するケーシングC内には、モータMの出力軸に取り付けられた入力ギアから上記出力軸と一体回転する駆動ギアに駆動力を伝達する減速ギア列が収納されている。モータMとしては、ブラシモータでもブラシレスモータでも使用できる。
SCは、図1にも示したように、各ねじ締めドライバの駆動を直接制御するサーボコントローラであり、ねじ締めドライバごとに設けられている。
MCは、図1にも示したメインコントローラであり、6つのサーボコントローラSCに対して、通信ラインILを介して各種動作指令を送信する。
サーボコントローラSCは、第1および第2のワイヤードORラインOR1,OR2に接続された同期制御部C1と、モータMに印加する電圧又は電流を制御するモータ制御部C2とを有する。モータ制御部C2は、CPU等により構成される演算器CALを有する。さらに、サーボコントローラSCには、同期制御部C1と第1および第2のワイヤードORラインOR1,OR2との間の入出力回路を構成する第1および第2のトランジスタTR1,TR2が設けられている。第1および第2のトランジスタTR1,TR2は、第1および第2のワイヤードORラインOR1,OR2への出力を行うオープンコレクタを有する。
なお、本実施例ではトランジスタのオープンコレクタ出力を用いてワイヤードOR回路(TTLロジックの出力を直結することにより負論理でのORゲートとなる回路)を構成しているが、トランジスタに代えてCMOSのオープンドレイン出力を用いてワイヤードOR回路を構成してもよい。
また、図2に示すように、第1および第2のワイヤードORラインOR1,OR2の一端には、プルアップ抵抗PRが接続されている。
同期制御部C1には、第1のワイヤードORラインOR1に接続された奇数ライン入力回路および奇数ライン出力回路と、第2のワイヤードORラインOR2に接続された偶数ライン入力回路および偶数ライン出力回路とが設けられている。ここにいう奇数ライン出力回路および偶数ライン回路は、後述するねじ締めドライバD1〜D6における奇数回目および偶数回目の同期待ち状態を示す信号を出力する回路であり、奇数ライン入力回路および偶数ライン入力回路は、第1のワイヤードORラインOR1および第2のワイヤードORラインOR2の状態を検出するための回路である。
このように構成されたねじ締めシステムは、例えば図3Aおよび図3Bに示すワークとしてのハードディスク装置における磁気ディスクのクランプねじ締め工程に使用される。図3Aはハードディスク装置の磁気ディスク部20の平面図、図3Bはその側面図である。
磁気ディスク部20は、スペーサ22を挟んで上下に重ねられた2枚の磁気ディスク21と、該磁気ディスク21を回転駆動するスピンドルモータ23とを有する。スピンドルモータ23の外周には、軸受け24と磁気ディスク21とスペーサ22とが同心状に積層配置されており、上側の磁気ディスク21上にはクランプ板25が配置されている。クランプ板25は、図3Aに示すように、正6角形の頂点位置にそれぞれ配置された6つのねじSRによってスピンドルモータ23の回転出力部に結合される。これにより、スピンドルモータ23の回転とともに磁気ディスク21が回転し、不図示の磁気読み書き手段によって磁気ディスク21上にデータを書き込んだり書き込まれたデータを読みとったりする。なお、本実施例では、6つのねじSRは全て右ねじである。但し、全てのねじSRを左ねじとしてもよい。
本実施例では、クランプ板25のねじ締めを行う場合に、まず、ねじの頭部がクランプ板25に接する(着座する)まで該ねじを締め込み、その後、各ねじの締め付けトルクを最終締め付けトルクまで段階的に上げていく。このとき、6本のねじSRを、図3Aにおいて対角位置関係にある2本のねじが一組となるようにして三組に分ける。すなわち、図3Aに番号1〜6で示した順番でねじSRのうち、1番と2番のねじSRを一組とし、3番と4番のねじSRを一組とする。さらに、5番と6番のねじSRを一組とする。そして、同じ組の2本のねじの着座までの締め込みとその後の段階的な締め付けトルクアップは同時に行う一方、これらの組間において着座までの締め込みの開始と各段階の締め付けトルクアップの開始には時間差を持たせるようにする。1番から6番のねじSRの締め付けはそれぞれ、第1〜第6のねじ締めドライバD1〜D6が行う。つまり、ドライバD1,D2が1つの組として、ドライバD3,D4が他の組として、さらにドライバD5,D6が別の一組として同期制御される。
但し、クランプ板25のねじ締め方法はこれに限らない。例えば、1番から6番のねじSRをまずこの順番(星形順)で着座させ、その後、同じ順番で締め付けトルクを段階的に上げていくようにしてもよい。また、6本のねじSRを互いに隣り合わない3本のねじSRを含む二組(他例えば、1,4,5番のねじSRと、2,3,6番のねじSR)に分け、同じ組の3本のねじの着座までの締め込みとその後の段階的な締め付けトルクアップは同時に行い、これらの組間において着座までの締め込みの開始と各段階の締め付けトルクアップの開始には時間差を持たせるようにしてもよい。
また、本実施例では、6本のねじSRでクランプ締めを行う場合について説明するが、本発明において、ねじの本数は6本以外の偶数本でも奇数本でもよい。
図4には、上述した2つドライバを一組としたクランプ締め同期制御における着座動作および締め付けトルクアップ動作の制御手順と動作タイミングとを示している。
図4中の(a)〜(c)は各組のねじ締めドライバの着座動作および締め付けトルクアップ動作(以下、単にトルクアップ動作という)でのモータ電圧指令値の変化を示している。モータ電圧指令値は、ねじ締めドライバの出力トルクに比例すると考えてよい。また、(d)〜(f)は各組のねじ締めドライバの動作状態を示している。
(a)〜(i)において、1番と2番のねじSRを締め付ける第1,第2のねじ締めドライバD1,D2およびこれを制御するサーボコントローラSCを「ドライバ1,ドライバ2」と、3番と4番のねじSRを締め付ける第3,第4のねじ締めドライバD3,D4およびこれを制御するサーボコントローラSCを「ドライバ3,ドライバ4」と表記している。同様に、5番と6番のねじSRを締め付ける第5,第6のねじ締めドライバD5,D6およびこれを制御するサーボコントローラSCを「ドライバ5,ドライバ6」と表記する。以下の説明でも、この呼称を用いる。
また、(g)〜(i)は各組のドライバに対して設けられたサーボコントローラSCにおける偶数および奇数ラインの出力状態を示している。さらに、(j)は第2のワイヤードORライン(以下、偶数ワイヤードORラインという)OR2と第1のワイヤードORライン(以下、奇数ワイヤードORラインという)OR1の状態を示している。
(g)〜(j)において、本実施例では負論理を使用するため、信号レベルが高い方がオフ状態(非アクティブ又はHレベル)を、信号レベルが低い方がオン状態(アクティブ又はLレベル)を示す。
メインコントローラMCからの起動待機信号が各サーボコントローラSCに送信されると、各サーボコントローラSCはモータ制御部C2の立ち上げ動作や同期制御部C1の初期化状態の確認動作等を含む起動待ち動作を行う。また、メインコントローラMCは、通信ラインILを通じて各ドライバ(サーボコントローラSC)に対して、後述する各同期点での動作を記述した指示データを送信する。各ドライバでは、フラッシュメモリやEEPROMなどのメモリに該指示データを記憶する。各ドライバは、各同期点を設定(判定若しくは検出)すると、該メモリに保存された指示データに従って動作する。
起動待ち動作中では、後述する初期化動作によって、すべての組のドライバ1〜6の偶数ライン出力はオフ状態に、奇数ライン出力はオン状態になっている。また、これにより、偶数ワイヤードORラインOR2はオフ状態に、奇数ワイヤードORラインOR1はオン状態になっている。
また、モータ制御部C2(演算器CAL)は、後述する同期待ち状態になった回数をカウントするカウンタ機能を有する。後述する初期化動作によってこの同期待ちカウンタは0にセットされている。なお、メインコントローラMCも、同期待ちカウンタ機能を有してもよいし、各ドライバからの通信によりこのカウント値の情報を受け取ってもよい。
さらに、この起動待ち動作中に、ねじSRの各ドライバおよび磁気ディスク部20のねじ穴へのセッティングが行われる。
各ドライバでは、メインコントローラMCから起動信号を受けると、同期待ちカウンタを0から1インクリメントする。そして、偶数ライン出力をオン状態に、奇数ライン出力をオフ状態に切り替える。図4では、メインコントローラMCからの起動信号の送信時間差や各ドライバでの動作特性のばらつき等に起因して、ドライバ5,6の起動待ち動作が他のドライバに比べて長時間を要した場合を示している。
ドライバ1〜6のうちいずれかの起動待ち動作が完了し、該ドライバの偶数ライン出力がオン状態になると、奇数ワイヤードORラインOR1はオン状態のままであるが、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。
そして、すべてのドライバ1〜6の起動待ち動作が完了すると、偶数ワイヤードORラインOR2はオン状態のまま、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。
各ドライバは奇数ワイヤードORラインOR1がオン状態からオフ状態となった時点を奇数番目の同期点(ここでは、同期点1)に設定する。
そして、同期点1の設定の直後にドライバ1,2は、モータMを回転させ、1番と2番のねじSRを着座するまで締め込む(以下、これを着座動作という)。
ここで、図5には、各ドライバにおけるモータ制御部C2内の回路構成の一部を示している。図5において、Mはモータであり、Tは該モータMの回転速度を検出するために設けられたタコジェネレータである。タコジェネレータTから出力されたアナログ信号は、A/D変換器AD2で回転速度を示すデジタル信号に変換され、モータ制御部C2内の演算器(CPU等)CALに入力される。
また、DAは、メモリから演算器CALを介して入力されたデジタル信号としてのモータ電圧指令値をアナログ信号に変換するD/A変換器である。このD/A変換器DAからの出力信号は、増幅器Aによって所定レベルに増幅され、モータMに印加される。これにより、モータMは、モータ電圧指令値に対応した速度又はトルク出力状態で回転する。モータMには、該モータMに流れている電流(モータ電流)のアナログ値をデジタル値に変換するA/D変換器AD1が接続されている。A/D変換器AD1からの出力は、演算器CALに入力される。
図5の構成によれば、ねじSRが着座するまでは、ねじSRとクランプ板25のねじ穴との間に作用する摩擦トルクに対応する小さな電流でドライバが回転する。このとき、モータM内で発生する逆起電力によって自動的に速度フィードバックが掛かるので、モータ電圧指令値とモータ回転速度とはほぼ比例する(ここでの比例定数は、逆起電力定数である)。
ねじSRが着座した後は、ドライバの回転が急停止するため、モータMの逆起電力はほぼゼロになる。このため、モータ電圧指令値とモータ電流はほぼ比例するようになる。
したがって、ねじSRが着座するまでの回転中は、モータ電圧指令値はモータ回転速度の指令値となり、ねじが着座した後はモータ電圧指令値はモータ電流、つまりは出力トルクの指令値となる。ここでの比例定数は、モータ巻線抵抗や電流計測用抵抗など、モータMに直列に接続されているすべての抵抗成分の和となる。
逆起電力定数と抵抗値に頼らず、より正確な回転速度制御やトルク制御が必要な場合には、タコジェネレータTからの信号をフィードバックしたり、A/D変換器AD1による電流測定値をフィードバックしたりしてもよい。回転速度検出は、タコジェネレータの代わりに、ロータリエンコーダを用い、その出力パルス信号の時間間隔測定値の逆数から回転速度を求めてもよい。
モータMがブラシレスモータである場合でも、機械的なブラシの代わりにホール素子やロータリエンコーダ等の信号を使用して電気的に転流制御を行えば、ブラシモータと同様に回転速度やトルクの制御が可能である。
着座判定は、タコジェネレータTやロータリエンコーダ等による回転速度測定値が規定値以下に低下したことを検出することで行うことができる。また、モータ電流を測定中に急激に電流が増加したこと、つまりはトルクが増加したことを検出して、着座と判定してもよい。
図4中に示した「回転→→→着座」の期間では、所望のモータ回転数を得るためのモータ電圧指令値を目標値として与えてモータMを回転させておき、指定した電圧変更レートで目標値まで電圧を上昇させる。そして、指定のホールドタイマのカウント中、その電圧を保持して回転を続行させる。
ねじの着座に要する時間+α時間をホールドタイマに設定して、このホールドタイマのカウントアップによって着座完了と判定してもよい。但し、マージン時間としてのα時間分、着座後のトルクアップ開始が遅れる。このような場合は、上述した回転速度やモータ電流による着座判定方法によってホールド期間を抜けるようにプログラミングしておくことにより、着座後のトルクアップを速やかに開始することができる。なお、ホールドタイマ時間を過ぎても着座が検出されない場合は、エラー判定させ、ねじ締めを中止させるようにすることもできる。
再び図4において、ドライバ1,2では、1番と2番のねじSRの着座を検出すると、次の偶数番目の同期点2の待ち状態に入る。このとき、ドライバ1,2の演算器CALは、同期待ちカウンタを1から1インクリメントして、2とする。また、ドライバ1,2では、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。これにより、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。なお、この同期待ち状態では、ドライバ1,2は着座動作完了時点での出力トルクを維持する。
また、ドライバ3,4およびドライバ5,6に関しては、同期点1から所定のウェイトタイマのカウントを開始する。ドライバ5,6のウェイトタイマは、ドライバ3,4のウェイトタイマよりも長く設定される。
そして、ドライバ3,4は、ウェイトタイマがカウントアップすると、前述したドライバ1,2と同様に、着座動作を開始する。
なお、図4には、ドライバ3,4の着座動作の開始が、ドライバ1,2の着座動作の完了より少し前に開始される場合を示している。そして、着座動作が完了(3番と4番のねじSRの着座を検出)すると、ドライバ3,4は次の同期点2の待ち状態に入る。このとき、ドライバ3,4の演算器CALは、同期待ちカウンタを1から1インクリメントして、2とする。また、ドライバ3,4では、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。この時点では、偶数ワイヤードORラインOR2はオン状態のままで、奇数ワイヤードORラインOR1もオン状態のままである。ドライバ3,4も、この同期待ち状態において着座動作完了時点での出力トルクを維持する。
また、ドライバ5,6は、ウェイトタイマがカウントアップすると、着座動作を開始する。なお、図4には、ドライバ5,6の着座動作の開始が、ドライバ3,4の着座動作の完了より少し前(但し、ドライバ1,2の着座動作の完了後)に開始される場合を示している。そして、着座動作が完了(5番と6番のねじSRの着座を検出)すると、ドライバ5,6は次の同期点2の待ち状態に入る。このとき、ドライバ5,6の演算器CALは、同期待ちカウンタを1から1インクリメントして、2とする。また、ドライバ5,6では、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。これにより、偶数ワイヤードORラインOR2はオン状態からオフ状態に切り替わる。一方、奇数ワイヤードORラインOR1はオン状態のままである。ドライバ5,6も、この後、着座動作完了時点での出力トルクを維持する。
各ドライバは、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わったことにより、同期点2を設定する。
ドライバ1,2は、同期点2の設定後、すぐにモータ電圧指令値の第1目標トルクに対応する値までの増加(トルクアップ動作)を開始する。これにより、ドライバ1,2の出力トルクおよび1,2番のねじSRの締め付けトルクが徐々に増加し始める。また、ドライバ3,4およびドライバ5,6は、同期点2からウェイトタイマのカウントを開始する。ここでも、ドライバ5,6のウェイトタイマは、ドライバ3,4のウェイトタイマよりも長く設定される。このことは、以下のトルクアップの各段階でも同様である。
ドライバ1,2において出力トルクが第1目標トルクまで増加すると、すなわちモータ電圧指令値が第1目標トルクに対応する値まで増加すると、次の奇数番目の同期点3の待ち状態に入る。このとき、ドライバ1,2の演算器CALは、同期待ちカウンタを2から1インクリメントして、3とする。また、ドライバ1,2では、偶数ライン出力をオフ状態からオン状態に切り替え、奇数ライン出力をオン状態からオフ状態に切り替える。これにより、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。一方、奇数ワイヤードORラインOR1はオン状態のままである。
なお、この同期待ち状態では、ドライバ1,2は増加した出力トルク(第1目標トルク)を維持する。このトルク維持の時間は、他の組のドライバに対してウェイトタイマが設けられたことで結果的に生じたものである。この間にトルクを十分安定させることができる。このことについては、他の組のドライバについても同様である。
ドライバ3,4では、ウェイトタイマがカウントアップすると、前述したドライバ1,2と同様に、第1目標トルクまでのトルクアップ動作を開始する。なお、図4には、ドライバ3,4のトルクアップ動作の開始が、ドライバ1,2のトルクアップ動作の完了とほぼ同時に開始される場合を示している。そして、トルクアップ動作が完了すると、ドライバ3,4は次の同期点3の待ち状態に入る。このとき、ドライバ3,4の演算器CALは、同期待ちカウンタを2から1インクリメントして、3とする。また、ドライバ3,4では、偶数ライン出力をオフ状態からオン状態に切り替え、奇数ライン出力をオン状態からオフ状態に切り替える。この時点では、偶数ワイヤードORラインOR2はオン状態のままで、奇数ワイヤードORラインOR1もオン状態のままである。ドライバ3,4も、この同期待ち状態においてトルクアップ動作完了時点での出力トルク(第1目標トルク)を維持する。
さらに、ドライバ5,6は、ウェイトタイマがカウントアップすると、第1目標トルクまでのトルクアップ動作を開始する。なお、図4には、ドライバ5,6のトルクアップ動作の開始が、ドライバ3,4のトルクアップ動作作の完了より少し前(但し、ドライバ1,2のトルクアップ動作の完了後)に開始される場合を示している。そして、トルクアップ動作が完了すると、ドライバ5,6は次の同期点3の待ち状態に入る。このとき、ドライバ5,6の演算器CALは、同期待ちカウンタを2から1インクリメントして、3とする。また、ドライバ5,6では、偶数ライン出力をオフ状態からオン状態に切り替え、奇数ライン出力をオン状態からオフ状態に切り替える。これにより、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。ドライバ5,6も、この後、トルクアップ動作完了時点での出力トルク(第1目標トルク)を維持する。
なお、図4では、各組のドライバのトルクアップ動作が同時に完了しているように示しているが、実際には、サーボコントローラSCやモータMの動作特性のばらつきに起因して、ドライバごとにトルクアップ動作に要する時間が異なることが多い。この場合は、同じ組のドライバでも、先にトルクアップ動作が完了した方の偶数ライン出力および奇数ライン出力の切り替えが、まだトルクアップ動作が完了していないドライバよりも早く行われることになる。しかし、切り替わるべきワイヤードORラインの状態は、最後の1つのドライバがトルクアップ動作を完了した時点で切り替わるので、全ドライバのトルクアップ動作の完了を待って同期点が設定される。
各ドライバは、奇数ワイヤードORラインOR1がオン状態からオフ状態に切り替わったことにより、同期点3を設定する。
ドライバ1,2は、同期点3の設定後、すぐに第2目標トルクまでのトルクアップ動作を開始する。また、ドライバ3,4およびドライバ5,6は、同期点3からウェイトタイマのカウントを開始する。
ドライバ1,2において出力トルクが第2目標トルクまで増加すると、すなわちモータ電圧指令値が第2目標トルクに対応する値まで増加すると、次の偶数番目の同期点4の待ち状態に入る。このとき、ドライバ1,2の演算器CALは、同期待ちカウンタを3から1インクリメントして、4とする。また、ドライバ1,2では、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。これにより、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。なお、この同期待ち状態では、ドライバ1,2は増加した出力トルク(第2目標トルク)を維持する。
また、ドライバ3,4では、ウェイトタイマがカウントアップすると、第2目標トルクまでのトルクアップ動作を開始する。そして、トルクアップ動作が完了すると、ドライバ3,4は次の同期点4の待ち状態に入る。このとき、ドライバ3,4の演算器CALは、同期待ちカウンタを3から1インクリメントして、4とする。ドライバ3,4では、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。この時点では、偶数ワイヤードORラインOR2はオン状態のままで、奇数ワイヤードORラインOR1もオン状態のままである。ドライバ3,4も、この同期待ち状態において増加した出力トルク(第2目標トルク)を維持する。
さらに、ドライバ5,6は、ウェイトタイマがカウントアップすると、第2目標トルクまでのトルクアップ動作を開始する。そして、トルクアップ動作が完了すると、ドライバ5,6は次の同期点4の待ち状態に入る。このとき、ドライバ5,6の演算器CALは、同期待ちカウンタを3から1インクリメントして、4とする。また、ドライバ5,6では、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。これにより、偶数ワイヤードORラインOR2はオン状態からオフ状態に切り替わる。一方、奇数ワイヤードORラインOR1はオン状態のままである。ドライバ5,6も、この後、トルクアップ動作完了時点での出力トルク(第2目標トルク)を維持する。
各ドライバは、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わったことにより、同期点4を設定する。
ドライバ1,2は、同期点4の設定後、すぐに第3目標トルクまでのトルクアップ動作を開始する。また、ドライバ3,4およびドライバ5,6はそれぞれのウェイトタイマのカウントアップ後、第3目標トルクまでのトルクアップ動作を開始する。各ドライバは、トルクアップ動作完了により、次の同期点5の待ち状態に入り、同期待ちカウンタを5に設定する。また、偶数ライン出力をオフ状態からオン状態に切り替え、奇数ライン出力をオン状態からオフ状態に切り替える。いずれかのドライバの偶数ライン出力がオフ状態からオン状態に切り替わることで、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。
そして、ドライバ5,6のトルクアップ動作が完了することで、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。各ドライバは、トルクアップ動作完了時点での出力トルク(第3目標トルク)を維持する。
各ドライバは、奇数ワイヤードORラインOR1がオン状態からオフ状態に切り替わったことにより、同期点5を設定する。
ドライバ1,2は、同期点5の設定後、すぐに最終目標トルクまでのトルクアップ動作を開始する。また、ドライバ3,4およびドライバ5,6はそれぞれのウェイトタイマのカウントアップ後、最終目標トルクまでのトルクアップ動作を開始する。
ここで、最終目標トルクまでのトルクアップ段階では、各ドライバは、出力トルクが最終目標トルクに到達した後、該最終目標トルクでのねじSRの締め付け状態を安定化させるため、所定のホールドタイマのカウントが完了してから、次の同期点6の待ち状態に入り、同期待ちカウンタを6に設定する。さらに偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。いずれかのドライバの奇数ライン出力がオフ状態からオン状態に切り替わることで、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。
ドライバ5,6のトルクアップ動作およびホールドタイマカウントが完了することで、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わる。一方、奇数ワイヤードORラインOR1はオン状態のままである。
各ドライバは、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わったことにより、同期点6を設定する。ドライバ1,2は、同期点6の設定後、すぐにモータ電圧指令値の減少によるトルクダウン動作を開始する。また、ドライバ3,4およびドライバ5,6はそれぞれのウェイトタイマのカウントアップ後に、トルクダウン動作を開始する。
各ドライバは、トルクダウン動作の完了により、次の同期点7の待ち状態に入り、同期待ちカウンタを7に設定する。さらに、偶数ライン出力をオフ状態からオン状態に切り替え、奇数ライン出力をオン状態からオフ状態に切り替える。いずれかのドライバの偶数ライン出力がオフ状態からオン状態に切り替わることで、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。
そして、ドライバ5,6のトルクダウン動作が完了することで、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。
各ドライバは、奇数ワイヤードORラインOR1がオン状態からオフ状態に切り替わったことにより、同期点7を設定する。各ドライバは、同期点7の設定に応じて同期待ちカウンタのカウント値を0にリセットする。さらに、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。これにより、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わり、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。これらの動作は、前述した初期化動作である。こうして一連のねじ締め動作が完了する。
なお、本実施例では、ねじ締め動作の終了により初期化動作を行うが、起動待ち動作中に初期化動作を行うようにしてもよい。
図6には、ドライバ1,2、ドライバ3,4およびドライバ5,6の各同期点からのウェイトタイマ、モータ電圧指令目標値(目標トルク)およびホールドタイマの設定例を示している。また、同図には、同期待ち状態が解除されるタイムアウト時間、一連のねじ締め動作での同期処理の継続と終了の区別、トルクアップ/ダウン時のモータ電圧指令値の変更レートおよび着座検出によるホールド状態からの脱出の有無も併せて例示している。
なお、図6では、ドライバ3,4およびドライバ5,6における各段階でのウェイトタイマ値が同じになるように設定されているが、これらが異なるように設定してもよい。
図7Aから図7Cには、各ドライバのサーボコントローラSC(演算器CAL)において実行されるコンピュータプログラムであって、同期とりに関する動作を制御するためのプログラムの内容を示している。
図7Aには、本実施例では一連のねじ締め動作の終了時に行われる各ドライバでの初期化動作の制御フローチャートを示している。まず、ステップ(図ではSと略記する)61では、サーボコントローラSCは、同期点7が設定されることに応じて、初期化動作を開始する。ステップ62では、同期待ちカウンタのカウント値を0にリセットする。
次に、ステップ63では、偶数ライン出力をオフ状態に、奇数ライン出力をオン状態に設定する。これにより、偶数ワイヤードORラインOR2がオフ状態に設定され、奇数ワイヤードORラインOR1はオン状態に設定される。そして、ステップ64でこの初期化フローを終了する。
図7Bには、各ドライバで着座動作完了およびトルクアップ/ダウン動作完了とともに行われる偶数および奇数ライン出力の状態設定に関するフローチャートを示している。まず、ステップ65で着座動作完了およびトルクアップ/ダウン動作完了を検知すると、ステップ66に進む。
ステップ66では、同期待ちカウンタ値を1インクリメントする。次に、ステップ67では、同期待ちカウンタ値が奇数か偶数かを判別する。奇数の場合は、ステップ68に進み、偶数ライン出力をオン状態に、奇数ライン出力をオフ状態に設定する。全てのドライバがこの状態となることで、偶数ワイヤードORラインOR2はオン状態であるが、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わることになる。
一方、ステップ67において、同期待ちカウンタ値が偶数の場合は、ステップ69に進み、偶数ライン出力をオフ状態に、奇数ライン出力をオン状態に設定する。全てのドライバがこの状態となることで、奇数ワイヤードORラインOR1はオン状態であるが、偶数ワイヤードORラインOR2はオン状態からオフ状態に切り替わることになる。
図7Cには、同期判定フローチャートを示している。ステップ71で、同期判定動作を開始すると、次にステップ72では、同期待ちカウンタ値が奇数か偶数かを判別する。奇数の場合は、ステップ73に進む。ステップ73では、奇数ワイヤードORラインOR1がオン状態かオフ状態かを判別する。オン状態の場合は、ステップ73を繰り返す。また、オフ状態の場合は、前回のルーチンでオン状態と判別された場合に限り、ステップ75に進み、同期をとるべき状態と判定するとともに、同期待ちカウンタ値と同じ番号の同期点を設定する。そして、ステップ72に戻る。
一方、ステップ72で同期待ちカウンタ値が偶数と判別した場合は、ステップ74に進む。ステップ74では、偶数ワイヤードORラインOR2がオン状態かオフ状態かを判別する。オン状態の場合は、ステップ74を繰り返す。また、オフ状態の場合は、前回のルーチンでオン状態と判別された場合に限り、ステップ75に進み、同期をとるべき状態と判定するとともに、同期待ちカウンタ値と同じ番号の同期点を設定する。そして、ステップ72に戻る。
以上説明したように、本実施例によれば、ねじと同数のドライバを用意しながらも、各組ドライバ(又は各ドライバ)の同期後の着座動作およびトルクアップ動作の開始タイミングに差を設けているので、クランプ板25や磁気ディスク21の傾きを防止しながら段階的なねじ締め動作(トルクアップ)を短時間で行うことができる。
また、すべてのねじSRに対して同時にトルクアップ動作を行わないため、クランプ板25や磁気ディスク21に作用する回転力が小さくなり、右ねじ(若しくは左ねじ)だけでクランプねじ締めが可能である。
さらに、各トルクアップ段階でウェイトタイマを設定することにより、最終目標トルク到達後のホールド時間だけでなく、トルクアップ途中においてもホールド時間を設けることができる。このため、各トルクアップ段階でトルクが十分安定してから次のトルクアップ段階に移行することができる。これにより、クランプ板25等の傾きをより確実に防止できる。
また、図4(a)〜(c)に示したように、トルクアップ指令値(モータ電圧指令値)を有限の傾きを持った直線としているので、クランプ板25等の傾きをより確実に防止できる。
また、本実施例では、2本のワイヤードORラインに各ドライバを接続するだけで、すなわち同期制御に関してサーボコントローラSCよりも上位のコントローラを設けなくても同期回路が構成でき、ドライバの数も任意に選択することができる。さらに、同期待ち状態に入ったタイミングで2本のワイヤードORラインの状態をそれぞれ反転させ、奇数回目の同期点と偶数回目の同期点とで同期判定に使用するワイヤードORラインを切り替えることにより、2本のワイヤードORラインを設けるだけで多数のドライバの同期とりを行える。したがって、同期回路を簡単かつ安価に構成することができる。しかも、同期制御のために、複雑な判定フローが必要ないので、同期判定処理を高速に行うことができる。
図8には、本発明の実施例2であるねじ締めシステムによるねじ締め動作の制御手順と動作タイミングを示している。本実施例は、実施例1で説明した全ドライバD1〜D6のうち第1〜第5ドライバD1〜D5(以下、ドライバ1〜5という)によって、クランプ板25等のワークに対して5つのねじを締め付ける場合の例を示している。なお、本実施例において、実施例1と共通する構成要素には実施例1と同符号を付す。
実施例1では、同期後の各組ドライバの着座動作およびトルクアップ動作の開始タイミングに差を設けた場合について説明したが、本実施例では、同期後の全ドライバの着座動作およびトルクアップ動作を同時に開始する場合について説明する。
図8中の(a)〜(e)は各ドライバの動作状態と、各ドライバに対して設けられたサーボコントローラSCにおける偶数および奇数ラインの出力状態とを示している。さらに、(f)は偶数ワイヤードORラインOR2と奇数ワイヤードORラインOR1の状態を示している。また、(g)には、全ドライバの状態を示す。
本実施例でも、負論理を使用するため、信号レベルが高い方がオフ状態(非アクティブ又はHレベル)を、信号レベルが低い方がオン状態(アクティブ又はLレベル)を示す。
メインコントローラMCからの起動待機信号が各ドライバ(サーボコントローラSC)に送信されると、各ドライバでは、メインコントローラMCからのねじ締め開始コマンド待ち状態となる。なお、この開始コマンド待ち状態では、後述する初期化動作によって、すべてのドライバ1〜5の偶数ライン出力はオフ状態に、奇数ライン出力はオン状態になっている。これにより、偶数ワイヤードORラインOR2はオフ状態に、奇数ワイヤードORラインOR1はオン状態になっている。
また、各ドライバ(サーボコントローラSCに設けられた演算器CAL)は、同期待ち状態になった回数をカウントするカウンタ機能を有する。後述する初期化動作によってこの同期待ちカウンタは0にセットされている。なお、メインコントローラMCも、同期待ちカウンタ機能を有してもよいし、各ドライバからの通信によりこのカウント値の情報を受け取ってもよい。
この開始コマンド待ちの前又は開始コマンド待ち中に、ねじの各ドライバおよびワークのねじ穴へのセッティングが行われる。
そして、メインコントローラMCから各ドライバに開始コマンドが送信され、それを各ドライバで受信すると、各ドライバでは、同期待ちカウンタを0から1インクリメントする。また、偶数ライン出力をオフ状態からオン状態に、奇数ライン出力をオン状態からオフ状態に切り替える。図8では、メインコントローラMCからの開始コマンドの送信時間差や各ドライバの動作特性のばらつき等に起因して、各ドライバの開始コマンド待ち状態の終了に時間差が生じている様子を示す。
ドライバ1〜5のうちいずれかが開始コマンド待ち状態を終了し、該ドライバの偶数ライン出力がオン状態になると、奇数ワイヤードORラインOR1はオン状態のままであるが、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。
そして、すべてのドライバ1〜5の開始コマンド待ち状態が完了すると、偶数ワイヤードORラインOR2はオン状態のまま、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。
各ドライバは奇数ワイヤードORラインOR1がオン状態からオフ状態となった時点を奇数番目の同期点(ここでは、同期点1)に設定する。
そして、各ドライバでは、同期点1の設定の直後にモータMを回転させ、ねじを着座するまで締め込む(すなわち、着座動作を行う)。
実施例1にて説明したのと同様の方法によってねじの着座を検出したドライバでは、次の偶数番目の同期点2の待ち状態に入る。このとき、そのドライバでは、同期待ちカウンタを1から1インクリメントして、2とする。また、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。
いずれかのドライバの着座検出(すなわち、偶数ライン出力のオン状態からオフ状態への切り替えと、奇数ライン出力のオフ状態からオン状態への切り替え)により、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。なお、この同期待ち状態では、各ドライバは着座動作完了時点での出力トルクを維持する。
そして、全てのドライバで着座検出がなされると、奇数ワイヤードORラインOR1はオン状態のままであるが、偶数ワイヤードORラインOR2はオン状態からオフ状態に切り替わる。
各ドライバは、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わったことにより、同期点2を設定する。
同期点2を設定した各ドライバは、すぐにトルクアップ動作を開始する。出力トルクが第1目標トルク(T1)まで到達したドライバでは、次の奇数番目の同期点3の待ち状態に入る。このとき、そのドライバでは、同期待ちカウンタを2から1インクリメントして、3とする。また、偶数ライン出力をオフ状態からオン状態に切り替え、奇数ライン出力をオン状態からオフ状態に切り替える。
いずれかのドライバで第1目標トルクまでのトルクアップ動作が完了すること(すなわち、偶数ライン出力のオフ状態からオン状態への切り替えと、奇数ライン出力のオン状態からオフ状態への切り替え)により、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。一方、奇数ワイヤードORラインOR1はオン状態のままである。なお、この同期待ち状態では、ドライバは増加した出力トルク(第1目標トルク)を維持する。
すべてのドライバで第1目標トルクまでのトルクアップ動作が完了することにより、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。
各ドライバは、奇数ワイヤードORラインOR1がオン状態からオフ状態に切り替わったことにより、同期点3を設定する。
同期点3を設定した各ドライバは、すぐに第2目標トルク(T2)までのトルクアップ動作を開始する。
出力トルクが第2目標トルクまで到達したドライバでは、次の偶数番目の同期点4の待ち状態に入る。このとき、そのドライバでは、同期待ちカウンタを3から1インクリメントして、4とする。また、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。
いずれかのドライバで第2目標トルクまでのトルクアップ動作が完了すること(すなわち、偶数ライン出力のオン状態からオフ状態への切り替えと、奇数ライン出力のオフ状態からオン状態への切り替え)により、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。なお、この同期待ち状態では、ドライバは増加した出力トルク(第2目標トルク)を維持する。
すべてのドライバで第2目標トルクまでのトルクアップ動作が完了することにより、奇数ワイヤードORラインOR1はオン状態のままであるが、偶数ワイヤードORラインOR2はオン状態からオフ状態に切り替わる。
各ドライバは、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わったことにより、同期点4を設定する。
同期点4を設定した各ドライバは、すぐにトルクアップ動作を開始する。出力トルクが最終目標トルクまで到達したドライバでは、次の奇数番目の同期点5の待ち状態に入る。このとき、そのドライバでは、同期待ちカウンタを4から1インクリメントして、5とする。また、偶数ライン出力をオフ状態からオン状態に切り替え、奇数ライン出力をオン状態からオフ状態に切り替える。
いずれかのドライバで最終目標トルクまでのトルクアップ動作が完了すること(すなわち、偶数ライン出力のオフ状態からオン状態への切り替えと、奇数ライン出力のオン状態からオフ状態への切り替え)により、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。一方、奇数ワイヤードORラインOR1はオン状態のままである。なお、この同期待ち状態では、ドライバは増加した出力トルク(最終目標トルク)を維持する。
すべてのドライバで最終目標トルクまでのトルクアップ動作が完了することにより、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。
各ドライバは、奇数ワイヤードORラインOR1がオン状態からオフ状態に切り替わったことにより、同期点5を設定する。
同期点5を設定した各ドライバは、同期待ちカウンタのカウント値を0にリセットする。さらに、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。これにより、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わり、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。これらの動作は、前述した初期化動作である。こうして一連のねじ締め動作が完了する。
なお、本実施例では、ねじ締め動作の終了により初期化動作を行うが、開始コマンド待ち中に初期化動作を行うようにしてもよい。
また、本実施例における同期とりに関する動作を制御するためのコンピュータプログラムは、実施例1で図7A〜図7Cを用いて説明したものと同じである。
本実施例によれば、2本のワイヤードORラインに各ドライバを接続するだけで同期回路が構成でき、ドライバの数も任意に選択することができる。さらに、同期待ち状態に入ったタイミングで2本のワイヤードORラインの状態をそれぞれ反転させ、奇数回目の同期点と偶数回目の同期点とで同期判定に使用するワイヤードORラインを切り替えることにより、2本のワイヤードORラインを設けるだけで多数のドライバの同期とりを行える。したがって、同期回路を簡単かつ安価に構成することができる。しかも、同期制御のために、複雑な判定フローが必要ないので、同期判定処理を高速に行うことができる。
なお、上記実施例1,2では、奇数および偶数ワイヤードORラインを1本ずつ設けた場合について説明したが、奇数および偶数ワイヤードORラインのうち少なくとも一方を複数本設けてもよい。この場合、奇数又は偶数のうち何回目の同期点かに応じて1本ずつ交替で該複数のワイヤードORラインを使用すればよい。
また、いずれかのドライバに異常が検出されたことを全ドライバに伝えるために、奇数および偶数ワイヤードORライン以外にワイヤードORラインを追加してもよい。
さらに、上記実施例1,2では、7つ又は5つの同期点を設定する場合について説明したが、本発明において同期点の数はこれに限られない。
上記実施例1,2では、奇数および偶数ワイヤードORラインを用いてねじ締めドライバの同期制御を行う場合について説明したが、同様の同期制御を、ねじ締めドライバ以外のモータ駆動装置にも適用することができる。
図9には、本発明の実施例3であって、対象物(ロボットアーム、位置決めテーブル等)Pを4軸(X,Y,Zおよびθ軸)で位置制御するための同期制御システムを示している。図9において、実施例1と共通する構成要素には実施例1と同符号を付す。本実施例では、実施例1におけるねじ締めドライバに代えて、X,Y,Zおよびθ軸駆動用のモータMX,MY,MZ,Mθを同期制御する。
図10には、本実施例の制御手順と動作タイミングとを示している。本実施例では、実施例2と同様に、同期後の全モータの動作を同時に開始する場合について説明する。
図10中の(a)〜(d)は各軸モータの動作状態と、各軸モータに対して設けられたサーボコントローラSCにおける偶数および奇数ラインの出力状態とを示している。なお、以下の説明では、各軸のサーボコントローラSCとモータとを含めてサーボコントローラSCと称する。
さらに、図10(e)は偶数ワイヤードORラインOR2と奇数ワイヤードORラインOR1の状態を示している。また、(f)には、全サーボコントローラSCの状態を示す。
本実施例でも、負論理を使用するため、信号レベルが高い方がオフ状態(非アクティブ又はHレベル)を、信号レベルが低い方がオン状態(アクティブ又はLレベル)を示す。
メインコントローラMCからの起動待機信号が各サーボコントローラSCに送信されると、各ドライバでは、メインコントローラMCからの連続位置決め動作の開始コマンド待ち状態となる。なお、この開始コマンド待ち状態では、後述する初期化動作によって、すべてのサーボコントローラSCの偶数ライン出力はオフ状態に、奇数ライン出力はオン状態になっている。これにより、偶数ワイヤードORラインOR2はオフ状態に、奇数ワイヤードORラインOR1はオン状態になっている。
また、各サーボコントローラSCは、同期待ち状態になった回数をカウントするカウンタ機能を有する。後述する初期化動作によってこの同期待ちカウンタは0にセットされている。なお、メインコントローラMCも、同期待ちカウンタ機能を有してもよいし、各サーボコントローラSCからの通信によりこのカウント値の情報を受け取ってもよい。
そして、メインコントローラMCから各サーボコントローラSCに開始コマンドが送信され、各サーボコントローラSCで受信すると、各サーボコントローラSCは、同期待ちカウンタを0から1インクリメントする。また、偶数ライン出力をオン状態に、奇数ライン出力をオフ状態に切り替える。図10では、メインコントローラMCからの開始コマンドの送信時間差や各サーボコントローラSCの動作特性等のばらつきに起因して、各サーボコントローラSCの開始コマンド待ち状態の終了に時間差が生じている様子を示す。
サーボコントローラSCのうちいずれかが開始コマンド待ち状態を終了し、そのサーボコントローラSCの偶数ライン出力がオン状態になると、奇数ワイヤードORラインOR1はオン状態のままであるが、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。
そして、すべてのサーボコントローラSCの開始コマンド待ち状態が完了すると、偶数ワイヤードORラインOR2はオン状態のまま、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。
各サーボコントローラSCは奇数ワイヤードORラインOR1がオン状態からオフ状態となった時点を奇数番目の同期点(ここでは、同期点1)に設定する。
そして、各サーボコントローラSCは、同期点1の設定の直後にモータを回転させ、第1座標(x1,y1,z1,θ1)への対象物Pの駆動を開始する。図10では、各軸での駆動量の違いから駆動終了までに時間差があることを示している。
第1座標への駆動が終了したサーボコントローラSCは、次の偶数番目の同期点2の待ち状態に入る。このとき、そのサーボコントローラSCでは、同期待ちカウンタを1から1インクリメントして、2とする。さらに、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。
いずれかのサーボコントローラSCの駆動終了により、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。
そして、全てのサーボコントローラSCで第1座標への駆動が終了すると、奇数ワイヤードORラインOR1はオン状態のままであるが、偶数ワイヤードORラインOR2はオン状態からオフ状態に切り替わる。
各サーボコントローラSCは、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わったことにより、同期点2を設定する。そして、第2座標(x2,y2,z1,θ1)への対象物Pの駆動を開始する。なお、ここでは、X軸とY軸のみ駆動し、Z軸とθ軸については静止する場合を示している。
第2座標への駆動が終了したサーボコントローラSCでは、次の奇数番目の同期点3の待ち状態に入る。また、静止しているZ軸とθ軸のサーボコントローラSCは、同期点2から所定時間経過後に同期点3の待ち状態に入る。同期点3の待ち状態に入ったサーボコントローラSCでは、同期待ちカウンタを2から1インクリメントして、3とする。また、偶数ライン出力をオフ状態からオン状態に切り替え、奇数ライン出力をオン状態からオフ状態に切り替える。
いずれかのサーボコントローラSCで同期待ち状態となることにより、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。一方、奇数ワイヤードORラインOR1はオン状態のままである。
すべてのサーボコントローラSCが同期待ち状態となることにより、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。
各サーボコントローラSCは、奇数ワイヤードORラインOR1がオン状態からオフ状態に切り替わったことにより、同期点3を設定する。そして、第3座標(x3,y2,z1,θ3)への対象物Pの駆動を開始する。なお、ここでは、X軸およびθ軸のみ駆動し、Y軸およびZ軸については静止する場合を示している。
第3座標への駆動が終了したサーボコントローラSCでは、次の偶数番目の同期点4の待ち状態に入る。また、静止しているY軸およびZ軸のサーボコントローラSCは、同期点3から所定時間経過後に同期点4の待ち状態に入る。同期点4の待ち状態に入ったサーボコントローラSCでは、同期待ちカウンタを3から1インクリメントして、4とする。さらに、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。
いずれかのサーボコントローラSCで同期待ち状態となることにより、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。すべてのサーボコントローラSCが同期待ち状態となることにより、奇数ワイヤードORラインOR1はオン状態のままであるが、偶数ワイヤードORラインOR2はオン状態からオフ状態に切り替わる。
各サーボコントローラSCは、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わったことにより、同期点4を設定する。そして、最終座標(x3,y3,z4,θ3)への対象物Pの駆動を開始する。なお、ここでは、Z軸のみ駆動し、X軸,Y軸,θ軸については静止する場合を示している。
最終座標への駆動が終了したZ軸のサーボコントローラSCでは、次の奇数番目の同期点5の待ち状態に入る。また、静止しているX軸,Y軸,θ軸のサーボコントローラSCは、同期点4から所定時間経過後に同期点5の待ち状態に入る。同期点5の待ち状態に入ったサーボコントローラSCでは、同期待ちカウンタを4から1インクリメントして、5とする。また、偶数ライン出力をオフ状態からオン状態に切り替え、奇数ライン出力をオン状態からオフ状態に切り替える。
いずれかのサーボコントローラSCで同期待ち状態となることにより、偶数ワイヤードORラインOR2はオフ状態からオン状態に切り替わる。一方、奇数ワイヤードORラインOR1はオン状態のままである。
すべてのサーボコントローラSCが同期待ち状態となることにより、偶数ワイヤードORラインOR2はオン状態のままであるが、奇数ワイヤードORラインOR1はオン状態からオフ状態に切り替わる。
各サーボコントローラSCは、奇数ワイヤードORラインOR1がオン状態からオフ状態に切り替わったことにより、同期点5を設定する。同期点5の設定を検出したメインコントローラMCは、連続移動終了コマンドを各サーボコントローラSCに送信する。
該終了コマンドを受けた各サーボコントローラSCは、同期待ちカウンタのカウント値を0にリセットする。また、偶数ライン出力をオン状態からオフ状態に切り替え、奇数ライン出力をオフ状態からオン状態に切り替える。これにより、偶数ワイヤードORラインOR2がオン状態からオフ状態に切り替わり、奇数ワイヤードORラインOR1はオフ状態からオン状態に切り替わる。これらの動作は、前述した初期化動作である。こうして一連の連続位置決め動作が完了する。
なお、本実施例では、連続位置決め動作の終了により初期化動作を行うが、開始コマンド待ち中に初期化動作を行うようにしてもよい。
また、本実施例における同期とりに関する動作を制御するためのコンピュータプログラムは、実施例1で図7A〜図7Cを用いて説明したものと同じである。
本実施例によれば、2本のワイヤードORラインに各サーボコントローラSCを接続するだけで同期回路が構成でき、駆動軸数も任意に選択することができる。また、同期待ち状態に入ったタイミングで2本のワイヤードORラインの状態をそれぞれ反転させ、奇数回目の同期点と偶数回目の同期点とで同期判定に使用するワイヤードORラインを切り替えることにより、2本のワイヤードORラインを設けるだけで多数のサーボコントローラSCの同期とりを行える。したがって、同期回路を簡単かつ安価に構成することができる。また、しかも、同期制御のために、複雑な判定フローが必要ないので、同期判定処理を高速に行うことができる。
なお、本実施例では、奇数および偶数ワイヤードORラインを1本ずつ設けた場合について説明したが、奇数および偶数ワイヤードORラインのうち少なくとも一方を複数本設けてもよい。この場合、奇数又は偶数のうち何回目の同期点かに応じて1本ずつ交替で該複数のワイヤードORラインを使用すればよい。
また、いずれかの駆動軸に異常が検出されたことを全駆動軸(サーボコントローラSC)に伝えるために、奇数および偶数ワイヤードORライン以外にワイヤードORラインを追加してもよい。
さらに、本実施例では、5つの同期点を設定する場合について説明したが、本発明において同期点の数はこれに限られない。
上述した実施例1,2のように段階的な締め付けトルクアップ制御を行っていくことによりワークの傾き等を防止できるようにするためには、実際のねじ締めドライバがその回転角度にかかわらず、モータ電圧又はモータ電流指令値(トルク指令値)に対応した出力トルク(締め付けトルク)を正確に発生することが前提となる。
しかし、ねじ締めドライバの駆動源であるモータのコギングトルク(コアの透磁率のむら、モータを構成する部品の寸法誤差や組立誤差に起因するトルク変動)が、ねじ締めドライバの締め付けトルク変動として表れることが多い。しかも、モータ巻線の巻きむら等に起因してモータMのトルク変動の大きさがトルク指令値(モータ印加電圧やモータ印加電流)の大きさによって変化する場合がある。
このため、指令値に対するねじ締めドライバの実際の締め付けトルクを全回転角度について測定し、回転角度によって締め付けトルクに変動がある場合には、これを抑えるようにドライバに与えるトルク指令値を補正することが必要となる。
そこで、本実施例では、ねじ締めドライバの所定回転角度ごとの出力トルクを自動的に測定するための測定装置について説明する。
図11および図12には、本実施例のトルク測定装置の外観図およびブロック図を示している。これらの図において、10は基台であり、この基台10には、ステッピングモータ11と、該モータ11により駆動される回転機構12とが取り付けられている。
回転機構12は、その上端に軸18によって支持された回転テーブル13を有する。回転機構12は、その下端に設けられた回転入力のためのプーリ12aと、該プーリ12aから入力された回転を回転テーブル13に減速して伝達する不図示のハーモニックドライブ(登録商標)とを有する。
プーリ12aとモータ11の出力軸に取り付けられたプーリ11aとの間にはベルト11bが巻き掛けられている。このため、モータ11が回転すると、第1の減速機構としてのベルト11bおよびプーリ11a,11bによる減速と第2の減速機構としてのハーモニックドライブによる減速を経て回転テーブル13が軸18を中心に回転する。ハーモニックドライブのプーリ−ベルト機構よりも大きな減速機能により、プーリ−ベルト機構による減速を経たステップ角よりもさらに細かい回転テーブル13の回転角度分解能を得ることができる。なお、第1の減速機構としては、上述したプーリ−ベルト機構以外のギア機構やローラ機構でもよいが、バックラッシや滑りがきわめて小さい機構を選択すべきである。
17は基台10に固定された回転角センサであり、回転テーブル13の回転角度を検出する。回転テーブル13の下面には、回転角センサ17の上面に対向するようにリング状のパルス板が貼り付けられている。回転角センサ17は、該パルス板に光を照射し、パルス板からパルス状に反射してくる光を受けてパルス信号を出力する。なお、回転角センサ17としては、このような光学式のセンサ以外の検出方式のセンサを用いてもよい。回転角センサ17からの出力信号は、後述するパーソナルコンピュータ30に入力される。
Dは測定対象のねじ締めドライバであり、基台10に設けられた昇降機構10aの昇降台10bに固定されている。
回転テーブル13には、保持部材14を介してトルクセンサ15が固定されている。トルクセンサ15には、カップリング16を介してねじ締めドライバDのビットBが結合されている。トルクセンサ15は、ビットBから受けたトルクに応じた電気信号を出力する。トルクセンサには、歪みゲージ式、磁歪効果式、位相差検出方式、機械的反力式、接触型、非接触型等、様々なタイプがあるが、本実施例および本発明で用いるトルクセンサのタイプはいずれのものでもよい。
ここで、図11には示していないが、図12中の括弧内に示すように、トルクセンサ15の上方にカップリング16を介して軸力センサとしてのロードセル19を設けてもよい。ロードセル19は、ドライバDによって締め付けられたねじSRに発生する軸力(ねじ軸力)を検出する。ロードセル19についても、トルクセンサ15と同様にそのタイプは問わない。
33,34は表示器であり、それぞれトルクセンサ15およびロードセル19からの検出信号を後述するパーソナルコンピュータ30に受け渡すとともに、該検出信号を数値信号に変換してトルク値および軸力値を数値として表示する。
図12に示すように、この測定装置およびねじ締めドライバDは、パーソナルコンピュータ30、モータ制御ユニット31およびねじ締め制御ボード32を含むコントローラによって制御されることで、測定動作を行う。
モータ制御ユニット31は、パーソナルコンピュータ30からの指令に従ってモータ11の回転を制御する。
また、ねじ締め制御ボード32は、実施例1,2で説明したサーボコントローラ32のモータ制御部C2に使用されるものと同一のものである。
なお、後述する実施例のように、実際にねじ締めシステムで使用されるモータ制御部C2には、本実施例の測定装置で測定したトルク特性(トルク変動)に基づいてトルク指令値を補正する機能が付加されることになるが、該機能によるトルク補正効果を確かめる場合には、ねじ締め制御ボード32として該機能を付加したものが用いられる。
次に、上記のように構成されたトルク測定装置の測定動作について、図13を用いて説明する。図13は、トルク測定装置を制御するパーソナルコンピュータ30の動作フローチャートである。また、ここでは、トルクセンサ15に加えて、ロードセル19を設けた場合の動作について説明する。
測定動作がスタートすると、パーソナルコンピュータ30は、まずステップ(図ではSと略記する)120で、モータ制御ユニット31を介してモータ11を駆動し、回転テーブル13をθ=0の原点位置にセットする。このとき、パーソナルコンピュータ30の内部に設けられた回転角カウンタ(図示せず)を0にリセットする。
次に、ステップ121では、ロードセル19上に予めセットされたねじSRが着座しているかどうかを確認する。この着座確認は、実施例1で説明した着座検出方法を用いればよい。
次に、ステップ122では、ねじ締め制御ボード32に対してトルク指令を出力する。トルク指令は、実際のねじ締めシステムにおいてねじSRの締め付けに用いられる範囲内で適宜選択可能である。例えば、実施例1,2で説明した最終目標トルクに対応するトルク指令を選択してもよい。
回転テーブル13が少なくとも1周(360°回転)する間のトルク指令は同一とされる。トルク指令を受けたねじ締め制御ボード32は、ドライバDのモータMにトルク指令に応じた電圧を印加し、ビットBに回転力(締め付けトルク)を発生させる。
次に、ステップ123では、ロードセル19からの検出信号により表されるねじ軸力値とトルクセンサ15からの検出信号により表されるトルク値とを、パーソナルコンピュータ30内のメモリに、回転角カウンタのカウンタ値とともに記録する。
原点位置での測定を行った場合は、ねじ軸力をSF、締め付けトルクをTSとすると、例えば、0.00°:SF,TSのように記録する。
次に、ステップ124では、回転角カウンタのカウント値が測定終了角度(例えば、360°)か否かを判別する。測定終了角度に達していない場合は、ステップ125に進み、所定回転角度だけ回転テーブル13(つまりはトルクセンサ15およびこれにカップリングされているビットB)を回転させるようモータ制御ユニット31に指令を出す。ここにいう所定回転角度は、予め測定者が任意に設定できる。
そして、ステップ122に戻り、回転後の角度でのねじ軸力および締め付けトルクの測定と記録を行う。こうして、回転角カウンタのカウント値が測定終了角度に達するまで回転テーブル13の回転とねじ軸力および締め付けトルクの測定記録を繰り返し、測定終了角度に達するとステップ126に進む。
ステップ126では、原点位置から繰り返された一連の測定の結果を集計し、グラフ形式等で不図示のモニタに表示する。以上により、ドライバDの少なくとも1回転中のねじ軸力と締め付けトルクの変動を測定する動作を終了する。
なお、ここでは、各回転角度において、1つのトルク指令に対するねじ軸力および締め付けトルクの測定を行う場合について説明したが、図13のステップ128に示すように、1つの回転角度においてトルク値を段階的に(例えば、実施例1で示した第1目標トルクから最終目標トルクに段階的に)増加させながらステップ122とステップ123とを繰り返し行うようにしてもよい。これにより、モータMのトルク変動の大きさがトルク指令値(モータ印加電圧やモータ印加電流)の大きさによって変化するような場合に、各トルク指令値でのドライバDのトルク変動を測定することができる。
図14には、上記トルク測定装置で1回転分の締め付けトルクの変動を測定した結果を示す。図14では、回転テーブル13を、360°を2047等分した角度(約0.176°)ずつ回転させて締め付けトルクを測定した場合を示している。図中のTIはトルク指令値である。
本実施例によれば、ドライバDの1回転を極めて多数の回転角度に分割した場合でも、回転角度ごとの締め付けトルクおよびねじ軸力の高精度な測定と記録を自動的に行い、さらにはその結果の集計および表示までも自動的に行う。このため、回転角度ごとに手作業でセッティングを行っていた従来の測定手法に比べて、短時間で、しかも大幅に細かい分解能で、さらには精度良く測定と結果表示を行うことができる。
また、トルクセンサ15とともにロードセル19を設けることにより、締め付けトルクの測定と同時にその締め付けトルクにより発生するねじ軸力の測定を行うことができる。ねじに加える締め付けトルクと該ねじに発生する軸力との関係は、計算により推定することもできるが、実際に発生しているねじ軸力を測定することで、ねじ締めシステムにおける締め付けトルクの設定や管理をより精密に行うために有効に生かすことができる。
なお、本実施例では、ねじ締めドライバの締め付けトルクを測定する場合について説明したが、本発明のトルク測定装置は、ねじ締めドライバ以外のモータを駆動源とするモータ駆動装置やモータ単体の出力トルク測定にも使用することができる。
上述した実施例4の冒頭でも説明した通り、実施例1,2のような段階的な締め付けトルクアップ制御を行っていくことによりワークの傾きを防止するためには、実際のねじ締めドライバがその回転角度にかかわらず、モータ電圧指令値(トルク指令値)に対応した出力トルクを正確に発生することが必要である。
しかし、ねじ締めドライバの駆動源であるモータのコギングトルク(コアの透磁率のむら、モータを構成する部品の寸法誤差や組立誤差に起因するトルク変動)が、ねじ締めドライバの締め付けトルク変動として表れることが多い。しかも、モータ巻線の巻きむら等に起因してモータMのトルク変動の大きさがトルク指令値(モータ印加電圧やモータ印加電流)の大きさによって変化する場合がある。
そこで、本実施例では、実施例4に示したトルク測定装置を用いて複数レベルのトルク指令値に対する締め付けトルク変動を測定し、該測定結果に基づいて、各トルクレベルでの締め付けトルクの変動をきわめて細かい回転角度ごとに補正できるようにしたねじ締め装置について説明する。
図15には、本発明の実施例5であるねじ締めシステムの一部の構成を示している。
81はサーボコントローラSCに設けられたトルクアップ制御部である。該トルクアップ制御部81には、実施例1で説明したように、メインコントローラMCから送信された指令データとしてのトルク指令値T(t)のマップがメモリに保存されている。なお、図15には、連続的にトルク値が増加するトルク指令値マップを示しているが、実際には実施例1,2で説明した各同期点を待って段階的にトルク値が増加するようなマップである。
以下に説明する補正データメモリ82,83,84、補間演算部86、加算器87、トルク制御部88およびアンプAは、サーボコントローラSCのモータ制御部C2(図2参照)内に設けられる。
補正データメモリ82,83,84には、後述する補正データ群としてのトルク補正テーブルが記憶されている。
メモリ82に記憶されているトルク補正テーブルHは、トルク指令値T(t)として大きいレベルのトルク指令値TH(例えば、実施例1,2の最大目標トルク値Tmax)がトルクアップ制御部81からサーボコントローラSCに入力された場合に該トルク指令値を補正するための補正データテーブルである。
このトルク補正テーブルHの作成方法について、図16Aを用いて説明する。まず、実施例4で説明したトルク測定装置を用いて、トルク指令値THをドライバDに指令したときの締め付けトルクをドライバDの所定回転角度ごとに複数回測定する(ステップ〈図ではSと略記する〉201)。そして、その複数回の測定結果(図14参照)を平均化したり、最小二乗法による多項式近似を行ったりして代表的なトルク変動データを得る(ステップ202)。これにより、ドライバDの駆動源であるモータM固有のトルク変動成分以外のノイズ成分の影響を除去したトルク変動データを得ることができる。ノイズ成分としては、例えば、ドライバDが減速ギアを有する場合のギアの摩擦変動によるトルク変動成分がある。なお、最小二乗法は、測定値とモデル関数値の差の二乗和が最小となるようなモデル関数の係数を決定する手法である。
そして、得られた代表トルク変動データとトルク指令値THとの差分をドライバDの回転角度ごとに求める(ステップ203)。そして、その差の値がプラスである場合はマイナスの同じ値が、差の値がマイナスである場合はプラスの同じ値がその回転角度での補正値となる。こうしてすべての回転角度について補正値を求め、回転角度に応じた補正値のテーブルとしてトルク補正テーブルHを作成する(ステップ204)。そして、作成したトルク補正テーブルHを、補正データメモリ82に記憶させる(格納する)(ステップ205)。
なお、このトルク補正テーブルは、実施例4に示したパーソナルコンピュータ30によって自動作成されるようにしてもよい。また、トルク補正テーブルは、上述した方法以外の方法を用いて作成してもよい。例えば、トルク変動の測定結果から得られた最大トルク値と最小トルク値の平均トルク値を求め、その平均トルク値と代表トルク変動データの回転角度ごとの値との差分をとり、その差の値の符号を反転させることで、トルク補正テーブルを作成してもよい。
メモリ83に記憶されているトルク補正テーブルLは、トルク指令値T(t)として小さなレベルのトルク指令値TL(例えば、実施例1,2の第1目標トルク値)がトルクアップ制御部81からサーボコントローラSCに入力された場合に該トルク入指令値を補正するための補正データテーブルである。
さらに、メモリ84に記憶されているトルク補正テーブルMLは、トルク指令値T(t)として中間レベルのトルク指令値TML(例えば、最大目標トルク値Tmaxと第1目標トルク値との間のトルク値)がトルクアップ制御部81から出力された場合に該トルク入指令値を補正するための補正データテーブルである。これらトルク補正テーブルL,MLの作成方法は、先に説明したトルク補正テーブルHと同様である。
本実施例では、3つのトルク指令値に対するトルク補正テーブルH,L,MLを用意するため、実施例4で説明したトルク測定装置によって該3つのトルク指令値に対する締め付けトルクの測定が必要である。
トルク補正テーブルH,L,MLの例を図16Bに示す。この図に示す各トルク補正テーブルの値は、ドライバDの回転角度に応じて、0を境にプラス側とマイナス側とに変化している。また、各トルク補正テーブルの値は、線形でもきれいな正弦波形状でもなく、複雑な形状を呈するように変化している。
補間演算部86には、トルクアップ制御部81からトルク指令値T(t)が入力されるとともに、ドライバDのモータMの回転角度を検出するためのエンコーダE(タコジェネレータでもよい)からの信号が入力される。
補間演算部86は、3つのトルク補正テーブルH,L,MLのうち、入力されたトルク指令値T(t)に一致するトルク指令値用の補正データテーブル若しくは入力されたトルク指令値T(t)が間に入る2つのトルク指令値用の2つの補正データテーブルを選択する。図15には、入力されたトルク指令値T(t)がトルク指令値THとTMLとの間に入る値であるためにトルク補正テーブルH,MLを選択した場合を示す。
そして、補間演算部86は、選択したトルク補正テーブルから、エンコーダEを通じて検出したドライバDの回転角度に対応する補正値を読み出す。選択した補正データテーブルがトルク指令値T(t)に一致するトルク指令値用のものであれば、そのまま読み出した補正値を出力する。また、2つのトルク補正テーブルを選択し、これらから2つの補正値を読み出した場合は、これら2つの補正値から補間演算によってトルク指令値T(t)用の補正値を求める(図16Aのステップ206)。
図15には、トルク補正テーブルH,MLから読み出された2つの補正値CH(θ),CML(θ)を用いた線形補間によって、トルク指令値T(t)に対する補正値Cを算出する例を示している。
具体的には、まず、T(t)>TMLの場合は、トルク補正テーブルH,MLを選択し、CH(θ),CML(θ)を読み出す。
そして、CH(θ)とCML(θ)の比例配分により、
C={CH(θ)−CML(θ)}/(TH−TML)×(T(t)−TML)+CML(θ)
から補正値Cを計算する。
T(t)<TMLの場合は、トルク補正テーブルML,Lを選択し、CML(θ),CL(θ)を読み出す。
そして、CML(θ)とCL(θ)の比例配分により、
C={CML(θ)−CL(θ)}/(TML−TL)×(T(t)−TL)+CL(θ)
から補正値Cを計算する。なお、T(t)がTH,TML,TLのいずれかに一致する場合でも、上記線形補間の式に当てはめて補正値を計算してもよい。
ここで、補正値Cの算出についても上記のような線形補間方式に限らない。例えば、3点(TL,CL(θ)),(TML,CML(θ)),(TH,CH(θ))を通る二次式やそれ以上の高次式を用いて補間してもよい。
また、THがねじ締め時の最大トルク指令値より小さい場合やTLがねじ締め時の最小トルク指令値(第1目標トルク値)より大きい場合には、上述した内挿補間法ではなく、外挿補間法によって補正値Cを求めてもよい。
さらに、本実施例では、3つのトルク指令値に対するトルク補正テーブルH,L,MLを用意する場合について説明したが、本発明では、2つ又は4つ以上のトルク指令値に対するトルク補正テーブルを用意してもよい。4つ以上のトルク補正テーブルを用意する場合においても、入力されたトルク指令値T(t)が間に入る2つのトルク指令値用の補正テーブルを用いた内挿補間若しくは外挿補間によって補正値Cを求めることができる。このように多数の補正テーブルを用意することで、トルク指令値(モータ印加電圧)と出力トルクとの関係において非線形性が強い場合でも良好にトルク変動を小さくすることができる。
このようにして得られた補正値Cは、補間演算部86から出力され、加算器87において、トルクアップ制御部81から入力されたトルク指令値T(t)に加算される(図16Aのステップ207)。そして、補正後のトルク指令値T′(t)(=T(t)+C)は、トルク制御部88に入力される。
トルク制御部88は、補正トルク指令値T′(t)に応じた電圧をアンプAに出力し、アンプAで増幅された電圧がモータMに印加される。これにより、ドライバDは本来のトルク指令値T(t)に対応した締め付けトルクを発生できる。すなわち、モータMのコギングトルクやコアの透磁率のむら、モータMを構成する部品の寸法誤差や組立誤差に起因するねじ締めドライバの締め付けトルク変動を良好に補正できる。
そして、以上のようなトルク指令値T(t)の補正をドライバDの回転角度ごとに行うことで、ドライバDの回転角度の変化に伴うトルク変動を小さくすることができ、安定的にトルク指令値T(t)に対応した締め付けトルクを発生することができる。
さらに、本実施例では、補正値Cをトルク指令値のレベルに応じて最適化するため、広いトルクレベル範囲でトルク変動を小さくすることができる。
図17には、本実施例にて説明した方法によりねじ締めドライバのトルク変動を補正した場合の例(イメージ図)を示す。図17において、TA,TB,TCは任意のトルク指令値を示し、TA>TB>TCの関係にある。
図中のJは、トルク指令値TA,TB,TCに対する実際のねじ締めドライバで発生した締め付けトルクの測定データを平均化又は最小二乗法で近似したデータ示す。また、図中のKは本実施例の方法で補正されたトルク指令値に対するねじ締めドライバで発生した締め付けトルクの測定データを平均化又は最小二乗法で近似したデータ示す。いずれもの測定データも実施例4のトルク測定装置で測定したデータである。
図17から分かるように、トルク指令値を補正する前の締め付けトルクJは、そのトルク指令値のレベルが大きいほど変動量が大きい。また、変動の仕方は複雑である。
これに対し、補正後のトルク指令値に対する締め付けトルクKは、いずれのトルクレベルでも変動量が抑えられ、安定的にトルク指令値TA,TB,TCに近い締め付けトルクを発生している。
したがって、本実施例によれば、実施例1,2のねじ締めシステムにおいても、確実にトルク指令値(第1〜最終目標トルク値)に対応した締め付けトルクでねじSRを締め付けることができる。
なお、本実施例では、ねじ締めドライバのトルク変動補正について説明したが、本発明は、ねじ締めドライバ以外でも、正確なトルク制御が必要な、モータを駆動源とするモータ駆動装置又はモータ単体にも適用できる。
さらに、トルク制御だけでなく、速度制御や位置制御をモータを駆動源として行う場合に、モータのコギングトルクに起因した振動を抑制する目的で本発明を使用することができる。
さらに、本発明は、ブラシモータやブラシレスモータといった回転型モータに限らず、直進駆動力を発生するリニアモータに対して正確な駆動力制御を行う目的でも適用できる。
なお、本実施例では、ドライバDに固有の補正データを格納した補正データメモリ82〜84を、ドライバDとセット(対)で設けられているサーボコントローラSC内に設けている。これにより、ねじ締めシステムにおいて、ドライバDとサーボコントローラSCの交換が必要な場合でも、新しく実装されるドライバDとセットのサーボコントローラSCに該ドライバDに固有の補正データを記憶させておけば、迅速に対応することができる。
また、補正データメモリ82〜83をサーボコントローラSC内ではなく、ドライバDに一体的に設けてもよい。この場合、ドライバDのみの交換にも迅速に対応できる。
さらに、サーボコントローラSC内に、識別番号等で識別可能な複数のドライバDに対応する複数の補正データテーブルを記憶したメモリを用意しておき、使用するドライバDの識別番号を補間演算部86に入力すると、該ドライバD用の補正データテーブルが自動的に選択されるようにしてもよい。
図18には、本発明の実施例6であるねじ締めドライバ(ねじ締め装置)を示している。先の実施例1,2,4,5では、例えばハードディスク装置等の製品の組立て時におけるねじ締めに使用されるねじ締めドライバの制御方法および締め付けトルク変動の補正方法等について説明した。
しかし、近年のコンピュータおよびその周辺機器の小型化に伴い、ハードディスク装置等の製品にもより小型化が求められている。そして、製品の小型化のために、その組立てに使用されるねじもより微細化してきている。
本実施例では、実施例1,2,4,5において説明したねじ締めドライバとして用いられるだけでなく、より微細化したねじの締め付けにも適用可能なねじ締めドライバについて説明する。以下の説明において、図18における上側をねじ締めドライバの上側といい、図18における下側をねじ締めドライバの下側という。
図18において、Dはねじ締めドライバであり、91はギアボックスである。ギアボックス91の上面には、モータMが固定されている。モータMの出力軸に一体に取り付けられた出力ギア91aは、ギアボックス91内に突出している。
ギアボックス91内には、出力ギア91aに大径ギア部が噛み合う二段ギア91bと、該二段ギア91bの小径ギア部に噛み合うアイドラギア91cとが配置されている。
92aは、図1にも符号BDで示すビット駆動部の本体部分を構成する外筒部材である。外筒部材92aの内部には、上下方向に延びる出力軸93が配置されている。
出力軸93は、その上下に軸部93bを有し、これら軸部93bの間(上下方向中間部)に被駆動ギア93aを有する。被駆動ギア93aは、上下方向に延びるギア歯を有し、アイドラギア91cに噛み合う。本実施例では、軸部93bと被駆動ギア93aとを一体形成した出力軸93を用いている。但し、被駆動ギア93aと軸部93bとを別々に製作し、軸部93bを被駆動ギア93aに圧入等して一体化してもよい。
出力軸93の上下の軸部93bは、ギアボックス91における外筒部材92aとの連結部分の内周に固定された2つの玉軸受け94a,94bにより回転自在に支持されている。軸部93bの下端には、ねじ締め用ビットBが一体回転可能に、かつ着脱可能に連結されている。
ここで、被駆動ギア93aの上下方向の長さ(厚さ)は、アイドラギア91cよりも大きく設定されている。これは、ねじ締め時においてビットBとねじのリセスとの係合を維持するために、被駆動ギア93aとアイドラギア91cとの噛み合いを維持しつつ、ビットBおよび出力軸93が外筒部材92aおよびギアボックス91に対して図中に矢印Vで示すように上下方向に移動可能とするためである。つまり、出力軸93の上下動にかかわらず、モータMから出力軸93への回転力伝達を可能とするためである。具体的には、被駆動ギア93aの厚さは、締め付けるねじの長さ寸法+アイドラギア91cの厚さ以上に設定される。
また、外筒部材92aの下部には、ビットBの外周を囲むスリーブ98が上下動可能に嵌め込まれている。スリーブ98は、その上端と外筒部材92aの内周部において下側の玉軸受け94bを支持するフランジ部との間に配置されたスリーブ押しばね92dによって下方に付勢されている。
また、スリーブ98の下部側壁には、負圧接続部材98aが設けられている。この負圧接続部材98aには不図示の真空ポンプからのホースが接続される。スリーブ98の下端部にねじ頭を収容させた状態でスリーブ98内を負圧状態とすることにより、ビットBにねじのリセスを係合させ、該ねじを吸着することができる。
前述したように、本実施例においては被駆動ギア93aを出力軸93に一体形成又は圧入により一体化している。これは、以下の理由による。被駆動ギア93aと出力軸93とをスプライン結合によって相対移動可能に構成するためには、軸部93bにある程度の径がないと、軸部93bにスプライン結合のためのキー溝を形成することが困難である。仮に形成できたとしても、精度の高い形状とし、偏芯回転やトルク変動を小さく抑えることは難しい。しかも、軸部93bの径が細いと、被駆動ギア93aとスプライン結合させたとしても、被駆動ギア93aから軸部93bへの十分な大きさのトルク伝達が行えない可能性が高い。
被駆動ギア93aを出力軸93に一体化し、被駆動ギア93aのアイドラギア91cに対するスライドを可能とした本実施例によれば、軸部93bの径が細くても製作および精度出しが容易であるとともに、十分な大きさのトルク伝達も可能である。
微細ねじの締め付けに使用するドライバでは、ビットBの径が細く、また締め付けるねじ間のピッチも狭くなるため、出力軸93(軸部93b)の径も細くしてドライバD(特に、外筒部材92aの径)を細くする必要がある。本実施例の構成によれば、このような要求を満たした上で、さらに微細ねじを所望のトルクで偏芯やトルク変動が小さいビット回転によって締め付けることができる。
一方、軸部93bのうち被駆動ギア93aの上方の部分には、図19に詳しく示すように、ベアリング95を介してばね受け部材96が取り付けられている。
ばね受け部材96は、ベアリング95の外周部を保持する大径円筒部96aと、該大径円筒部96aの下端部に径方向外側に延びるように形成されたフランジ部96bと、大径円筒部96aの上側に形成された小径円筒部96cとを有する。
ベアリング95は、軸部93bに設けられた段部によって、軸部93bに対する下方への移動が阻止されている。このため、ばね受け部材96も軸部93bに対して下方に移動することはない。
また、外筒部材92aの上部には、ばね押さえ部材92cが取り付けられている。具体的には、外筒部材92aの上部内周に形成されためねじ部に、ばね押さえ部材92cの外周に形成されたおねじ部がねじ込まれている。なお、ギアボックス91、外筒部材92aおよびねじ押さえ部材92cによってねじ締めドライバDの本体が構成される。
そして、ばね押さえ92cの内側天井面とばね受け部材96のフランジ部96bとの間には、ビット押しばね99が配置されている。このビット押しばね99は、ばね受け部材96を介して出力軸93およびビットBを下方に付勢しており、ビットBとともに出力軸93が上方に移動すると圧縮変形する。
さらに、軸部93bの上部には、図19の右側および図20に拡大して示す導電ブラシ97が取り付けられている。この導電ブラシ97は、銅等の導電性の高い材料で製作されており、ねじ97dによって軸部93bに固定されるねじ止め部97aと、該ねじ止め部97aから側方および下方に延びるように形成された延長部97bと、該延長部97bの下端部に、軸部93bの回転方向(図中の右方向)に延びるように形成されたブラシ部97cとを有する。
ねじ止め部97aが軸部93bにねじ97dで固定されると、ブラシ部97cは、ねじ受け部材96の小径円筒部96cの外周面に接触する。また、軸部93b(出力軸93)とともに導電ブラシ97が回転する間、ブラシ部97cはねじ受け部材96(小径円筒部96c)に対して摺動する。このため、出力軸93から、導電ブラシ97、ばね受け部材96およびビット押しばね99を介してばね押し部材92cへの導通経路が形成される。
出力軸93にはビットBが結合されており、また、前述したようにばね押し部材92cは外筒部材92aにねじ係合しており、さらに外筒部材92aはギアボックス91に取り付けられている。そして、ギアボックス91は、図19に示すようにグランドGに接続されている。
これにより、ねじ締め時にビットBに帯電した静電気は、出力軸93、導電ブラシ97、ばね受け部材96、ビット押しばね99、ばね押し部材92c、外筒部材92aおよびギアボックス91を介してグランドGに導かれる。したがって、ビットBに帯電した静電気が、該ビットBによって締め付けられるねじを介してハードディスク装置等、静電気に弱い製品に悪影響を及ぼすことを確実に防止することができる。また、導電部材には軸方向の力が作用しないため、軸方向への変形やこれに伴う導電性の悪化を確実に回避することができる。
なお、本実施例では、導電ブラシ97を、ばね受け部材96およびビット押しばね99よりも内側に配置された出力軸93の軸部93bにねじ97dで固定している。ばね受け部材96の方が出力軸93の軸部93bよりも径が大きいので、出力軸93の回転中に導電ブラシ97を安定的にばね受け部材96に対して摺動させることができる。但し、導電ブラシをばね受け部材に固定し、出力軸がこのブラシに対して回転摺動するようにしてもよい。
また、導電ブラシ97をビット押しばね99の内側に配置したことにより、ビット押しばね99と出力軸93やばね受け部材96との間の空間を有効利用することができる。したがって、ねじ締めドライバの大型化を招くことなく、導電ブラシ97を配置することができる。
上記実施例1,2,4〜6で説明してきたねじ締めドライバは、駆動源としてのモータと該モータからねじ締め用ビットに駆動力を伝達する伝達機構とが一体不可分のものである。
一方、ハードディスク装置等の製品の組み立てには、通常、複数種類のねじが用いられ、それらの締め付けに要求されるトルクも異なる。これに対し、特に精密なトルク管理が要求されるねじ締めドライバの出力トルク(締め付けトルク)範囲、つまりはモータの出力トルク範囲は狭く設定されている。したがって、同じねじ締めシステムを用いて締め付けトルクの要求レベルが異なる複数種類のねじ締めを行う場合には、ねじの種類に応じてねじ締めドライバごと交換する必要があった。
そこで、図21には、本発明の実施例7として、モータと伝達機構とを分離可能とし、伝達機構に対するモータの交換が可能なねじ締めドライバの構成を示している。図21中、左側には該ねじ締めドライバの全体を、右側にはその伝達機構を抽出して示している。以下の説明において、図21における上側をねじ締めドライバの上側といい、図21における下側をねじ締めドライバの下側という。
図21において、101,102は上ベース板および中間ベース板である。これら上ベース板101および中間ベース板102の間には、複数本(本実施例では4本)のシャフト部材104が間隔を空けて配置され、上ベース板101と中間ベース板102とにねじ止めされている。さらに、中間ベース板102の下側には、それぞれシャフト部材104より短く、互いに間隔を空けて配置された複数本(本実施例では4本)のシャフト部材107を介して下ベース板103が配置されている。この下ベース板103は、例えば実施例1において図1に示したねじ締めシステムにおける支持台4の水平板4aに固定される。
一方、上ベース板101の上面には、それぞれシャフト部材104より短く、互いに間隔を空けて配置された複数本(本実施例では3本)のシャフト部材105が配置され、上ベース板101の下面側からねじ止めされている。なお、上記シャフト部材104,105,107は丸棒でもよいし、角棒でもよい。また、本数も任意である。
以上の上ベース板101、中間ベース板102、下ベース板103およびシャフト部材104,105,107により、後述する伝達機構およびモータを支持するための支持構造が構成される。
120A,120Bは実施例1,2,4〜6でも説明したモータMに相当し、本実施例では、出力トルク範囲が互いに異なるモータである。
121は装着板であり、図21の右側の図に示すように、モータ120A,120Bに予めねじ等で取り付けられる。この装着板121の中央には、モータ120A,120Bの出力軸122が貫通する開口が形成されており、さらに装着板121の周辺部のうち、上ベース板101上に固定されているシャフト部材105に対応する位置には、該シャフト部材105にねじ106による取り付けを可能とするためのねじ止め部121aが形成されている。なお、図21の左側の図に示した121bは、装着板121に形成されたモータ固定用のねじ穴である。
一方、図21の右側の図に示すように、シャフト部材105の上部には、ねじ106用のねじ穴105aが形成されている。
ここで、モータ120A用の装着板121とモータ120B用の装着板121とでは、モータ固定用のねじ穴121bの位置や数が異なる場合もあるが、ねじ止め部121aの位置や数は同じである。つまり、いずれの装着板121もシャフト部材105に対しては共通の取り付け構造を有する。これにより、モータ120A,120B自体に設けられた、該モータを装着板121に固定するためのねじ穴の位置や数が異なっていても、モータ120A,120Bのシャフト部材105、つまりは支持構造に対する着脱交換を容易に行うことができる。
次に、伝達機構について説明する。110は連結軸であり、上ベース部材101の中央に取り付けられたベアリング112によって、上ベース板101に対して回転自在に保持される。
図21の右側の図に示すように、連結軸110の上部には円筒部が形成されており、該円筒部には、モータ120A,120Bの出力軸(以下、モータ出力軸という)122が差し込まれる軸穴110aが形成されている。また、円筒部の周壁の上下位置には、2つのねじ穴110bが形成されている。モータ出力軸122を軸穴110aに挿入し、各ねじ穴110bに締め込んだ軸止めねじ111をモータ出力軸122に突き当てることで、モータ出力軸122と連結軸110とを一体回転可能に連結することができる。このようなモータ出力軸122のねじ止め構造を有することにより、伝達機構に対するモータ交換が可能である。
連結軸110のうち上ベース板101の下方に突出した部分には、第1のユニバーサルジョイント113を介して伸縮軸114のインナー軸114aが一体回転可能に連結されている。伸縮軸114は、モータ出力軸122および連結軸110の中心軸に対して傾きを持つように配置されている。
伸縮軸114は、インナー軸114aとアウター軸114bからなるテレスコピック構造を有し、両軸114a,114bは相対的に軸方向に移動可能、すなわち伸縮が可能である。アウター軸114bの側面に軸方向に延びるように形成された溝部114cに、インナー軸114aに取り付けられた突起部材114dが係合することで、インナー軸114aとアウター軸114bは一体的に回転する。
アウター軸114bの下部には、第2のユニバーサルジョイント115を介して出力軸としてのビット駆動軸117が連結されている。ビット駆動軸117は、中間ベース板102および下ベース板103にそれぞれ取り付けられたベアリング116,118によって回転自在および軸方向に移動可能に保持されている。ビット駆動軸117は、モータ出力軸122および連結軸110の中心軸から該中心軸に直交する方向にオフセット(シフト)した位置で、該中心軸に平行に延びるように保持されている。
さらに、ビット駆動軸117の下部には、カップリング119が取り付けられている。該カップリング119は、ビットBを着脱可能に保持する。
以上のように構成された伝達機構では、モータ出力軸122からの回転力(出力トルク)は、連結軸110,第1のユニバーサルジョイント113、伸縮軸114、第2のユニバーサルジョイント115、ビット駆動軸117およびカップリング119を介してビットBに伝達される。ねじ締め時には、ビットBおよびビット駆動軸117は軸方向に移動するが、この移動は伸縮軸114の伸縮動作とユニバーサルジョイント113,115でのジョイント角度が変化することによって吸収され、ビットBの回転は維持される。
ここで、第1および第2のユニバーサルジョイント113,115は、互いの偏芯回転やイナーシャが打ち消されるように設計されている。また、伸縮軸114におけるインナー軸114aとアウター軸114b間の許容偏芯量やベアリング112,116,118における許容回転偏芯量もきわめて小さい。これにより、伝達機構で発生するトルク変動を小さく抑えている。
ここで、実施例1,2,4〜6のねじ締めドライバは、モータ回転をギアを介して出力軸およびビットに伝達する。この場合、実施例5でも説明したように、ドライバの締め付けトルクが、ギアの摩擦変動によって変動する場合がある。これに対し、本実施例では、ギア列を用いずに伝達機構を構成しているためにギアの摩擦変動に起因した締め付けトルク変動が生じず、また伸縮軸114やベアリング112,116,118によるトルク変動成分を小さく抑えているため、ギア伝達機構を用いる場合に比べて、トルク変動をより小さく抑えることができる。
そして、伝達機構で発生するトルク変動が小さいため、実施例5で説明したトルク指令値の補正手法を併せ用いることにより、ねじ締めドライバ全体としての締め付けトルクの変動をきわめて小さく抑えることができる。
発明者らの実験によれば、モータの出力トルクその他の条件が同じ場合において、ギヤ列伝達タイプのねじ締めドライバに比べて、出力トルクの大きさにより1%弱から数%のトルク変動抑制効果が得られた。
さらに、本実施例のように、支持構造および伝達機構に対してモータ交換を可能とすることで、ねじ締めシステムの昇降機構(実施例1の図1参照)に固定した支持構造および伝達機構に対してモータ(装着板121付きのモータ)120A,120Bのみを適宜選択して装着してねじ締めを行うことができる。したがって、締め付けトルクレベルが異なるねじの締め付けを行う場合でも、従来のようにねじ締めドライバ全体を交換する必要がなくなる。このことにより、どのようなサイズのモータを装着した場合でも、モータを除いたねじ締めドライバ(支持構造および伝達機構)の形状や寸法、ひいてはねじ締めシステムの昇降機構等の形状や寸法を不変とすることができる。したがって、該ねじ締めシステムを生産ラインに設置する場合のライン設計時間を短縮することができ、また設置のために要する部品の共通化や点数削減を図ることができる。
また、本実施例では、支持機構を構成するシャフト部材104,105,107が互いに間隔を空けて配置されている。このため、モータ交換作業やこれに伴う伝達機構の調整作業に際しては、図21の左側の図に示すシャフト部材間の空間SPに手や工具を挿入することが可能である。したがって、交換作業や調整作業を容易に行うことができる。
なお、本実施例では、ユニバーサルジョイントを使用した伝達機構を有するモータ単体交換タイプのねじ締めドライバについて説明したが、実施例6等で説明したギア列を使用した伝達機構を有する場合でも、モータ単体交換タイプのねじ締めドライバを構成することが可能である。
ところで、上述したモータ交換が可能なねじ締めドライバを用いて、実施例1〜3にて説明した制御システムとは異なる制御システムを構成することも可能である。
図22には、該制御システムの概略構成を示している。なお、図22では、モータに予め取り付けられる装着板(図21の符号121)は図示を省略している。また、図中の右側に示したねじ締めドライバ(支持機構および伝達機構)に付した符号は、図21中の符号と同じである。
実施例1,2,4〜6にて説明したモータ不可分型のねじ締めドライバには、それ専用のサーボコントローラが付属している。このため、締め付けトルクレベルの変更に伴いモータ不可分型ねじ締めドライバを交換する場合、サーボコントローラも一緒に交換する必要がある。
これに対し、本実施例では、図22に示すように、1つのねじ締めドライバ(支持機構および伝達機構)に対して、互いに出力トルク範囲が異なる複数種類のモータ120A,120B,120Cを交換装着することができる。このような場合には、該複数のモータ120A,120B,120Cのいずれをも制御可能なサーボコントローラSC′を用いるとよい。
サーボコントローラSC′内には、各モータに印加する電圧又は電流を制御するモータ制御部C2′と、実施例5で説明した補正データメモリ82〜84としてモータ120A,120B,120C用のメモリが搭載されている。また、図示しないが、実施例5で説明した補間制御部や加算器等も搭載されている。
これにより、サーボコントローラSC′は、複数のモータ120A,120B,120Cのうちいずれのモータがねじ締めドライバに装着されても、その締め付けトルク変動を抑えてねじ締めを行うことができる。モータに対応した補正データメモリの選択は、実施例5でも説明したように、モータに付された識別番号等を利用して行えばよい。
このように、サーボコントローラSC′に複数のモータ120A,120B,120Cの制御機能を持たせることにより、モータを交換してもサーボコントローラは交換しなくてよい。言い換えれば、従来は複数のモータ(ねじ締めドライバ)に対してそれと同数のサーボコントローラが必要であったのに対し、本実施例によれば、複数のモータ120A,120B,120Cに対して1つのサーボコントローラを用意すれば済む。これにより、ねじ締めシステムを従来よりも安価に構成することができる。
図23および図24にはそれぞれ、本発明の実施例8であるねじ締めドライバの構成を示している。上記実施例1,2,4〜7にて説明したねじ締めドライバは、モータの出力軸とビットとがこれらの中心軸に対して直交する方向にオフセットしたいわゆるオフセットタイプのねじ締めドライバであるが、本実施例のねじ締めドライバは、モータの出力軸からビットまでが直線上に配置されたいわゆるストレートタイプのねじ締めドライバである。このストレートタイプのねじ締めドライバも、実施例1,2,4,5のねじ締めドライバとして使用可能である。
また、図24に示したドライバでは、回転する整流子に対して摺動するブラシを備えたブラシモータ302Bを使用している。一方、図23に示したドライバでは、モータとしてブラシレスモータ302Aを使用している。これ以外の基本的な構成は、両図のモータで同じであるので、共通する構成要素には同符号を付して説明する。また、以下の説明において、図23,24における上側をねじ締めドライバの上側といい、同図における下側をねじ締めドライバの下側という。
図23および図24において、301はねじ締めドライバの本体を構成する外筒部材である。該外筒部材301の上端部には、ブラシレスモータ302A又はブラシモータ302Bが固定されている。これらモータ302A,302Bの出力軸(以下、モータ出力軸という)302aは、外筒部材301の上面に形成された開口を通って外筒部材301の内側に突出している。
311は外筒部材301の内側に配置された第1内筒部材である。第1内筒部材311は、外筒部材301の内周部に取り付けられたベアリング310によって外筒部材301に対して回転が可能に保持されており、また、該ベアリング310との係合によって外筒部材301に対して軸方向への移動が阻止されている。
第1内筒部材311の内側には、モータ出力軸302aと一体回転可能な回転伝達機構315が配置されている。回転伝達機構315はモータ出力軸302aに連結された上側部材315aと、該上側部材315aに対して一体回転可能および上下動可能に連結された下側部材315bとを有する。該下側部材315bは、ビットBの上端に形成されたDカット形状部に回転方向にて係合する。これにより、モータ出力軸302aの回転は、回転伝達機構315を介してビットBに伝達される。
ビットBの上部外周にはリング状のU溝が形成されている。第1内筒部材311の下部に保持されたボール316が該U溝に係合することで、ビットBは回転伝達機構315に対して脱落することなく回転可能に保持される。
第1内筒部材311の外側には、第2内筒部材317が配置されている。該第2内筒部材317の下端面は、第1内筒部材311の下端部外周に取り付けられた止め輪313に当接している。第2内筒部材317は、その上端面と第1内筒部材311の上部外周に取り付けられた止め輪318との間に配置されたコイルばね319によって下方に付勢されている。第2内筒部材317は、ドライバ使用時には、その中間部の内周面がボール316に当接し、ビットBを挟むように保持しているボール316が外側に移動することを阻止する。
一方、第2内筒部材317をコイルばね319の付勢力に抗して第1内筒部材311に対して上方に移動させると、第2内筒部材317のうち内径が大きい下部がボール316の外側への逃げを許容する。これにより、ビットBをドライバから取り外したり装着したりすることができる。
外筒部材301の下部外周には、本体ねじ部としての粗調整おねじ301aが形成されている。この粗調整おねじ301aには、上から順に、第1ロックリング320の内周に形成されためねじ320aと、第1の調整部材としての粗調整リング321の上部内周に形成された第1めねじ321aとがそれぞれ係合している。粗調整リング321の外周には、後述するビット先端とスリーブ先端との位置合わせ時に使用する粗調整目盛り(図示せず)が設けられている。
第2内筒部材317およびコイルばね319の外側には、第2の調整部材としての円筒状の微調整ケース323が配置されている。微調整ケース323の上部外周には、粗調整おねじ301aよりもねじピッチが小さい微調整おねじ323aが形成されている。この微調整おねじ323aには、上から順に、粗調整リング321の下部内周に形成された第2めねじ321bと、第2ロックリング324の内周に形成されためねじ324aとがそれぞれ係合している。
微調整ケース323の外周には、後述するビット先端のスリーブ先端からの突出量調整の際に使用する微調整目盛り(図示せず)が設けられている。
微調整ケース323の下部内側には、ビットBの先端周囲を覆うスリーブ326が配置されている。スリーブ326は、その下端開口を通してビットBの先端を露出させることができる。スリーブ326の上部外周に形成されたフランジ部326aが微調整ケース323の下部内周に形成された段部323cに当接することで、スリーブ326の微調整ケース323に対する下方への抜けが阻止される。
また、スリーブ326は、その上端面と微調整ケース323の上端部に係止されたスリーブ押しコイルばね327によって下方に付勢されている。このため、スリーブ326は、後述するビット先端のスリーブ先端からの突出量調整の際に微調整ケース323とともに上下動する。
微調整ケース323の周壁部における上下方向中間部には、貫通孔323bが形成されている。そして、微調整ケース323の外周には、この貫通孔323bに通じる孔を有する負圧接続部材325が取り付けられている。
図24において、302bはブラシモータ302Bのブラシであり、整流子としてのモータ出力軸302aに接触している。340はブラシモータ302bを覆うカバーであり、ブラシモータ302Bから排出されるカーボン等の汚物が外部に出ないようにするためのものである。
図23に示すブラシレスモータ302Aを使用したねじ止めドライバは、図24に示すブラシモータ302Bを使用したねじ止めドライバに対して、カバー340が不要である分、径を小さくすることができる。具体的には、図23において、ブラシレスモータ302Aの外径と外筒部材301の外径とがほぼ一致している。この径の差はそれほど大きくはないが、ねじ締めドライバ全体の容積の差はかなり大きくなる。したがって、より微細なピッチで配置された複数のねじを複数のドライバで一括して締め付けるような場合は、ブラシレスモータ302Aを使用したドライバの方が有利である。
以上のように構成されたねじ締めドライバによりねじ350を締め付ける場合は、まずスリーブ326の先端部から若干突出させたビットBの先端にねじ350のリセス351を係合させ、該ねじ350の上面にスリーブ326の先端部を接触させる。そして、ドライバ内部の空気を負圧接続部材325を介して真空ポンプにより吸引させる。これにより、ドライバ内部が負圧状態となり、スリーブ326の先端部にねじ350が吸着される。この状態でワーク352のねじ穴にねじ350を合わせてモータ302A,302Bを回転させることにより、ねじ350を締め込むことができる。
但し、ねじ350が微細化するに従い、リセス351の深さDPTが小さくなるため、ビット先端のスリーブ先端からの突出量(以下、単にビット突出量という)BPを高精度(厳密)に調整しなければ、該ビット突出量BPが大きすぎてねじ350の上面とスリーブ先端との間に隙間が生じてねじ350の吸着ができない場合がある。このため、本実施例のドライバでは、以下の手順によりビット突出量を高精度に調整することができるようにしている。
まず、外筒部材301に形成された粗調整おねじ301a上において、第1ロックリング320を粗調整リング321に対して緩める(上方に移動させる)。また、微調整ケース323に形成された微調整おねじ323a上において、第2ロックリング324を粗調整リング321に対して緩める(下方に移動させる)。これにより、粗調整リング321が粗調整おねじ301a上で回転可能となる。
この状態で、粗調整リング321を回転操作すると、粗調整リング321は第1めねじ321aと外筒部材301の粗調整おねじ301aとの作用によって外筒部材301に対して上下動する。このとき、粗調整リング321の第2めねじ321bに対して微調整おねじ323aが係合している微調整ケース323と、微調整ケース323の微調整おねじ323aに係合している第2ロックリング324も、粗調整リング321とともに回転しながら上下動する。そして、微調整ケース323とともにスリーブ326も上下動する。この操作によって、スリーブ326の先端とビットBの先端とを一致させる。一致度は粗調整リング321上の目盛りを見ながら操作することで確保できる。
スリーブ326の先端とビットBの先端とを一致させた後、第1ロックリング320を粗調整リング321に対して締め込む。これにより粗調整リング321は、粗調整おねじ301a上において回転できなくなる。
次に、微調整ケース323を回転操作すると、微調整おねじ323aと動きがロックされた粗調整リング321の第2めねじ321bとの作用によって微調整ケース323が上下動する。そして、この微調整ケース323とともにスリーブ326が上下動する。前述したように、微調整おねじ323aのねじピッチ(つまりはリード)は外筒部材301の粗調整おねじ301aのそれよりも小さいため、回転操作量が同じである場合の微調整ケース323の操作によるスリーブ326の上下移動量は、粗調整リング321の操作によるスリーブ326の上下移動量より小さい。したがって、微調整ケース323上の微調整目盛りを見ながら微調整ケース323を回転操作することで、ビット突出量BPをねじ350のリセス351の深さDPTに応じてきわめて高精度に調整することができる。
そして、最後に、第2ロックリング324を粗調整リング321に対して締め込む。これにより、微調整ケース323も回転ができなくなり、スリーブ326のビットBに対する位置も固定される。すなわち、ビット突出量BPが設定される。
従来のドライバでは、粗調整リング321に相当する部材のみでビット先端のスリーブ先端からの突出量を調整したが、粗調整リング321に相当する部材の回転量に対する突出量の変化が大きいために、微調整が難しかったり長時間を要したりしていた。また、第1ロックリング324に相当する部材を締め込んだ際に粗調整リング321に相当する部材も第1ロックリング324に相当する部材の端面との摩擦によって若干回転し、調整された突出量が変化してしまう可能性があった。本実施例によれば、短時間で容易にビット突出量の微調整を行うことができる。しかも、最終的な微調整ケース323のロックを、これとは別部材である粗調整リング321の端面に第2ロックリング324を当接させて行うため、微調整終了後にビット突出量が変化する可能性をほとんどなくすることができる。
なお、本実施例にて説明したビット突出量の調整機構は、ストレートタイプのねじ締めドライバに限らず、実施例1,2,4〜7にて説明したオフセットタイプのねじ締めドライバにも採用することができる。また、ビット突出量の粗調整および微調整を可能とするための機構は、上記構成のものに限られない。
以上、本発明の好ましい実施態様を説明してきたが、本発明はこれらの実施態様に限定されるものではなく、様々な変形及び変更が可能である。
産業上の利用の可能性
本発明によれば、加工が容易であり、細い径の出力軸に対しても十分なトルク伝達を行うことができ、また静電気を確実に逃がすねじ締め装置を提供することができる。