磁気記録のための磁気抵抗型読出しヘッドの滑動モード制御
【課題】MR読出しヘッドに関連する非線形のゲイン変動を補償し得る低コストでより効率的な磁気ディスクサーボ制御システムの提供。
【解決手段】位置誤差X149は、スイッチ46の状態に依存して正のゲイン47または負のゲイン48によって乗算され、加速コマンドU53が被制御システム44への入力として生成される。積分器54の出力は被制御システムの速度であり、これはまた位置誤差速度の負の値−X255でもある。スイッチ46が正のゲイン47を選択するときは、これは負のフィードバックシステムであり、スイッチ46が負のゲイン48を選択するときは、これは正のフィードバックシステムである。これらの構造のそれぞれではシステムは不安定である。しかし、2つの構造の間で繰り返し切り替えを行うことによってシステムは安定にされ得る。
【解決手段】位置誤差X149は、スイッチ46の状態に依存して正のゲイン47または負のゲイン48によって乗算され、加速コマンドU53が被制御システム44への入力として生成される。積分器54の出力は被制御システムの速度であり、これはまた位置誤差速度の負の値−X255でもある。スイッチ46が正のゲイン47を選択するときは、これは負のフィードバックシステムであり、スイッチ46が負のゲイン48を選択するときは、これは正のフィードバックシステムである。これらの構造のそれぞれではシステムは不安定である。しかし、2つの構造の間で繰り返し切り替えを行うことによってシステムは安定にされ得る。
【発明の詳細な説明】
【技術分野】
【0001】
発明の分野
本発明はコンピュータ技術に関する。詳しくは、ディスクドライブの読出し/書込みヘッドアクチュエータの制御に関する。
【背景技術】
【0002】
発明の背景
磁気ディスク格納システムでは、変換ヘッドがデジタルデータを磁気格納媒体に書き込む。デジタルデータは、読出し/書込みヘッドのコイルの電流を変調する役目を果たし、これにより、対応する磁束変化シーケンスが磁気媒体上の一連の同心円状データトラックに書き込まれる。この記録されたデータを読み出すためには、読出し/書込みヘッドが磁気媒体の上を通り、磁気変化をアナログ信号のパルスに変換する。次にこれらのパルスは読出しチャネル回路によって復号されデジタルデータを再生する。
【0003】
読出し/書込みヘッドは、通常は、音声コイルモータ(VCM)によって位置決めされるアクチュエータアーム上に取り付けられる。サーボシステムがVCMを制御し、そしてこれによりヘッド位置を制御する。これはディスクドライブと接続しているコンピュータからの要求に応答して情報の読み出しおよび書き込みを行うために必要とされる。サーボシステムは2つの機能を果たす。すなわち、(1)サーボシステムがヘッドを選択トラックに移動させる「シーク」または「アクセス」機能。(2)ヘッドが選択トラックに到着すると、サーボシステムは、トラックのセンターライン上にヘッドを正確に位置決めし、その位置をヘッドによるトラック通過の連続部分として維持する「トラック追従」または「トラッキング」機能を開始する。データ内に埋め込まれたサーボ制御情報はトラック間ヘッド位置情報を提供し、これにより、推定ヘッド位置と所望のヘッド位置との間の差を示すヘッド位置誤差が計算され得る。ヘッド位置誤差に応答して、サーボ制御システムは、VCM制御信号を生成して、ヘッドを選択トラックのセンターライン上に位置合わせし、これにより、ヘッド位置誤差をゼロにする。
【0004】
従来のサーボシステムは、典型的には、比例積分偏差(PID)フィードバックまたは状態推定器を用いる線形コントローラである。しかし、これらのタイプの線形コントローラは、VCM制御システムのパラメータの変動および外部負荷妨害に感応するという問題を有する。従来の順応性線形コントローラは、パラメータの変動および負荷妨害を補償するためにコントローラを連続して再プログラミングすることによってこれらの感応性の問題を克服している。順応性制御システムは、適切ではあるが、具現化するには複雑過ぎまた費用が掛かり過ぎる。さらに、順応性線形コントローラはまた、機械的な共鳴を補償するためにノッチフィルタを必要とする。従って、ディスクドライブアクチュエータの制御に内因する感応性および共鳴の問題に対する低コストでより簡単な解決策が必要とされている。
【0005】
ディスクドライブのアクチュエータ位置を制御するために、「バンバン(bang−bang)」制御法というさらに別の方法が従来より提案されている(例えば、非特許文献1参照)。このタイプの制御システムでは、モータコマンド信号は、速度誤差入力信号に応答して正の最大加速度と負の最大減速度との間で切り替わる。目標は、アクチュエータがターゲットトラックに向かって移動するときアクチュエータの速度を所定の軌道に従わせることである。しかし、「バンバン」制御システムは正の最大値と負の最大値との間の急速な切り替えによって生じる内因的な「チャタリング」の問題があるために、これまでのところ用いられていない。チャタリングは多量の望ましくないシステムノイズを引き起こす。さらに、ターゲット近くの制御が、正の最大値と負の最大値との間で交互に切り替わるため、トラッキング結果がよくない。従って、切り替えノイズを最小限にし得、そして十分なトラッキング性能を提供するディスクドライブアクチュエータ制御システムが必要である。
【0006】
磁気抵抗型(MR)読出しヘッドを用いる磁気ディスクドライブ格納システムでは、サーボトラッキングにおいてさらに別の問題が生じる。MR読出しヘッドは、誘導型(inductive)読出しヘッドとは異なり、磁束の変化を測定するのではなく、ディスク表面からの磁束を直接測定する。感度を最大にするためには、バイアス磁界がMRヘッドにわたって分配される。しかし、バイアス磁界はヘッドにわたって均等に分配されることはできず、感度の非線形変動、すなわちゲインが生じ得る。図9Aに示すようなこの非線形特性により、制御システムが、選択トラックのセンターラインに従おうとするとき、図9Bに示すように振動することもあり得る。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】C. Denis MeeおよびEric D. Daniel著、Magnetic Recording Volume II: Computer Data Storage、McGraw−Hill, Inc.、1988年、64−65頁
【発明の概要】
【発明が解決しようとする課題】
【0008】
MR読出しヘッドに関連する非線形特性を補償するために、磁気ディスクサーボ制御システムには様々な方法が適用されている。ほとんどの場合、図9Bに示すように、ゲイン変動を補償してより線形の転移関数を実現するために、もっと複雑な線形制御アルゴリズムが用いられるが、これらのシステムはさらに多くの処理電力およびコストを要する。従って、MR読出しヘッドに関連する非線形のゲイン変動を補償し得る低コストでより効率的な磁気ディスクサーボ制御システムが必要とされる。
【課題を解決するための手段】
【0009】
発明の要旨
本発明においては、スピンモータが読出し/書込みヘッドの下の磁気ディスクを回転させる。磁気ディスクには、サーボ情報を埋め込んだいくつかの同心円状のデータトラックが記録されている。読出し/書込みヘッドに接続される読出しチャネル回路は、デジタルで記録されたデータを復号しサーボデータを状態推定器に転送する。状態推定器はサーボデータを処理してアクチュエータ位置信号を生成し、これを参照アクチュエータ位置から減算してアクチュエータ位置誤差信号を生成する。滑動モードコントローラは、アクチュエータ位置誤差信号に応答して、正および負のフィードバックゲイン間(「バンバン」制御のように正および負の最大値間ではない)で切り替えを行い、これによりモータ制御信号を生成する。モータ制御信号は増幅され、アクチュエータの一方の端部に接続されるVCMに印加される。アクチュエータの他方の端部には読出し/書込みヘッドが取り付けられている。VCMはアクチュエータの動きを制御し、これにより読出し/書込みヘッドを選択トラックの上に位置決めする。
【0010】
滑動モードコントローラは2つの位相状態、すなわちアクチュエータ位置誤差位相状態およびアクチュエータ位置誤差速度位相状態によって定義される。アクチュエータ位置誤差位相状態は、推定アクチュエータ位置と所望のアクチュエータ位置との間の差(例えば、読出し/書込みヘッドが位置している現在のトラックと選択された新しいトラックとの間の差)である。アクチュエータ位置誤差速度位相状態は、アクチュエータ位置誤差の変化率であり、アクチュエータ位置誤差を微分することによって、または状態推定器によって生成され得る。位置誤差速度はアクチュエータの負の速度であってもよい。
【0011】
正および負のフィードバックゲイン間で切り替えを行うことによって、滑動モードコントローラは位相状態が所定の位相面軌道に向かって進むように動作する。従って、滑動モードコントローラは、ディスクドライブの物理的な特徴ではなくむしろ位相状態の関数である。また、制御システムはパラメータの変動および外部負荷妨害に実質的に感応しない。さらに、本発明の滑動モードコントローラでは、機械的な共鳴を補償するために使用される従来の線形コントローラのノッチフィルタは必要ない。さらに、滑動モードコントローラはMR読出しヘッドの非線形ゲイン変動に対して感応性がなく、従って、もっと複雑な制御アルゴリズムを必要とせずにトラッキング精度を向上させる。具現化は比較的簡単で低コストであり、また全体的な安定性を保証する明確な方法が存在する。
【0012】
この好適な実施態様では、位相面軌道は4つのセグメントによって定義される。すなわち、アクチュエータの加速を選択トラックの方向に定める実質的に放物線状の加速セグメント、アクチュエータの等速を選択トラックの方向に定める線形等速セグメント、アクチュエータの減速を選択トラックの方向に定める実質的に放物線状の減速セグメント、およびアクチュエータのトラッキングモードを定める線形トラッキングセグメントである。
【0013】
滑動モードコントローラは、位相状態に応答する、正および負のフィードバックモード間の切り替えを行うための切り替えロジックを備え、切り替えロジックは、位相状態が従っている現在の軌道セグメントに従って動作する。滑動モードコントローラはさらに、位相状態がどの軌道セグメントσに従うかを決定することによって、同様に位相状態に応答して切り替えロジックの動作モードを制御するσ処理ブロックを備えている。
【0014】
負および正のフィードバックゲイン間で切り替えを行うことによって生じるノイズを減らすために、滑動モードコントローラは、シーク動作中はアクチュエータ位置誤差速度位相状態のみを用いてモータ制御信号を生成する。これにより、制御信号の大きさを低減し、そしてこれによりシステムの切り替え量は低減する。しかし、アクチュエータの正しい方向への移動を開始させる最初の誤差速度参照信号が必要となる。アクチュエータが選択トラックに実質的に到達すると、滑動モードコントローラはトラッキングモードに切り替わり、アクチュエータ位置誤差位相状態およびアクチュエータ位置誤差速度位相状態の両方を用いてモータ制御信号を生成する。アクチュエータ位置誤差はまた積分されてモータ制御信号に加算され、これにより定常状態の誤差をゼロにする。
【0015】
別の実施態様では、滑動モードコントローラは、アクチュエータ位置誤差、速度誤差、および加速度の位相状態に応答する。速度誤差は、推定速度を参照速度から減算することによって生成される。参照速度はアクチュエータ位置誤差の関数として計算される。
【図面の簡単な説明】
【0016】
【図1】図1は、本発明のディスクドライブ制御システムのブロック図である。
【図2A】図2Aおよび図2Bは、サーボフィールドが埋め込まれた複数の同心円状のデータトラックを有する磁気ディスクのデータフォーマットの例を示す。
【図2B】図2Aおよび図2Bは、サーボフィールドが埋め込まれた複数の同心円状のデータトラックを有する磁気ディスクのデータフォーマットの例を示す。
【図3A】図3Aは、例示的滑動モードコントローラによって制御される2次システムの例を示す。
【図3B】図3Bは、図3Aに示す制御システムの正および負のフィードバックモードに対する位置誤差位相状態および誤差速度位相状態の位相面プロットである。
【図3C】図3Cは、新しいトラックへの前向きシーク中に位相状態を所定の線形位相軌道に向かって駆動する場合の滑動モードコントローラの動作を示す。
【図3D】図3Dは、滑動モードを延長するために図3Cの線形位相軌道の傾きを変更する場合の効果を示す。
【図3E】図3Eは、偏位領域全体をカバーし、これによりパラメータの変動に感応する線形の動作モードを除去する位相面軌道を示す。
【図4】図4は、本発明の好適な位相面軌道を示す。
【図5】図5は、位置誤差および位置誤差速度の位相状態を有する2次システムとしてのVCMコントローラを示す。
【図6】図6は、滑動モードコントローラが位置誤差および位置誤差速度の位相状態に応答する、本発明のディスクドライブ制御システムの詳細な図である。
【図7A】図7A、7B、および7Cは、図6の滑動モードコントローラの動作を示すフローチャートである。
【図7B】図7A、7B、および7Cは、図6の滑動モードコントローラの動作を示すフローチャートである。
【図7C】図7A、7B、および7Cは、図6の滑動モードコントローラの動作を示すフローチャートである。
【図8】図8は、滑動モードコントローラがアクチュエータ位置誤差、速度誤差、および加速度の位相状態に応答する、本発明の別の実施態様の詳細なブロック図である。
【図9A】図9Aは、測定された位置誤差とMR読出しヘッドに対する実際のトラックオフセットとの間の非線形ゲイン変動を示す。
【図9B】図9Bは、測定された位置誤差とMR読出しヘッドに対する従来の補償方法によって生成された実際のトラックオフセットとの間のより線形である関係を示す。
【図9C】図9Cは、図9AのMR読出しヘッドと共に使用されるときの、従来の線形状態推定器制御システムのトラッキング性能を示す。
【図9D】図9Dは、図9AのMR読出しヘッドと共に使用されるときの、本発明の滑動モードコントローラのトラッキング性能を示す。
【発明を実施するための形態】
【0017】
図面の詳細な説明
システム概観
図1は、本発明のディスクドライブ制御システムの概観である。スピンモータ2は、読出し/書込みヘッド6の下のコンピュータデータが記録された磁気ディスク4を回転させる。アクチュエータ8は読出し/書込みヘッド6を選択トラックの上に位置決めし、音声コイルモータ(VCM)10はアクチュエータ8の動きを制御する。読出し/書込みヘッド6からアナログ信号を受け取るように接続された読出しチャネル回路12は、磁気ディスクに記録されたデジタルデータを復号し、サーボ情報を状態推定器14に転送する。状態推定器14はVCM制御システムをモデル化して推定アクチュエータ位置16を生成し、これが加算器20で参照アクチュエータ位置18から減算され、アクチュエータ位置誤差X1 22が生成される。参照アクチュエータ位置18とは、データが書き込まれるかまたは読み出される予定の選択トラックの位置である。滑動モードコントローラ26は、アクチュエータ位置誤差X1 22に応答して、加速モータ制御信号U 28を計算し、この信号は増幅器30によって増幅され、VCM10に印加され、これにより読出し/書込みヘッドが選択トラックの上に位置決めされる。状態推定器14はまた、推定アクチュエータ位置16を生成するためにモータ制御信号U 28を処理する。
【0018】
状態推定器14は、記録チャネルのノイズによって生じるサーボ位置情報の誤差を除去する。図6に示す滑動モードコントローラの実施態様では、状態推定器14はまた微分器102に置き換わって、アクチュエータ位置誤差速度位相状態X2を生成することができる。状態推定器は、米国特許第4,679,103号などに記載されているように周知である。この特許は本明細書において参考のため援用されている。また、本発明によって使用されるアクチュエータ位相状態を生成するためには、状態推定器以外にも周知の技術がある。
【0019】
図2Aおよび図2Bは、内側データトラック32および外側データトラック34を有する複数の同心円状データトラックを含む磁気ディスク4のデータフォーマットの例を示す。図2Bに示すように、各データトラックは、複数のセクタ36および内部に埋め込まれた複数のサーボフィールド38を備えている。サーボフィールド38はトラック番号情報40を含み、これは、選択トラックをシークしている間に推定アクチュエータ位置16を生成するために状態推定器14によって処理される。読出し/書込みヘッドが選択トラックに接近するに従って所定の速度範囲内に速度を緩めると、状態推定器14は、サーボフィールドのトラック番号40およびサーボバースト情報42を処理し、これにより、データの書込みおよび読出しが行われている間にヘッドが選択トラックのセンターラインの上に位置合わせされる。サーボバーストは、トラックのセンターラインに隣接した正確な位置に記録された複数のパルスを含む。読出し/書込みヘッドによって感知されるこれらのサーボバーストパルスの大きさにより、ヘッドがオフトラック位置であることが示される。
【0020】
動作の理論
図3Aを参照して、滑動モードコントローラ26の動作を示す。図示する例示的な2次システム44は、大きさは必ずしも同じではない正のゲイン47と負のゲイン48との間で切り替えを行うスイッチ46を有する例示的な滑動モードコントローラ45によって制御される。位置誤差X1 49は、所望の位置参照コマンド52から被制御システムの推定位置51を減算することによって加算器50から出力される。位置誤差X1 49は、スイッチ46の状態に依存して正のゲイン47または負のゲイン48によって乗算され、加速コマンドU 53が被制御システム44への入力として生成される。積分器54の出力は被制御システム44の速度であり、これはまた位置誤差速度の負の値−X2 55でもある。スイッチ46が正のゲイン47を選択するときは、これは負のフィードバックシステムであり、スイッチ46が負のゲイン48を選択するときは、これは正のフィードバックシステムである。これらの構造のそれぞれではシステムは不安定である。しかし、2つの構造の間で繰り返し切り替えを行うことによってシステムは安定にされ得る。
【0021】
負のフィードバックでの状態空間式は、
【0022】
【数1】
式(1)の一般解は、
【0023】
【数2】
【0024】
【数3】
式(2)および(3)を組み合わせると、
【0025】
【数4】
式(4)の位相面プロットは、図3Bに示すように離心率Aおよび√KAを有する1組の楕円形である。
【0026】
正のフィードバックでの状態空間式は、
【0027】
【数5】
式(5)の一般解は、
【0028】
【数6】
式(5)および(6)を組み合わせると、
【0029】
【数7】
式(7)の位相面プロットは、図3Bに示すように2つの漸近線を有する1組の双曲線である。
【0030】
位相状態が原点に達することはないため、式(4)および(7)の2つの個々の位相面軌道の結果、不安定なシステムとなる。しかし、負および正のフィードバック軌道の交点で定義される第3の位相軌道に沿って位相状態を駆動させることによって原点に達することが可能となる。これは、現在の位相状態値に応答して正のゲインと負のゲインとの間を切り替え、これにより位相状態を所定の第3の位相軌道に従わせることによって実現される。
【0031】
切り替え動作を図3Cを参照して述べる。ここでは、所定の第3の位相軌道は線形セグメント60として示される。新しいトラックが選択されるとき、最初のアクチュエータ位置誤差は点Aにあり、制御システムは最初は正のゲイン(すなわち、負のフィードバック)を選択するように切り替えられる。アクチュエータが選択トラックに向かって加速を始めると、位相状態は負のフィードバックモードのアーク形軌道64に従う。位相状態が交点Bで第3の位相軌道60の発端に達すると、滑動モードコントローラは負のゲインに切り替わり、位相状態は正のフィードバックモードの双曲線軌道66に従う。位相状態が点Cで第3の位相軌道60と交差すると、コントローラは再び正のゲインに切り替わり、位相状態をアーク68に沿って第3の位相軌道60の方向に戻して駆動する。この切り替え行為が繰り返され、これにより位相状態は線形セグメント60に沿って位相面の原点に向かって滑動する。位相状態が位相面の原点から所定の最短距離範囲内にあるとき、システムはトラッキングモードに切り替わり、ここで、滑動モードコントローラ26は、正のフィードバックと負のフィードバックとの間で繰り返し切り替えを行うことにより、位相状態を位相面の原点近くに保持し、これにより、読出し/書込みヘッド6を選択トラックのセンターライン上で位置合わせした状態に保つ。
【0032】
位相状態が図3Cの滑動ラインに従うときの制御システムの時間ドメイン応答は以下の通りである。
【0033】
【数8】
ここで、t1は、位相状態が点Bで滑動ラインに達するときの時間である。式(8)は、滑動ラインに沿ったシステムの平均応答であり、パラメータKの変動または外部負荷妨害によって実質的に影響を受けない。従って、Kの値を決定するためにシステムの正確なパラメータを知る必要はない。式(8)は、後述の存在式(11)と共に、システムは滑動モード領域内では全体的に安定であるということを証明する。
【0034】
滑動モードコントローラは、位相状態値を観察することによって正のゲインと負のゲインとの間の切り替えをいつ行うかを決定する。図3Cの線形位相軌道は次の式によって定義される。
【0035】
【数9】
ここで、定数Cは線形セグメント60の傾きである。位相状態を観察することによって、滑動モードコントローラは以下のようにゲインを切り替える。
【0036】
【数10】
滑動モードコントローラは、σ・X1>0のときは正のゲインに、そしてσ・X1<0のときは負のゲインに切り替わり、これにより位相状態を線形軌道の方向に駆動する。
【0037】
システムの全体的な応答は、滑動ラインの傾きを大きくする(すなわちCを大きくする)ことによって速くなる。しかし、滑動モード制御には重要な制約がある。すなわち、第3の位相軌道は、正および負のフィードバック位相軌道が反対方向で交差する位相面内の領域に制約される。図3Cから、これは滑動ラインの傾きは0<C<√Kに制約されることを意味する。この制約からさらに以下の関係が導き出される。
【0038】
【数11】
式(11)は存在式として知られ、正および負のゲイン値を決定するために使用される。
【0039】
図3Cの線形滑動モード軌道60は、最初は線形フィードバックモードで動作し、最初のアーク軌道64はパラメータの変動および外部負荷妨害によりずれることがあるという欠点を有する。この問題は、動作の滑動モード領域を延ばすことによって低減される。例えば、位相軌道調節器は、図3Dに示すように線形セグメントの傾きを連続して調節することができる。位相状態が第1滑動ライン65に達し所定の期間これに従った後、位相軌道調節器は定数Cを大きくすることによって傾きを大きくして滑動ライン67とする。システムはセグメント間転移中のみ線形モード(非滑動モード)で動作する。最終的には、傾きは滑動ライン69で所定の最大値まで増大し、この時点で位相状態は位相面の原点に向かってライン69に沿って滑動する。
【0040】
より強い具現例としては、1つの位相軌道が偏位領域全体をカバーするように定義することである。これを図3Eに示す。ここでは、位相軌道は3つの線形セグメントσ1 72、σ2 74、およびσ3 76よりなる。
【0041】
σ1 = X2 − C1・(X1 − XI)
σ2 = X2 − X2I、および (12)
σ3 = X2 + C2・X1
ここで、
X1 = アクチュエータ位置誤差位相状態、
X2 = アクチュエータ位置誤差速度位相状態
C1 = 第1セグメントの傾き
C2 = 第3セグメントの傾き
XI = 最初のアクチュエータ位置誤差、および
X2I = 所定の一定位置誤差速度
第1線形セグメントσ1 72はアクチュエータ8の加速を表し、第2線形セグメントσ2 74はアクチュエータ8の等速度を表し、第3線形セグメントσ3 76は選択トラックの方向へのアクチュエータ8の減速を表す。
【0042】
上述のように、C2は0<C2<√Kに制約される。しかし、これら3つのセグメントすべてもまたVCM 10の最大加速度、等速度、および減速度の限度によって制約される。位相軌道がVCMの物理的な限度内で選択されると、コントローラはパラメータの変動および外部負荷妨害とは実質的に関係なく動作する。
【0043】
最適な位相面軌道および本発明の好適な実施態様を図4に示す。この軌道は、実質的に放物線の加速セグメントσ1 80、線形の等速セグメントσ2 82、第2の実質的に放物線の減速セグメントσ3 84、および線形の減速セグメントσ4 86を有する。
【0044】
σ1 = C1・X22 + X1 − X1I (13)
σ2 = X2 − X2I (14)
σ3 = −C2・X22 + X1 (15)
σ4 = X2 + C3・X1 (16)
ここで、
X1 = アクチュエータ位置誤差位相状態、
X2 = アクチュエータ位置誤差速度位相状態
C1 = 所定の加速定数
X1I = 最初のアクチュエータ位置誤差
X2I = 所定の一定位置誤差速度
C2 = 所定の減速定数、および
C3 = 線形減速セグメントの所定の傾き
放物線減速セグメントσ3 84の傾きは原点付近で急激になりすぎて(すなわち、減速が大きくなりすぎて)滑動モードをサポートすることができないため、線形減速セグメントσ4 86が必要となる。トラック間シーク距離が十分に短い場合は線形等速セグメントσ2 82は必要ない(すなわち、最初の位置誤差が所定のしきい値より小さい場合は位相状態はσ1から直接σ3に転移する)。
【0045】
図5は、2次プラントとしてモデル化されたディスクアクチュエータ制御システムを示す。滑動モードコントローラの出力U 28は増幅30されVCM10に入力される。VCM10のパラメータは以下の通りである。
【0046】
Kt = トルク定数
Kv = 粘性減衰係数、および
J = 慣性
モータへの入力90は加速コマンドであり、出力92は速度である。従って、モータ自体が積分器94としてモデル化される。サーボフィールド38、読出しチャネル回路12、および状態推定器14もまた積分器96としてモデル化される。何故なら、VCM10の出力速度92を積分することによりアクチュエータ位置16が生成されるからである。
【0047】
位置誤差位相状態X1 22は加算器20の出力で観察され、位置誤差速度位相状態X2はVCM 10の速度92の負の値として観察される。もしくは、位置誤差速度位相状態X2は、位置誤差信号X1 22を微分することによって生成されるか、または状態推定器14によって生成され得る。図5から、位相状態式は以下のように表記され得る。
【0048】
【数12】
U = ±K・X1であるので、位相状態式は式(1)および(5)に類似し、位相プロットは図3Bに示すものと類似する。
【0049】
滑動モードを具現化するには位置誤差X1のみで十分であるが、位置誤差速度X2をフィードバックループに加えるとさらなる制御が達成される。実際において、位置誤差X1は最初は位置誤差速度X2よりはるかに大きいため、本発明のディスクドライブアクチュエータ制御システムは、位置誤差速度X2をシーク中の唯一の制御信号として用いることにより最適な動作を行う。シーク中にフィードバックループから位置誤差X1を取り除くことにより、切り替えノイズ量が減少する。位相状態が位相軌道の所定の点に達すると、システムは位置誤差X1の位相状態を切り替えて制御ループに戻す。
【0050】
ハードウェアの説明
図6は、本発明のディスクドライブアクチュエータ滑動モード制御システムの詳細図である。アクチュエータ位置誤差X1 22は滑動モードコントローラ26に入力され、微分器102はアクチュエータ位置誤差X1 22を微分して、アクチュエータ位置誤差速度信号X2 100を生成する。図示はしないが別の実施態様では、状態推定器14が位置誤差速度X2を生成する。2つの切り替えゲイン回路104および106は、それぞれ位置誤差〜X1 22および誤差速度〜X2 100制御信号を乗算する。乗算器108および110は、位相状態〜X1およびX2ならびに現在の軌道セグメントσiに応答し、ゲイン回路の切り替え動作を制御する。得られる乗算値の符号によりスイッチの状態が決定され、これにより、位相状態X1およびX2を図4に示す所定の滑動ライン軌道の方向に駆動する。σ処理ブロック112は、位相状態X1およびX2に応答し、軌道セグメント切り替えロジックを具現化し、これにより位相状態が位相軌道のセグメントσiのいずれに従うのかを決定する。σ処理ブロック112、積分器116、参照誤差速度発生器114、ならびにマルチプレクサ118、120、および122の動作について以下に詳述する。
【0051】
切り替えゲインブロック104および106のゲイン値αi、βi、γi、およびζiは、位相状態が従っている現在の軌道セグメントによる適切な値にプログラム可能に設定される。また、ゲイン値は、コントローラが前向きシークを行っているかまたは逆向きシークを行っているかに応じて所定の値にプログラム化される。そうすると存在式(11)および位相軌道式(13)、(14)、(15)、および(16)を用いれば、図4に示す位相軌道の各セグメントのためのゲイン値を計算することができる。
【0052】
σ = σ1(シーク加速)では、式(13)を時間に関して微分して式(13)を掛けると以下の式が得られる。
【0053】
【化1−1】
式(17)からおよびσ1・X2を因数分解することにより、以下の式が得られる。
【0054】
【数13】
図5および図6から、およびΨ3項をシーク中には取るに足りないほどに小さい値であるとして無視することにより、
【0055】
【数14】
ここで、
【0056】
【数15】
式(18)および(19)から、および項1/2・C1を取るに足りないほどに小さい値であるとして無視することにより、
【0057】
【数16】
存在式(11)を満足させる(すなわち、式(22)が任意のX1およびX2に対して負である)ためには、ゲイン定数は以下の不等式を満足させなければならない。
【0058】
逆向きシーク(X2 > 0)の場合、
{
式(20)から(σ1・X1 > 0)のときは、
【0059】
【化1−2】
さもなくば、式(20)から(σ1・X1 < 0)のときは、
【0060】
【化2】
式(21)から(σ1・X2 > 0)のときは、
【0061】
【化3】
さもなくば、式(21)から(σ1・X2 < 0)のときは、
【0062】
【化4】
}
前向きシーク(X2 < 0)の場合、
{
式(20)から(σ1・X1 > 0)のときは、
【0063】
【化5】
さもなくば、式(20)から(σ1・X1 < 0)のときは、
【0064】
【化6】
式(21)から(σ1・X2 > 0)のときは、
【0065】
【化7】
さもなくば、式(21)から(σ1・X2 < 0)のときは、
【0066】
【化8】
}
σ = σ2(等速度でのシーク)では、式(14)を時間に関して微分して式(14)を掛けると以下の式が得られる。
【0067】
【化9】
式(17)から、
【0068】
【化10】
式(19)から、
【0069】
【数17】
存在式(11)を満足させる(すなわち、式(23)が任意のX1およびX2に対して負である)ためには、ゲイン定数は以下の不等式を満足させなければならない。
【0070】
式(20)から(σ2・X1 > 0)のときは、
【0071】
【化11】
さもなくば、式(20)から(σ2・X1 < 0)のときは、
【0072】
【化12】
式(21)から(σ2・X2 > 0)のときは、
【0073】
【化13】
さもなくば、式(21)から(σ2・X2 < 0)のときは、
【0074】
【化14】
σ = σ3(シーク減速)では、式(15)を時間に関して微分して式(15)を掛けると以下の式が得られる。
【0075】
【化15】
式(17)からおよびσ1・X2を因数分解することにより、以下の式が得られる。
【0076】
【数18】
式(18)および(19)から、ならびに項1/2・C2を取るに足りないほどに小さい値であるとして無視することにより、
【0077】
【数19】
存在式(11)を満足させる(すなわち、式(25)が任意のX1およびX2に対して負である)ためには、ゲイン定数は以下の不等式を満足させなければならない。
【0078】
逆向きシーク(X2 > 0)の場合、
{
式(20)から(σ3・X1 > 0)のときは、
【0079】
【化16】
さもなくば、式(20)から(σ3・X1 < 0)のときは、
【0080】
【化17】
式(21)から(σ3・X2 > 0)のときは、
【0081】
【化18】
さもなくば、式(21)から(σ3・X2 < 0)のときは、
【0082】
【化19】
}
前向きシーク(X2 < 0)の場合、
{
式(20)から(σ3・X1 > 0)のときは、
【0083】
【化20】
さもなくば、式(20)から(σ3・X1 < 0)のときは、
【0084】
【化21】
式(21)から(σ3・X2 > 0)のときは、
【0085】
【化22】
さもなくば、式(21)から(σ3・X2 < 0)のときは、
【0086】
【化23】
}
σ = σ4(トラッキング)では、式(16)を時間に関して微分して式(16)を掛けると以下の式が得られる。
【0087】
【化24】
式(17)から、
【0088】
【化25】
式(19)から、
【0089】
【数20】
存在式(11)を満足させる(すなわち、式(26)が任意のX1およびX2に対して負である)ためには、ゲイン定数は以下の不等式を満足させなければならない。
【0090】
式(20)から(σ4・X1 > 0)のときは、
【0091】
【化26】
さもなくば、式(20)から(σ4・X1 < 0)のときは、
【0092】
【化27】
式(21)から(σ4・X2 > 0)のときは、
【0093】
【化28】
さもなくば、式(21)から(σ4・X2 < 0)のときは、
【0094】
【化29】
フローチャートの説明
図6に示す滑動モードコントローラの動作を、図7A、図7B、および図7Cのフローチャートを参照してさらに説明する。サーボ制御システムは最初は図7Aのトラッキングモード200の状態にあり、アクチュエータ8は、シーク前向きまたはシーク逆向きコマンドを受け取るまで現在選択されているトラックをトラックする(204)ものと仮定する。前向きシークが開始されると、シーク?206はYESであり、アクチュエータ位置参照POS Ref 18が新しく選択されたトラックに更新される。加算器20の出力での最初のアクチュエータ位置誤差X1 22は、状態推定器14から出力された現在のトラック16と新しく選択されたトラックとの間の差である。この最初の位置誤差はまた、図4ではX1Iにおける軌道セグメントσ=σ1 80の発端として示される。セグメントσ=σ1 80は、選択トラックに向かうアクチュエータの所望の加速を示す放物線の軌道である。
【0095】
シーク加速(σ=σ1)(208)の開始では、滑動モードコントローラは様々なパラメータ210を初期化する。図6のブロック104および106のゲイン定数は、加速軌道σ=σ1 80に対応する様々な値に更新される。シーク動作中の切り替えノイズを低減させるためには、位置誤差位相状態X1 22は滑動モード制御では使用されない。σ処理ブロック112は、ライン126を介して、基底面をマルチプレクサ122の出力として選択する。この結果、〜X1 130がゼロに設定され、これにより乗算器110の切り替え行為を不能にし、加算器103の出力のVCMコマンドU 28の計算にΨ1が関与しないようにする。位置誤差位相状態〜X1 130が不能にされるため、速度位相状態〜X2 132は所定の値に初期化され、これにより、アクチュエータが所望の方向に移動を開始する(すなわち、選択トラックの方向に逆向きに移動する)ことが確実となる。これを実現するためには、σ処理ブロック112は、ライン124を介して、X2Ref 114をマルチプレクサ120の出力として選択する。σ処理ブロック112はまた、ライン124を介して、所定の定数C 134をマルチプレクサ118の出力(加算器103への第3の入力Ψ3 109)として選択する。所定の定数C 134および積分器116の機能について以下にさらに詳述する。
制御パラメータが加速軌道σ=σ1 80に対して初期化された後、滑動モードコントローラ26は連続して計算を行い、加速器103の出力にVCMコマンド信号U 28を出力する。フローチャート212を参照して、σ1は式(13)に従って更新され、σi 128はσ1に指定される。乗算器108(オペランド符号ビットの簡単なXORとして具現化され得る)はσiにX2を掛け、ゲインブロック104を、結果が正の場合はγiに切り替え、結果が負の場合はζiに切り替える。ゲインブロック104は〜X2 132(X2Ref 114)に選択されたゲインを掛けてΨ2を生成する。加算器103はΨ1、Ψ2、およびΨ3を加算してVCMコマンドU 28を生成する。Ψ1は加速中はゼロであり、Ψ3は無視できるほどに小さいため、VCMコマンド信号U 28はほとんどΨ2に等しい。
増幅器Kpa 30はコマンド信号U 28を増幅してこれをVCM10に印加する。アクチュエータ8が選択トラックの方向に逆向きに加速を始めると、読出し/書込みヘッド6は次の隣接トラックのサーボデータの上を通過して、対応するトラックアドレスを読み出す。読出しチャネル12がトラックアドレスを復号し、これを状態推定器14に転送する。状態推定器は、トラックアドレスおよび現在のVCMコマンド28に応答して、アクチュエータ位置信号16を更新する。加算器20は新しい位置誤差X1 22を出力し、微分器102は新しい速度位相状態X2 100をX1(N)−X1(N−1)として計算する。
σ処理ブロック112は連続チェックを行って、アクチュエータの速度がいつ所定の値に達するかを決定する。X2 ≦ X2Ref? 214がNOの場合は、滑動モードコントローラはループしてフローチャート212に従って次のVCMコマンドU 28を計算する。 X2 ≦ X2Ref? 214がYESの場合は、σ処理ブロック112は、ライン124を介して、X2 100をマルチプレクサ120の出力として選択する(〜X2 = X2を設定216)。つまり、アクチュエータ8の速度(X2 100)が所定の速度(X2Ref 114)に達すると、滑動モードコントローラ26は、フローチャート218でVCMコマンド信号U 28を速度位相状態X2 100の関数として生成する。
【0096】
続いて図7Bに示すフローチャート218に移り、σ処理ブロック112はσ1、σ2、およびσ3をそれぞれ式(13)、(14)、および(15)に従って更新する。σ処理ブロック112の出力σi 128はσ1に指定される。σiおよびX2に応答して、乗算器108は、X1およびX2がσ1 80位相軌道の方向に駆動されるように、切り替えゲインブロック104の状態を設定する。次のコマンドU 28が生成されてVCM10に印加され、これによりアクチュエータ8の選択トラックの方向への移動が続く。
【0097】
σ処理ブロック112は、加速軌道σ1 80に対する位相状態の位置を連続してチェックして、次の軌道セグメントにいつ切り替えるかを決定する。次の軌道セグメントは等速セグメントσ2 82であるか、またはシーク距離が十分に短い場合は減速セグメントσ3 84である。σ値を比較することによって、σ処理ブロック112は次の軌道にいつ切り替えるかを決定する。σ1≦σ3? 220がYESの場合は、σ処理ブロック112は減速軌道σ3 84に切り替わる。σ1≦σ2? 222がYESの場合は、σ処理ブロック112は等速軌道σ2 82に切り替わる。さもなくば、滑動モードコントローラ26はループして、フローチャート218に従って次のVCMコマンドU 28を計算する。
【0098】
次に図7Cに示す等速度フローチャート226を参照して、先ず、切り替えゲインブロック104および106のためのゲイン定数が図4の等速軌道σ2 82に対応する値に更新される(228)。次に、フローチャート230で、σ処理ブロック112はそれぞれ式(14)および(15)に従ってσ2およびσ3を更新する。σ処理ブロック112の出力σi 128はσ2に指定される。この場合も、σiおよびX2に応答して、乗算器108は、X1およびX2がσ2 82位相軌道の方向に駆動されるように、切り替えゲインブロック104の状態を設定する。次のコマンドU 28が生成されてVCM 10に印加され、これによりアクチュエータ8の選択トラックの方向への移動が続く。
【0099】
σ処理ブロック112は、等速度軌道σ2 82に対する位相状態の位置を連続してチェックして、減速軌道セグメントσ3 84にいつ切り替えるかを決定する。σ2≦σ3? 232がYESの場合は、σ処理ブロック112は減速軌道σ3 84に切り替わる。さもなくば、滑動モードコントローラ26はループして、フローチャート230に従って次のVCMコマンドU 28を計算する。
【0100】
次に減速フローチャート234に進み、先ず、切り替えゲインブロック104および106のためのゲイン定数を図4の減速軌道σ3 84に対応する値に更新する(236)。次に、フローチャート238で、σ処理ブロック112はそれぞれ式(15)および(16)に従ってσ3およびσ4を更新する。σ処理ブロック112の出力σi 128はσ3に指定される。この場合も、σiおよびX2に応答して、乗算器108は、X1およびX2がσ3 84位相軌道の方向に駆動されるように、切り替えゲインブロック104の状態を設定する。次のコマンドU 28が生成されてVCM 10に印加され、これによりアクチュエータ8の選択トラックの方向への移動が続く。
【0101】
σ処理ブロック112は、減速軌道σ3 84に対する位相状態の位置を連続してチェックして、トラッキング軌道セグメントσ4 86にいつ切り替えるかを決定する。σ4≦σ3? 232がYESの場合は、σ処理ブロック112はトラッキング軌道σ4 86に切り替わる。さもなくば、滑動モードコントローラ26はループして、フローチャート238に従って次のVCMコマンドU 28を計算する。
【0102】
滑動モードコントローラ26がトラッキングモードに切り替わると、読出しチャネルは選択トラックのセンターラインに隣接して記録されたサーボバースト情報42を処理し、これによりアクチュエータ8のセンターラインに対するオフセット位置を生成する。オフセット位置およびコマンド信号U 28に応答して、状態推定器14は推定アクチュエータ位置16を生成し、これを参照選択トラック位置18から減算して、位置誤差X1 22を生成する。
【0103】
再び図7Aのフローチャート208を参照して、切り替えゲインブロック104および106のためのゲイン定数が、図4のトラッキング軌道σ4 86に対応する値に更新される(236)。σ処理ブロック112は、積分器116の出力をマルチプレクサ118の出力(すなわちΨ3)としてライン126を介して選択する。σ処理ブロック112はまた、マルチプレクサ122の出力として、位置誤差位相状態X1 22を乗算器110への入力としてライン126を介して選択することにより、位置誤差位相状態X1 22を切り替えて滑動モード計算に戻す。この場合も、切り替えノイズを低減するために、位置誤差位相状態X1 22はシーク中は使用されない。
【0104】
次にフローチャート204を参照して、σ処理ブロック112は式(16)に従ってσ4を更新する。σ処理ブロック112の出力σi 128はσ4に指定される。σi、X1、およびX2に応答して、乗算器108および110はそれぞれ、X1およびX1がσ4 86位相軌道の方向に駆動するように切り替えゲインブロック104および108の状態を設定する。次のコマンドU 28が生成されてVCM10に印加され、これにより選択トラックのセンターラインのトラッキングが続く。
【0105】
選択トラックに達すると、いくつかのバイアス力によりアクチュエータ8はセンターラインからの定常状態のDCオフセットを有する。典型的なバイアス力としては、回転しているディスクによって生じる風損の動径方向成分、ディスクスタックの傾き、フレキシブルケーブルのバイアス、および電気オフセットがある。これらのバイアス力を補償して定常状態の位置誤差をゼロにするためには、積分器116が位置誤差位相状態X1 22を積分し、その出力109を合算103して滑動モードコントローラ26の出力28とする。
【0106】
しかし、バイアス力は時間によって変化するのではなく、アクチュエータ8の動径方向の位置により変化する。従って、各トラックに対するバイアス力に対応する定常状態の積分値109がメモリに格納される。選択された新しいトラックをシークするとき、積分器116は不能にされ、選択された新しいトラックに対応するメモリに格納された定常状態の積分値が103において定数134として制御信号28に加えられる。アクチュエータ8が選択された新しいトラックに達しヘッドが十分に落ちつくと、積分器116は再びイネーブルとなり、その出力を再び制御信号28に加える(103)。
【0107】
逆向きシークでは、滑動モードコントローラ26は、不等式が逆であることを除いては、図7A、7B、および7Cのフローチャートで述べられているように動作する。σ処理ブロック112はまた、図3Dに示すように線形位相軌道セグメントの傾きを調節し得る。σ処理ブロック112の別の実施態様では、位置誤差位相状態および速度位相状態は、図4に示す位相面軌道を表すルックアップテーブルに格納された値と比較される。
【0108】
加速の実施態様
本発明の滑動モードコントローラの別の実施態様を図8に示す。滑動モード動作は、等速シークモード(σ=σ2)およびトラッキングモード(σ=σ4)では図6の場合と同じである。しかし、シーク加速(σ=σ1)およびシーク減速(σ=σ3)では、Xvがアクチュエータ速度誤差位相状態、Xαがアクチュエータ加速度位相状態であるとき、状態空間は面(Xv、Xα)内に定義される。
【0109】
シーク加速およびシーク減速中は、参照速度Vrefが、図4に示す速度プロフィールσ1 80およびσ3 84に対応する位置誤差X1の関数として生成される。参照速度生成器は、ルックアップテーブルによりまたは多項式により具現化され得る。参照速度Vrefから推定アクチュエータ速度−X2を減算することによって、アクチュエータ速度誤差位相状態Xvが生成される。アクチュエータ加速度位相状態Xαは、位置誤差X1の第2次導関数を取ることによって生成される。位相状態XvおよびXαにそれぞれの切り替えゲインブロックを掛けることにより信号Ψ2およびΨ4が生成される。図6および図7を参照して上述したように、制御信号Ψ1はシーク中は不能にされ、Ψ3は取るに足りないほどに小さい。従って、モータ制御信号Uは、シーク加速およびシーク減速中はΨ2およびΨ4の関数である。等速(σ=σ2)およびトラッキング(σ=σ4)のシーク中は、VrefはXv=X2となるようにゼロにセットされ、Ψ4は、切り替えゲインブロックのゲインδおよびθをゼロに設定することによって不能にされる。このようにして、図8の滑動モードコントローラは、等速でのシークおよびトラッキング中は図6および図7で述べたように動作する。
【0110】
図8のσ処理ブロックによって使用される軌道セグメントσiは以下のように定義される。
【0111】
σ1 = [Xv − Cl・α]
σ2 = X2 − X2I
σ3 = −[Xv − C2・α]
σ4 = X2 + C3・X1
ここで、
C1 = 所定の加速定数
X1I = 最初のアクチュエータ位置誤差
X2I = 所定の一定位置誤差速度
C2 = 所定の減速定数、および
C3 = 線形減速セグメントの所定の傾き
σ処理ブロックは、以下の不等式に従って軌道セグメント間の切り替えを行う。
【0112】
|X2| > X2Iのとき、σ1からσ2へ
|Vref(k)| < |Vref(k−1)|のとき、σ2からσ3へ
|X1| < 所定のトラック獲得しきい値のとき、σ3からσ4へ、そして
(X1 * Xv < 0)および(|X2| ≦ |V2I|)のとき、σ1からσ3へ
図1の読出しヘッド6が誘導型ではなく磁気抵抗型(MR)である場合は、本発明の滑動モードコントローラは十分なトラッキング性能を提供し、MR読み出しヘッドに関連する内因的な非線形ゲイン変動に実質的に感応しない。従来の線形状態の推定器制御システムでは、図9Aに示す非線形特性を有するMR読出しヘッドは、図9Cに示すように選択トラックのセンターラインのあたりで振動する。しかし、滑動モードコントローラでは、MR読出ヘッドは振動せず、図9Dに示すように実質的にトラック上に維持される。
【0113】
本発明の精神および範囲から外れることなく形態および詳細において多くの変更を行い得る。開示された特定の実施態様は限定することを意図してはいない。例えば、滑動モードコントローラはハードウェアまたはソフトウェアで具現化され得、もっと高次の位相状態が、開示された特定の位相状態に代わって、またはこれらに加えて使用され得る。さらに別の実施態様では、各ディスクのサーボデータを図2Aに示すようなユーザデータのセクタ内に埋め込むのではなく、サーボデータはディスクアレイの専用サーボディスクに記録され得る。開示された実施態様から導き出されるこれらのおよび他の改変は、以下の請求の範囲から適切に解釈される本発明の意図された範囲に属する。
【技術分野】
【0001】
発明の分野
本発明はコンピュータ技術に関する。詳しくは、ディスクドライブの読出し/書込みヘッドアクチュエータの制御に関する。
【背景技術】
【0002】
発明の背景
磁気ディスク格納システムでは、変換ヘッドがデジタルデータを磁気格納媒体に書き込む。デジタルデータは、読出し/書込みヘッドのコイルの電流を変調する役目を果たし、これにより、対応する磁束変化シーケンスが磁気媒体上の一連の同心円状データトラックに書き込まれる。この記録されたデータを読み出すためには、読出し/書込みヘッドが磁気媒体の上を通り、磁気変化をアナログ信号のパルスに変換する。次にこれらのパルスは読出しチャネル回路によって復号されデジタルデータを再生する。
【0003】
読出し/書込みヘッドは、通常は、音声コイルモータ(VCM)によって位置決めされるアクチュエータアーム上に取り付けられる。サーボシステムがVCMを制御し、そしてこれによりヘッド位置を制御する。これはディスクドライブと接続しているコンピュータからの要求に応答して情報の読み出しおよび書き込みを行うために必要とされる。サーボシステムは2つの機能を果たす。すなわち、(1)サーボシステムがヘッドを選択トラックに移動させる「シーク」または「アクセス」機能。(2)ヘッドが選択トラックに到着すると、サーボシステムは、トラックのセンターライン上にヘッドを正確に位置決めし、その位置をヘッドによるトラック通過の連続部分として維持する「トラック追従」または「トラッキング」機能を開始する。データ内に埋め込まれたサーボ制御情報はトラック間ヘッド位置情報を提供し、これにより、推定ヘッド位置と所望のヘッド位置との間の差を示すヘッド位置誤差が計算され得る。ヘッド位置誤差に応答して、サーボ制御システムは、VCM制御信号を生成して、ヘッドを選択トラックのセンターライン上に位置合わせし、これにより、ヘッド位置誤差をゼロにする。
【0004】
従来のサーボシステムは、典型的には、比例積分偏差(PID)フィードバックまたは状態推定器を用いる線形コントローラである。しかし、これらのタイプの線形コントローラは、VCM制御システムのパラメータの変動および外部負荷妨害に感応するという問題を有する。従来の順応性線形コントローラは、パラメータの変動および負荷妨害を補償するためにコントローラを連続して再プログラミングすることによってこれらの感応性の問題を克服している。順応性制御システムは、適切ではあるが、具現化するには複雑過ぎまた費用が掛かり過ぎる。さらに、順応性線形コントローラはまた、機械的な共鳴を補償するためにノッチフィルタを必要とする。従って、ディスクドライブアクチュエータの制御に内因する感応性および共鳴の問題に対する低コストでより簡単な解決策が必要とされている。
【0005】
ディスクドライブのアクチュエータ位置を制御するために、「バンバン(bang−bang)」制御法というさらに別の方法が従来より提案されている(例えば、非特許文献1参照)。このタイプの制御システムでは、モータコマンド信号は、速度誤差入力信号に応答して正の最大加速度と負の最大減速度との間で切り替わる。目標は、アクチュエータがターゲットトラックに向かって移動するときアクチュエータの速度を所定の軌道に従わせることである。しかし、「バンバン」制御システムは正の最大値と負の最大値との間の急速な切り替えによって生じる内因的な「チャタリング」の問題があるために、これまでのところ用いられていない。チャタリングは多量の望ましくないシステムノイズを引き起こす。さらに、ターゲット近くの制御が、正の最大値と負の最大値との間で交互に切り替わるため、トラッキング結果がよくない。従って、切り替えノイズを最小限にし得、そして十分なトラッキング性能を提供するディスクドライブアクチュエータ制御システムが必要である。
【0006】
磁気抵抗型(MR)読出しヘッドを用いる磁気ディスクドライブ格納システムでは、サーボトラッキングにおいてさらに別の問題が生じる。MR読出しヘッドは、誘導型(inductive)読出しヘッドとは異なり、磁束の変化を測定するのではなく、ディスク表面からの磁束を直接測定する。感度を最大にするためには、バイアス磁界がMRヘッドにわたって分配される。しかし、バイアス磁界はヘッドにわたって均等に分配されることはできず、感度の非線形変動、すなわちゲインが生じ得る。図9Aに示すようなこの非線形特性により、制御システムが、選択トラックのセンターラインに従おうとするとき、図9Bに示すように振動することもあり得る。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】C. Denis MeeおよびEric D. Daniel著、Magnetic Recording Volume II: Computer Data Storage、McGraw−Hill, Inc.、1988年、64−65頁
【発明の概要】
【発明が解決しようとする課題】
【0008】
MR読出しヘッドに関連する非線形特性を補償するために、磁気ディスクサーボ制御システムには様々な方法が適用されている。ほとんどの場合、図9Bに示すように、ゲイン変動を補償してより線形の転移関数を実現するために、もっと複雑な線形制御アルゴリズムが用いられるが、これらのシステムはさらに多くの処理電力およびコストを要する。従って、MR読出しヘッドに関連する非線形のゲイン変動を補償し得る低コストでより効率的な磁気ディスクサーボ制御システムが必要とされる。
【課題を解決するための手段】
【0009】
発明の要旨
本発明においては、スピンモータが読出し/書込みヘッドの下の磁気ディスクを回転させる。磁気ディスクには、サーボ情報を埋め込んだいくつかの同心円状のデータトラックが記録されている。読出し/書込みヘッドに接続される読出しチャネル回路は、デジタルで記録されたデータを復号しサーボデータを状態推定器に転送する。状態推定器はサーボデータを処理してアクチュエータ位置信号を生成し、これを参照アクチュエータ位置から減算してアクチュエータ位置誤差信号を生成する。滑動モードコントローラは、アクチュエータ位置誤差信号に応答して、正および負のフィードバックゲイン間(「バンバン」制御のように正および負の最大値間ではない)で切り替えを行い、これによりモータ制御信号を生成する。モータ制御信号は増幅され、アクチュエータの一方の端部に接続されるVCMに印加される。アクチュエータの他方の端部には読出し/書込みヘッドが取り付けられている。VCMはアクチュエータの動きを制御し、これにより読出し/書込みヘッドを選択トラックの上に位置決めする。
【0010】
滑動モードコントローラは2つの位相状態、すなわちアクチュエータ位置誤差位相状態およびアクチュエータ位置誤差速度位相状態によって定義される。アクチュエータ位置誤差位相状態は、推定アクチュエータ位置と所望のアクチュエータ位置との間の差(例えば、読出し/書込みヘッドが位置している現在のトラックと選択された新しいトラックとの間の差)である。アクチュエータ位置誤差速度位相状態は、アクチュエータ位置誤差の変化率であり、アクチュエータ位置誤差を微分することによって、または状態推定器によって生成され得る。位置誤差速度はアクチュエータの負の速度であってもよい。
【0011】
正および負のフィードバックゲイン間で切り替えを行うことによって、滑動モードコントローラは位相状態が所定の位相面軌道に向かって進むように動作する。従って、滑動モードコントローラは、ディスクドライブの物理的な特徴ではなくむしろ位相状態の関数である。また、制御システムはパラメータの変動および外部負荷妨害に実質的に感応しない。さらに、本発明の滑動モードコントローラでは、機械的な共鳴を補償するために使用される従来の線形コントローラのノッチフィルタは必要ない。さらに、滑動モードコントローラはMR読出しヘッドの非線形ゲイン変動に対して感応性がなく、従って、もっと複雑な制御アルゴリズムを必要とせずにトラッキング精度を向上させる。具現化は比較的簡単で低コストであり、また全体的な安定性を保証する明確な方法が存在する。
【0012】
この好適な実施態様では、位相面軌道は4つのセグメントによって定義される。すなわち、アクチュエータの加速を選択トラックの方向に定める実質的に放物線状の加速セグメント、アクチュエータの等速を選択トラックの方向に定める線形等速セグメント、アクチュエータの減速を選択トラックの方向に定める実質的に放物線状の減速セグメント、およびアクチュエータのトラッキングモードを定める線形トラッキングセグメントである。
【0013】
滑動モードコントローラは、位相状態に応答する、正および負のフィードバックモード間の切り替えを行うための切り替えロジックを備え、切り替えロジックは、位相状態が従っている現在の軌道セグメントに従って動作する。滑動モードコントローラはさらに、位相状態がどの軌道セグメントσに従うかを決定することによって、同様に位相状態に応答して切り替えロジックの動作モードを制御するσ処理ブロックを備えている。
【0014】
負および正のフィードバックゲイン間で切り替えを行うことによって生じるノイズを減らすために、滑動モードコントローラは、シーク動作中はアクチュエータ位置誤差速度位相状態のみを用いてモータ制御信号を生成する。これにより、制御信号の大きさを低減し、そしてこれによりシステムの切り替え量は低減する。しかし、アクチュエータの正しい方向への移動を開始させる最初の誤差速度参照信号が必要となる。アクチュエータが選択トラックに実質的に到達すると、滑動モードコントローラはトラッキングモードに切り替わり、アクチュエータ位置誤差位相状態およびアクチュエータ位置誤差速度位相状態の両方を用いてモータ制御信号を生成する。アクチュエータ位置誤差はまた積分されてモータ制御信号に加算され、これにより定常状態の誤差をゼロにする。
【0015】
別の実施態様では、滑動モードコントローラは、アクチュエータ位置誤差、速度誤差、および加速度の位相状態に応答する。速度誤差は、推定速度を参照速度から減算することによって生成される。参照速度はアクチュエータ位置誤差の関数として計算される。
【図面の簡単な説明】
【0016】
【図1】図1は、本発明のディスクドライブ制御システムのブロック図である。
【図2A】図2Aおよび図2Bは、サーボフィールドが埋め込まれた複数の同心円状のデータトラックを有する磁気ディスクのデータフォーマットの例を示す。
【図2B】図2Aおよび図2Bは、サーボフィールドが埋め込まれた複数の同心円状のデータトラックを有する磁気ディスクのデータフォーマットの例を示す。
【図3A】図3Aは、例示的滑動モードコントローラによって制御される2次システムの例を示す。
【図3B】図3Bは、図3Aに示す制御システムの正および負のフィードバックモードに対する位置誤差位相状態および誤差速度位相状態の位相面プロットである。
【図3C】図3Cは、新しいトラックへの前向きシーク中に位相状態を所定の線形位相軌道に向かって駆動する場合の滑動モードコントローラの動作を示す。
【図3D】図3Dは、滑動モードを延長するために図3Cの線形位相軌道の傾きを変更する場合の効果を示す。
【図3E】図3Eは、偏位領域全体をカバーし、これによりパラメータの変動に感応する線形の動作モードを除去する位相面軌道を示す。
【図4】図4は、本発明の好適な位相面軌道を示す。
【図5】図5は、位置誤差および位置誤差速度の位相状態を有する2次システムとしてのVCMコントローラを示す。
【図6】図6は、滑動モードコントローラが位置誤差および位置誤差速度の位相状態に応答する、本発明のディスクドライブ制御システムの詳細な図である。
【図7A】図7A、7B、および7Cは、図6の滑動モードコントローラの動作を示すフローチャートである。
【図7B】図7A、7B、および7Cは、図6の滑動モードコントローラの動作を示すフローチャートである。
【図7C】図7A、7B、および7Cは、図6の滑動モードコントローラの動作を示すフローチャートである。
【図8】図8は、滑動モードコントローラがアクチュエータ位置誤差、速度誤差、および加速度の位相状態に応答する、本発明の別の実施態様の詳細なブロック図である。
【図9A】図9Aは、測定された位置誤差とMR読出しヘッドに対する実際のトラックオフセットとの間の非線形ゲイン変動を示す。
【図9B】図9Bは、測定された位置誤差とMR読出しヘッドに対する従来の補償方法によって生成された実際のトラックオフセットとの間のより線形である関係を示す。
【図9C】図9Cは、図9AのMR読出しヘッドと共に使用されるときの、従来の線形状態推定器制御システムのトラッキング性能を示す。
【図9D】図9Dは、図9AのMR読出しヘッドと共に使用されるときの、本発明の滑動モードコントローラのトラッキング性能を示す。
【発明を実施するための形態】
【0017】
図面の詳細な説明
システム概観
図1は、本発明のディスクドライブ制御システムの概観である。スピンモータ2は、読出し/書込みヘッド6の下のコンピュータデータが記録された磁気ディスク4を回転させる。アクチュエータ8は読出し/書込みヘッド6を選択トラックの上に位置決めし、音声コイルモータ(VCM)10はアクチュエータ8の動きを制御する。読出し/書込みヘッド6からアナログ信号を受け取るように接続された読出しチャネル回路12は、磁気ディスクに記録されたデジタルデータを復号し、サーボ情報を状態推定器14に転送する。状態推定器14はVCM制御システムをモデル化して推定アクチュエータ位置16を生成し、これが加算器20で参照アクチュエータ位置18から減算され、アクチュエータ位置誤差X1 22が生成される。参照アクチュエータ位置18とは、データが書き込まれるかまたは読み出される予定の選択トラックの位置である。滑動モードコントローラ26は、アクチュエータ位置誤差X1 22に応答して、加速モータ制御信号U 28を計算し、この信号は増幅器30によって増幅され、VCM10に印加され、これにより読出し/書込みヘッドが選択トラックの上に位置決めされる。状態推定器14はまた、推定アクチュエータ位置16を生成するためにモータ制御信号U 28を処理する。
【0018】
状態推定器14は、記録チャネルのノイズによって生じるサーボ位置情報の誤差を除去する。図6に示す滑動モードコントローラの実施態様では、状態推定器14はまた微分器102に置き換わって、アクチュエータ位置誤差速度位相状態X2を生成することができる。状態推定器は、米国特許第4,679,103号などに記載されているように周知である。この特許は本明細書において参考のため援用されている。また、本発明によって使用されるアクチュエータ位相状態を生成するためには、状態推定器以外にも周知の技術がある。
【0019】
図2Aおよび図2Bは、内側データトラック32および外側データトラック34を有する複数の同心円状データトラックを含む磁気ディスク4のデータフォーマットの例を示す。図2Bに示すように、各データトラックは、複数のセクタ36および内部に埋め込まれた複数のサーボフィールド38を備えている。サーボフィールド38はトラック番号情報40を含み、これは、選択トラックをシークしている間に推定アクチュエータ位置16を生成するために状態推定器14によって処理される。読出し/書込みヘッドが選択トラックに接近するに従って所定の速度範囲内に速度を緩めると、状態推定器14は、サーボフィールドのトラック番号40およびサーボバースト情報42を処理し、これにより、データの書込みおよび読出しが行われている間にヘッドが選択トラックのセンターラインの上に位置合わせされる。サーボバーストは、トラックのセンターラインに隣接した正確な位置に記録された複数のパルスを含む。読出し/書込みヘッドによって感知されるこれらのサーボバーストパルスの大きさにより、ヘッドがオフトラック位置であることが示される。
【0020】
動作の理論
図3Aを参照して、滑動モードコントローラ26の動作を示す。図示する例示的な2次システム44は、大きさは必ずしも同じではない正のゲイン47と負のゲイン48との間で切り替えを行うスイッチ46を有する例示的な滑動モードコントローラ45によって制御される。位置誤差X1 49は、所望の位置参照コマンド52から被制御システムの推定位置51を減算することによって加算器50から出力される。位置誤差X1 49は、スイッチ46の状態に依存して正のゲイン47または負のゲイン48によって乗算され、加速コマンドU 53が被制御システム44への入力として生成される。積分器54の出力は被制御システム44の速度であり、これはまた位置誤差速度の負の値−X2 55でもある。スイッチ46が正のゲイン47を選択するときは、これは負のフィードバックシステムであり、スイッチ46が負のゲイン48を選択するときは、これは正のフィードバックシステムである。これらの構造のそれぞれではシステムは不安定である。しかし、2つの構造の間で繰り返し切り替えを行うことによってシステムは安定にされ得る。
【0021】
負のフィードバックでの状態空間式は、
【0022】
【数1】
式(1)の一般解は、
【0023】
【数2】
【0024】
【数3】
式(2)および(3)を組み合わせると、
【0025】
【数4】
式(4)の位相面プロットは、図3Bに示すように離心率Aおよび√KAを有する1組の楕円形である。
【0026】
正のフィードバックでの状態空間式は、
【0027】
【数5】
式(5)の一般解は、
【0028】
【数6】
式(5)および(6)を組み合わせると、
【0029】
【数7】
式(7)の位相面プロットは、図3Bに示すように2つの漸近線を有する1組の双曲線である。
【0030】
位相状態が原点に達することはないため、式(4)および(7)の2つの個々の位相面軌道の結果、不安定なシステムとなる。しかし、負および正のフィードバック軌道の交点で定義される第3の位相軌道に沿って位相状態を駆動させることによって原点に達することが可能となる。これは、現在の位相状態値に応答して正のゲインと負のゲインとの間を切り替え、これにより位相状態を所定の第3の位相軌道に従わせることによって実現される。
【0031】
切り替え動作を図3Cを参照して述べる。ここでは、所定の第3の位相軌道は線形セグメント60として示される。新しいトラックが選択されるとき、最初のアクチュエータ位置誤差は点Aにあり、制御システムは最初は正のゲイン(すなわち、負のフィードバック)を選択するように切り替えられる。アクチュエータが選択トラックに向かって加速を始めると、位相状態は負のフィードバックモードのアーク形軌道64に従う。位相状態が交点Bで第3の位相軌道60の発端に達すると、滑動モードコントローラは負のゲインに切り替わり、位相状態は正のフィードバックモードの双曲線軌道66に従う。位相状態が点Cで第3の位相軌道60と交差すると、コントローラは再び正のゲインに切り替わり、位相状態をアーク68に沿って第3の位相軌道60の方向に戻して駆動する。この切り替え行為が繰り返され、これにより位相状態は線形セグメント60に沿って位相面の原点に向かって滑動する。位相状態が位相面の原点から所定の最短距離範囲内にあるとき、システムはトラッキングモードに切り替わり、ここで、滑動モードコントローラ26は、正のフィードバックと負のフィードバックとの間で繰り返し切り替えを行うことにより、位相状態を位相面の原点近くに保持し、これにより、読出し/書込みヘッド6を選択トラックのセンターライン上で位置合わせした状態に保つ。
【0032】
位相状態が図3Cの滑動ラインに従うときの制御システムの時間ドメイン応答は以下の通りである。
【0033】
【数8】
ここで、t1は、位相状態が点Bで滑動ラインに達するときの時間である。式(8)は、滑動ラインに沿ったシステムの平均応答であり、パラメータKの変動または外部負荷妨害によって実質的に影響を受けない。従って、Kの値を決定するためにシステムの正確なパラメータを知る必要はない。式(8)は、後述の存在式(11)と共に、システムは滑動モード領域内では全体的に安定であるということを証明する。
【0034】
滑動モードコントローラは、位相状態値を観察することによって正のゲインと負のゲインとの間の切り替えをいつ行うかを決定する。図3Cの線形位相軌道は次の式によって定義される。
【0035】
【数9】
ここで、定数Cは線形セグメント60の傾きである。位相状態を観察することによって、滑動モードコントローラは以下のようにゲインを切り替える。
【0036】
【数10】
滑動モードコントローラは、σ・X1>0のときは正のゲインに、そしてσ・X1<0のときは負のゲインに切り替わり、これにより位相状態を線形軌道の方向に駆動する。
【0037】
システムの全体的な応答は、滑動ラインの傾きを大きくする(すなわちCを大きくする)ことによって速くなる。しかし、滑動モード制御には重要な制約がある。すなわち、第3の位相軌道は、正および負のフィードバック位相軌道が反対方向で交差する位相面内の領域に制約される。図3Cから、これは滑動ラインの傾きは0<C<√Kに制約されることを意味する。この制約からさらに以下の関係が導き出される。
【0038】
【数11】
式(11)は存在式として知られ、正および負のゲイン値を決定するために使用される。
【0039】
図3Cの線形滑動モード軌道60は、最初は線形フィードバックモードで動作し、最初のアーク軌道64はパラメータの変動および外部負荷妨害によりずれることがあるという欠点を有する。この問題は、動作の滑動モード領域を延ばすことによって低減される。例えば、位相軌道調節器は、図3Dに示すように線形セグメントの傾きを連続して調節することができる。位相状態が第1滑動ライン65に達し所定の期間これに従った後、位相軌道調節器は定数Cを大きくすることによって傾きを大きくして滑動ライン67とする。システムはセグメント間転移中のみ線形モード(非滑動モード)で動作する。最終的には、傾きは滑動ライン69で所定の最大値まで増大し、この時点で位相状態は位相面の原点に向かってライン69に沿って滑動する。
【0040】
より強い具現例としては、1つの位相軌道が偏位領域全体をカバーするように定義することである。これを図3Eに示す。ここでは、位相軌道は3つの線形セグメントσ1 72、σ2 74、およびσ3 76よりなる。
【0041】
σ1 = X2 − C1・(X1 − XI)
σ2 = X2 − X2I、および (12)
σ3 = X2 + C2・X1
ここで、
X1 = アクチュエータ位置誤差位相状態、
X2 = アクチュエータ位置誤差速度位相状態
C1 = 第1セグメントの傾き
C2 = 第3セグメントの傾き
XI = 最初のアクチュエータ位置誤差、および
X2I = 所定の一定位置誤差速度
第1線形セグメントσ1 72はアクチュエータ8の加速を表し、第2線形セグメントσ2 74はアクチュエータ8の等速度を表し、第3線形セグメントσ3 76は選択トラックの方向へのアクチュエータ8の減速を表す。
【0042】
上述のように、C2は0<C2<√Kに制約される。しかし、これら3つのセグメントすべてもまたVCM 10の最大加速度、等速度、および減速度の限度によって制約される。位相軌道がVCMの物理的な限度内で選択されると、コントローラはパラメータの変動および外部負荷妨害とは実質的に関係なく動作する。
【0043】
最適な位相面軌道および本発明の好適な実施態様を図4に示す。この軌道は、実質的に放物線の加速セグメントσ1 80、線形の等速セグメントσ2 82、第2の実質的に放物線の減速セグメントσ3 84、および線形の減速セグメントσ4 86を有する。
【0044】
σ1 = C1・X22 + X1 − X1I (13)
σ2 = X2 − X2I (14)
σ3 = −C2・X22 + X1 (15)
σ4 = X2 + C3・X1 (16)
ここで、
X1 = アクチュエータ位置誤差位相状態、
X2 = アクチュエータ位置誤差速度位相状態
C1 = 所定の加速定数
X1I = 最初のアクチュエータ位置誤差
X2I = 所定の一定位置誤差速度
C2 = 所定の減速定数、および
C3 = 線形減速セグメントの所定の傾き
放物線減速セグメントσ3 84の傾きは原点付近で急激になりすぎて(すなわち、減速が大きくなりすぎて)滑動モードをサポートすることができないため、線形減速セグメントσ4 86が必要となる。トラック間シーク距離が十分に短い場合は線形等速セグメントσ2 82は必要ない(すなわち、最初の位置誤差が所定のしきい値より小さい場合は位相状態はσ1から直接σ3に転移する)。
【0045】
図5は、2次プラントとしてモデル化されたディスクアクチュエータ制御システムを示す。滑動モードコントローラの出力U 28は増幅30されVCM10に入力される。VCM10のパラメータは以下の通りである。
【0046】
Kt = トルク定数
Kv = 粘性減衰係数、および
J = 慣性
モータへの入力90は加速コマンドであり、出力92は速度である。従って、モータ自体が積分器94としてモデル化される。サーボフィールド38、読出しチャネル回路12、および状態推定器14もまた積分器96としてモデル化される。何故なら、VCM10の出力速度92を積分することによりアクチュエータ位置16が生成されるからである。
【0047】
位置誤差位相状態X1 22は加算器20の出力で観察され、位置誤差速度位相状態X2はVCM 10の速度92の負の値として観察される。もしくは、位置誤差速度位相状態X2は、位置誤差信号X1 22を微分することによって生成されるか、または状態推定器14によって生成され得る。図5から、位相状態式は以下のように表記され得る。
【0048】
【数12】
U = ±K・X1であるので、位相状態式は式(1)および(5)に類似し、位相プロットは図3Bに示すものと類似する。
【0049】
滑動モードを具現化するには位置誤差X1のみで十分であるが、位置誤差速度X2をフィードバックループに加えるとさらなる制御が達成される。実際において、位置誤差X1は最初は位置誤差速度X2よりはるかに大きいため、本発明のディスクドライブアクチュエータ制御システムは、位置誤差速度X2をシーク中の唯一の制御信号として用いることにより最適な動作を行う。シーク中にフィードバックループから位置誤差X1を取り除くことにより、切り替えノイズ量が減少する。位相状態が位相軌道の所定の点に達すると、システムは位置誤差X1の位相状態を切り替えて制御ループに戻す。
【0050】
ハードウェアの説明
図6は、本発明のディスクドライブアクチュエータ滑動モード制御システムの詳細図である。アクチュエータ位置誤差X1 22は滑動モードコントローラ26に入力され、微分器102はアクチュエータ位置誤差X1 22を微分して、アクチュエータ位置誤差速度信号X2 100を生成する。図示はしないが別の実施態様では、状態推定器14が位置誤差速度X2を生成する。2つの切り替えゲイン回路104および106は、それぞれ位置誤差〜X1 22および誤差速度〜X2 100制御信号を乗算する。乗算器108および110は、位相状態〜X1およびX2ならびに現在の軌道セグメントσiに応答し、ゲイン回路の切り替え動作を制御する。得られる乗算値の符号によりスイッチの状態が決定され、これにより、位相状態X1およびX2を図4に示す所定の滑動ライン軌道の方向に駆動する。σ処理ブロック112は、位相状態X1およびX2に応答し、軌道セグメント切り替えロジックを具現化し、これにより位相状態が位相軌道のセグメントσiのいずれに従うのかを決定する。σ処理ブロック112、積分器116、参照誤差速度発生器114、ならびにマルチプレクサ118、120、および122の動作について以下に詳述する。
【0051】
切り替えゲインブロック104および106のゲイン値αi、βi、γi、およびζiは、位相状態が従っている現在の軌道セグメントによる適切な値にプログラム可能に設定される。また、ゲイン値は、コントローラが前向きシークを行っているかまたは逆向きシークを行っているかに応じて所定の値にプログラム化される。そうすると存在式(11)および位相軌道式(13)、(14)、(15)、および(16)を用いれば、図4に示す位相軌道の各セグメントのためのゲイン値を計算することができる。
【0052】
σ = σ1(シーク加速)では、式(13)を時間に関して微分して式(13)を掛けると以下の式が得られる。
【0053】
【化1−1】
式(17)からおよびσ1・X2を因数分解することにより、以下の式が得られる。
【0054】
【数13】
図5および図6から、およびΨ3項をシーク中には取るに足りないほどに小さい値であるとして無視することにより、
【0055】
【数14】
ここで、
【0056】
【数15】
式(18)および(19)から、および項1/2・C1を取るに足りないほどに小さい値であるとして無視することにより、
【0057】
【数16】
存在式(11)を満足させる(すなわち、式(22)が任意のX1およびX2に対して負である)ためには、ゲイン定数は以下の不等式を満足させなければならない。
【0058】
逆向きシーク(X2 > 0)の場合、
{
式(20)から(σ1・X1 > 0)のときは、
【0059】
【化1−2】
さもなくば、式(20)から(σ1・X1 < 0)のときは、
【0060】
【化2】
式(21)から(σ1・X2 > 0)のときは、
【0061】
【化3】
さもなくば、式(21)から(σ1・X2 < 0)のときは、
【0062】
【化4】
}
前向きシーク(X2 < 0)の場合、
{
式(20)から(σ1・X1 > 0)のときは、
【0063】
【化5】
さもなくば、式(20)から(σ1・X1 < 0)のときは、
【0064】
【化6】
式(21)から(σ1・X2 > 0)のときは、
【0065】
【化7】
さもなくば、式(21)から(σ1・X2 < 0)のときは、
【0066】
【化8】
}
σ = σ2(等速度でのシーク)では、式(14)を時間に関して微分して式(14)を掛けると以下の式が得られる。
【0067】
【化9】
式(17)から、
【0068】
【化10】
式(19)から、
【0069】
【数17】
存在式(11)を満足させる(すなわち、式(23)が任意のX1およびX2に対して負である)ためには、ゲイン定数は以下の不等式を満足させなければならない。
【0070】
式(20)から(σ2・X1 > 0)のときは、
【0071】
【化11】
さもなくば、式(20)から(σ2・X1 < 0)のときは、
【0072】
【化12】
式(21)から(σ2・X2 > 0)のときは、
【0073】
【化13】
さもなくば、式(21)から(σ2・X2 < 0)のときは、
【0074】
【化14】
σ = σ3(シーク減速)では、式(15)を時間に関して微分して式(15)を掛けると以下の式が得られる。
【0075】
【化15】
式(17)からおよびσ1・X2を因数分解することにより、以下の式が得られる。
【0076】
【数18】
式(18)および(19)から、ならびに項1/2・C2を取るに足りないほどに小さい値であるとして無視することにより、
【0077】
【数19】
存在式(11)を満足させる(すなわち、式(25)が任意のX1およびX2に対して負である)ためには、ゲイン定数は以下の不等式を満足させなければならない。
【0078】
逆向きシーク(X2 > 0)の場合、
{
式(20)から(σ3・X1 > 0)のときは、
【0079】
【化16】
さもなくば、式(20)から(σ3・X1 < 0)のときは、
【0080】
【化17】
式(21)から(σ3・X2 > 0)のときは、
【0081】
【化18】
さもなくば、式(21)から(σ3・X2 < 0)のときは、
【0082】
【化19】
}
前向きシーク(X2 < 0)の場合、
{
式(20)から(σ3・X1 > 0)のときは、
【0083】
【化20】
さもなくば、式(20)から(σ3・X1 < 0)のときは、
【0084】
【化21】
式(21)から(σ3・X2 > 0)のときは、
【0085】
【化22】
さもなくば、式(21)から(σ3・X2 < 0)のときは、
【0086】
【化23】
}
σ = σ4(トラッキング)では、式(16)を時間に関して微分して式(16)を掛けると以下の式が得られる。
【0087】
【化24】
式(17)から、
【0088】
【化25】
式(19)から、
【0089】
【数20】
存在式(11)を満足させる(すなわち、式(26)が任意のX1およびX2に対して負である)ためには、ゲイン定数は以下の不等式を満足させなければならない。
【0090】
式(20)から(σ4・X1 > 0)のときは、
【0091】
【化26】
さもなくば、式(20)から(σ4・X1 < 0)のときは、
【0092】
【化27】
式(21)から(σ4・X2 > 0)のときは、
【0093】
【化28】
さもなくば、式(21)から(σ4・X2 < 0)のときは、
【0094】
【化29】
フローチャートの説明
図6に示す滑動モードコントローラの動作を、図7A、図7B、および図7Cのフローチャートを参照してさらに説明する。サーボ制御システムは最初は図7Aのトラッキングモード200の状態にあり、アクチュエータ8は、シーク前向きまたはシーク逆向きコマンドを受け取るまで現在選択されているトラックをトラックする(204)ものと仮定する。前向きシークが開始されると、シーク?206はYESであり、アクチュエータ位置参照POS Ref 18が新しく選択されたトラックに更新される。加算器20の出力での最初のアクチュエータ位置誤差X1 22は、状態推定器14から出力された現在のトラック16と新しく選択されたトラックとの間の差である。この最初の位置誤差はまた、図4ではX1Iにおける軌道セグメントσ=σ1 80の発端として示される。セグメントσ=σ1 80は、選択トラックに向かうアクチュエータの所望の加速を示す放物線の軌道である。
【0095】
シーク加速(σ=σ1)(208)の開始では、滑動モードコントローラは様々なパラメータ210を初期化する。図6のブロック104および106のゲイン定数は、加速軌道σ=σ1 80に対応する様々な値に更新される。シーク動作中の切り替えノイズを低減させるためには、位置誤差位相状態X1 22は滑動モード制御では使用されない。σ処理ブロック112は、ライン126を介して、基底面をマルチプレクサ122の出力として選択する。この結果、〜X1 130がゼロに設定され、これにより乗算器110の切り替え行為を不能にし、加算器103の出力のVCMコマンドU 28の計算にΨ1が関与しないようにする。位置誤差位相状態〜X1 130が不能にされるため、速度位相状態〜X2 132は所定の値に初期化され、これにより、アクチュエータが所望の方向に移動を開始する(すなわち、選択トラックの方向に逆向きに移動する)ことが確実となる。これを実現するためには、σ処理ブロック112は、ライン124を介して、X2Ref 114をマルチプレクサ120の出力として選択する。σ処理ブロック112はまた、ライン124を介して、所定の定数C 134をマルチプレクサ118の出力(加算器103への第3の入力Ψ3 109)として選択する。所定の定数C 134および積分器116の機能について以下にさらに詳述する。
制御パラメータが加速軌道σ=σ1 80に対して初期化された後、滑動モードコントローラ26は連続して計算を行い、加速器103の出力にVCMコマンド信号U 28を出力する。フローチャート212を参照して、σ1は式(13)に従って更新され、σi 128はσ1に指定される。乗算器108(オペランド符号ビットの簡単なXORとして具現化され得る)はσiにX2を掛け、ゲインブロック104を、結果が正の場合はγiに切り替え、結果が負の場合はζiに切り替える。ゲインブロック104は〜X2 132(X2Ref 114)に選択されたゲインを掛けてΨ2を生成する。加算器103はΨ1、Ψ2、およびΨ3を加算してVCMコマンドU 28を生成する。Ψ1は加速中はゼロであり、Ψ3は無視できるほどに小さいため、VCMコマンド信号U 28はほとんどΨ2に等しい。
増幅器Kpa 30はコマンド信号U 28を増幅してこれをVCM10に印加する。アクチュエータ8が選択トラックの方向に逆向きに加速を始めると、読出し/書込みヘッド6は次の隣接トラックのサーボデータの上を通過して、対応するトラックアドレスを読み出す。読出しチャネル12がトラックアドレスを復号し、これを状態推定器14に転送する。状態推定器は、トラックアドレスおよび現在のVCMコマンド28に応答して、アクチュエータ位置信号16を更新する。加算器20は新しい位置誤差X1 22を出力し、微分器102は新しい速度位相状態X2 100をX1(N)−X1(N−1)として計算する。
σ処理ブロック112は連続チェックを行って、アクチュエータの速度がいつ所定の値に達するかを決定する。X2 ≦ X2Ref? 214がNOの場合は、滑動モードコントローラはループしてフローチャート212に従って次のVCMコマンドU 28を計算する。 X2 ≦ X2Ref? 214がYESの場合は、σ処理ブロック112は、ライン124を介して、X2 100をマルチプレクサ120の出力として選択する(〜X2 = X2を設定216)。つまり、アクチュエータ8の速度(X2 100)が所定の速度(X2Ref 114)に達すると、滑動モードコントローラ26は、フローチャート218でVCMコマンド信号U 28を速度位相状態X2 100の関数として生成する。
【0096】
続いて図7Bに示すフローチャート218に移り、σ処理ブロック112はσ1、σ2、およびσ3をそれぞれ式(13)、(14)、および(15)に従って更新する。σ処理ブロック112の出力σi 128はσ1に指定される。σiおよびX2に応答して、乗算器108は、X1およびX2がσ1 80位相軌道の方向に駆動されるように、切り替えゲインブロック104の状態を設定する。次のコマンドU 28が生成されてVCM10に印加され、これによりアクチュエータ8の選択トラックの方向への移動が続く。
【0097】
σ処理ブロック112は、加速軌道σ1 80に対する位相状態の位置を連続してチェックして、次の軌道セグメントにいつ切り替えるかを決定する。次の軌道セグメントは等速セグメントσ2 82であるか、またはシーク距離が十分に短い場合は減速セグメントσ3 84である。σ値を比較することによって、σ処理ブロック112は次の軌道にいつ切り替えるかを決定する。σ1≦σ3? 220がYESの場合は、σ処理ブロック112は減速軌道σ3 84に切り替わる。σ1≦σ2? 222がYESの場合は、σ処理ブロック112は等速軌道σ2 82に切り替わる。さもなくば、滑動モードコントローラ26はループして、フローチャート218に従って次のVCMコマンドU 28を計算する。
【0098】
次に図7Cに示す等速度フローチャート226を参照して、先ず、切り替えゲインブロック104および106のためのゲイン定数が図4の等速軌道σ2 82に対応する値に更新される(228)。次に、フローチャート230で、σ処理ブロック112はそれぞれ式(14)および(15)に従ってσ2およびσ3を更新する。σ処理ブロック112の出力σi 128はσ2に指定される。この場合も、σiおよびX2に応答して、乗算器108は、X1およびX2がσ2 82位相軌道の方向に駆動されるように、切り替えゲインブロック104の状態を設定する。次のコマンドU 28が生成されてVCM 10に印加され、これによりアクチュエータ8の選択トラックの方向への移動が続く。
【0099】
σ処理ブロック112は、等速度軌道σ2 82に対する位相状態の位置を連続してチェックして、減速軌道セグメントσ3 84にいつ切り替えるかを決定する。σ2≦σ3? 232がYESの場合は、σ処理ブロック112は減速軌道σ3 84に切り替わる。さもなくば、滑動モードコントローラ26はループして、フローチャート230に従って次のVCMコマンドU 28を計算する。
【0100】
次に減速フローチャート234に進み、先ず、切り替えゲインブロック104および106のためのゲイン定数を図4の減速軌道σ3 84に対応する値に更新する(236)。次に、フローチャート238で、σ処理ブロック112はそれぞれ式(15)および(16)に従ってσ3およびσ4を更新する。σ処理ブロック112の出力σi 128はσ3に指定される。この場合も、σiおよびX2に応答して、乗算器108は、X1およびX2がσ3 84位相軌道の方向に駆動されるように、切り替えゲインブロック104の状態を設定する。次のコマンドU 28が生成されてVCM 10に印加され、これによりアクチュエータ8の選択トラックの方向への移動が続く。
【0101】
σ処理ブロック112は、減速軌道σ3 84に対する位相状態の位置を連続してチェックして、トラッキング軌道セグメントσ4 86にいつ切り替えるかを決定する。σ4≦σ3? 232がYESの場合は、σ処理ブロック112はトラッキング軌道σ4 86に切り替わる。さもなくば、滑動モードコントローラ26はループして、フローチャート238に従って次のVCMコマンドU 28を計算する。
【0102】
滑動モードコントローラ26がトラッキングモードに切り替わると、読出しチャネルは選択トラックのセンターラインに隣接して記録されたサーボバースト情報42を処理し、これによりアクチュエータ8のセンターラインに対するオフセット位置を生成する。オフセット位置およびコマンド信号U 28に応答して、状態推定器14は推定アクチュエータ位置16を生成し、これを参照選択トラック位置18から減算して、位置誤差X1 22を生成する。
【0103】
再び図7Aのフローチャート208を参照して、切り替えゲインブロック104および106のためのゲイン定数が、図4のトラッキング軌道σ4 86に対応する値に更新される(236)。σ処理ブロック112は、積分器116の出力をマルチプレクサ118の出力(すなわちΨ3)としてライン126を介して選択する。σ処理ブロック112はまた、マルチプレクサ122の出力として、位置誤差位相状態X1 22を乗算器110への入力としてライン126を介して選択することにより、位置誤差位相状態X1 22を切り替えて滑動モード計算に戻す。この場合も、切り替えノイズを低減するために、位置誤差位相状態X1 22はシーク中は使用されない。
【0104】
次にフローチャート204を参照して、σ処理ブロック112は式(16)に従ってσ4を更新する。σ処理ブロック112の出力σi 128はσ4に指定される。σi、X1、およびX2に応答して、乗算器108および110はそれぞれ、X1およびX1がσ4 86位相軌道の方向に駆動するように切り替えゲインブロック104および108の状態を設定する。次のコマンドU 28が生成されてVCM10に印加され、これにより選択トラックのセンターラインのトラッキングが続く。
【0105】
選択トラックに達すると、いくつかのバイアス力によりアクチュエータ8はセンターラインからの定常状態のDCオフセットを有する。典型的なバイアス力としては、回転しているディスクによって生じる風損の動径方向成分、ディスクスタックの傾き、フレキシブルケーブルのバイアス、および電気オフセットがある。これらのバイアス力を補償して定常状態の位置誤差をゼロにするためには、積分器116が位置誤差位相状態X1 22を積分し、その出力109を合算103して滑動モードコントローラ26の出力28とする。
【0106】
しかし、バイアス力は時間によって変化するのではなく、アクチュエータ8の動径方向の位置により変化する。従って、各トラックに対するバイアス力に対応する定常状態の積分値109がメモリに格納される。選択された新しいトラックをシークするとき、積分器116は不能にされ、選択された新しいトラックに対応するメモリに格納された定常状態の積分値が103において定数134として制御信号28に加えられる。アクチュエータ8が選択された新しいトラックに達しヘッドが十分に落ちつくと、積分器116は再びイネーブルとなり、その出力を再び制御信号28に加える(103)。
【0107】
逆向きシークでは、滑動モードコントローラ26は、不等式が逆であることを除いては、図7A、7B、および7Cのフローチャートで述べられているように動作する。σ処理ブロック112はまた、図3Dに示すように線形位相軌道セグメントの傾きを調節し得る。σ処理ブロック112の別の実施態様では、位置誤差位相状態および速度位相状態は、図4に示す位相面軌道を表すルックアップテーブルに格納された値と比較される。
【0108】
加速の実施態様
本発明の滑動モードコントローラの別の実施態様を図8に示す。滑動モード動作は、等速シークモード(σ=σ2)およびトラッキングモード(σ=σ4)では図6の場合と同じである。しかし、シーク加速(σ=σ1)およびシーク減速(σ=σ3)では、Xvがアクチュエータ速度誤差位相状態、Xαがアクチュエータ加速度位相状態であるとき、状態空間は面(Xv、Xα)内に定義される。
【0109】
シーク加速およびシーク減速中は、参照速度Vrefが、図4に示す速度プロフィールσ1 80およびσ3 84に対応する位置誤差X1の関数として生成される。参照速度生成器は、ルックアップテーブルによりまたは多項式により具現化され得る。参照速度Vrefから推定アクチュエータ速度−X2を減算することによって、アクチュエータ速度誤差位相状態Xvが生成される。アクチュエータ加速度位相状態Xαは、位置誤差X1の第2次導関数を取ることによって生成される。位相状態XvおよびXαにそれぞれの切り替えゲインブロックを掛けることにより信号Ψ2およびΨ4が生成される。図6および図7を参照して上述したように、制御信号Ψ1はシーク中は不能にされ、Ψ3は取るに足りないほどに小さい。従って、モータ制御信号Uは、シーク加速およびシーク減速中はΨ2およびΨ4の関数である。等速(σ=σ2)およびトラッキング(σ=σ4)のシーク中は、VrefはXv=X2となるようにゼロにセットされ、Ψ4は、切り替えゲインブロックのゲインδおよびθをゼロに設定することによって不能にされる。このようにして、図8の滑動モードコントローラは、等速でのシークおよびトラッキング中は図6および図7で述べたように動作する。
【0110】
図8のσ処理ブロックによって使用される軌道セグメントσiは以下のように定義される。
【0111】
σ1 = [Xv − Cl・α]
σ2 = X2 − X2I
σ3 = −[Xv − C2・α]
σ4 = X2 + C3・X1
ここで、
C1 = 所定の加速定数
X1I = 最初のアクチュエータ位置誤差
X2I = 所定の一定位置誤差速度
C2 = 所定の減速定数、および
C3 = 線形減速セグメントの所定の傾き
σ処理ブロックは、以下の不等式に従って軌道セグメント間の切り替えを行う。
【0112】
|X2| > X2Iのとき、σ1からσ2へ
|Vref(k)| < |Vref(k−1)|のとき、σ2からσ3へ
|X1| < 所定のトラック獲得しきい値のとき、σ3からσ4へ、そして
(X1 * Xv < 0)および(|X2| ≦ |V2I|)のとき、σ1からσ3へ
図1の読出しヘッド6が誘導型ではなく磁気抵抗型(MR)である場合は、本発明の滑動モードコントローラは十分なトラッキング性能を提供し、MR読み出しヘッドに関連する内因的な非線形ゲイン変動に実質的に感応しない。従来の線形状態の推定器制御システムでは、図9Aに示す非線形特性を有するMR読出しヘッドは、図9Cに示すように選択トラックのセンターラインのあたりで振動する。しかし、滑動モードコントローラでは、MR読出ヘッドは振動せず、図9Dに示すように実質的にトラック上に維持される。
【0113】
本発明の精神および範囲から外れることなく形態および詳細において多くの変更を行い得る。開示された特定の実施態様は限定することを意図してはいない。例えば、滑動モードコントローラはハードウェアまたはソフトウェアで具現化され得、もっと高次の位相状態が、開示された特定の位相状態に代わって、またはこれらに加えて使用され得る。さらに別の実施態様では、各ディスクのサーボデータを図2Aに示すようなユーザデータのセクタ内に埋め込むのではなく、サーボデータはディスクアレイの専用サーボディスクに記録され得る。開示された実施態様から導き出されるこれらのおよび他の改変は、以下の請求の範囲から適切に解釈される本発明の意図された範囲に属する。
【特許請求の範囲】
【請求項1】
デジタルデータを記録する磁気ディスクドライブシステムであって、本願明細書に記載のシステム。
【請求項1】
デジタルデータを記録する磁気ディスクドライブシステムであって、本願明細書に記載のシステム。
【図1】
【図2A】
【図2B】
【図3A】
【図3B】
【図3C】
【図3D】
【図3E】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図7C】
【図8】
【図9A】
【図9B】
【図9C】
【図9D】
【図2A】
【図2B】
【図3A】
【図3B】
【図3C】
【図3D】
【図3E】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図7C】
【図8】
【図9A】
【図9B】
【図9C】
【図9D】
【公開番号】特開2009−217927(P2009−217927A)
【公開日】平成21年9月24日(2009.9.24)
【国際特許分類】
【出願番号】特願2009−115063(P2009−115063)
【出願日】平成21年5月11日(2009.5.11)
【分割の表示】特願平9−506506の分割
【原出願日】平成8年7月12日(1996.7.12)
【出願人】(595158337)シーラス ロジック,インコーポレイテッド (44)
【氏名又は名称原語表記】Cirrus Logic,Inc.
【Fターム(参考)】
【公開日】平成21年9月24日(2009.9.24)
【国際特許分類】
【出願日】平成21年5月11日(2009.5.11)
【分割の表示】特願平9−506506の分割
【原出願日】平成8年7月12日(1996.7.12)
【出願人】(595158337)シーラス ロジック,インコーポレイテッド (44)
【氏名又は名称原語表記】Cirrus Logic,Inc.
【Fターム(参考)】
[ Back to top ]