(57)【要約】【課題】ディスク装置に加わる外乱によるヘッドの位置ずれを、制御系で補正する位置制御装置において、未知の外乱周波数に適応制御する。【解決手段】位置誤差を基準とした信号から適応則により、外部振動周波数を推定する周波数推定ブロック（２４）と、この外部振動周波数を用いて、逐次、補償器（２３）の定数を修正する修正テーブル（２４）を設ける。このため、逐次、補償器（２３）の定数が、推定角周波数に応じて修正されるため、広い範囲の外部振動周波数に対して、精度の高い追従制御が可能になる。【選択図】図６
2007004946.tif 000002
【特許請求の範囲】
【請求項１】
ディスクからヘッドが読み取った位置信号に応じて、アクチュエータにより、前記ヘッドを前記ディスクの所望トラックに位置決め制御するヘッド位置決め制御方法において、
目標位置と前記位置信号から得た現在位置との位置誤差に応じて、前記アクチュエータの制御値を求めるステップと、
前記位置誤差を基準にした信号から、適応則に従い、逐次外部振動周波数を推定するステップと、
前記位置誤差を基準にした信号から、周期外乱の回転ベクトルを推定し、外部振動抑圧用定数を使用して、外部振動抑圧制御値を求めるステップと、
前記逐次推定した各外部振動周波数に応じて、前記外部振動抑圧用定数を逐次補正するステップと、前記制御値と前記外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成するステップとを有する
ことを特徴とするヘッド位置決め制御方法。
【請求項２】
前記推定ステップは、前記位置誤差を基準にした信号から、適応則に従い、逐次外乱の角周波数を推定するステップからなり、
前記外部振動抑圧値を求めるステップは、前記推定した周期外乱の回転ベクトルを、外部振動抑圧用定数としての出力ゲインを使用して、外部振動抑圧制御値としての電流値に変換するステップからなり、前記補正ステップは、前記逐次推定した角周波数に応じて、前記出力ゲインを逐次補正するステップとからなる
ことを特徴とする付記１のヘッド位置決め制御方法。
【請求項３】
前記外部振動抑圧制御値を、１サンプル遅延するステップを更に有し、
前記生成ステップは、現サンプルでの前記制御値と前記１サンプル遅延された外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成するステップからなる
ことを特徴とする付記１のヘッド位置決め制御方法。
【請求項４】
前記推定ステップと前記補正ステップと前記外部振動抑圧値を求めるステップと前記生成ステップとを、１サンプル毎に実行し、前記制御値を求めるステップを、前記１サンプルの間に複数回実行する
ことを特徴とする付記１のヘッド位置決め制御方法。
【請求項５】
複数の外部振動周波数毎に、前記推定ステップと前記補正ステップと前記外部振動抑圧値を求めるステップとを実行するステップと、
前記各外部振動周波数に対する複数の前記外部振動抑圧値を加算するステップとを更に有する
ことを特徴とする付記１のヘッド位置決め制御方法。
【請求項６】
ディスクからヘッドが読み取った位置信号に応じて、アクチュエータにより、前記ヘッドを前記ディスクの所望トラックに位置決め制御するヘッド位置決め制御装置において、
目標位置と前記位置信号から得た現在位置との位置誤差に応じて、前記アクチュエータの制御値を求める制御ブロックと、
前記位置誤差を基準にした信号から、適応則に従い、逐次外部振動周波数を推定し、前記位置誤差を基準にした信号から、周期外乱の回転ベクトルを推定し、外部振動抑圧用定数を使用して、外部振動抑圧制御値を求め、且つ前記逐次推定した各外部振動周波数に応じて、前記外部振動抑圧用定数を逐次補正する適応制御ブロックと、
前記制御値と前記外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成する加算ブロックとを有する
ことを特徴とするヘッド位置決め制御装置。
【請求項７】
前記適応制御ブロックは、前記位置誤差を基準にした信号から、適応則に従い、逐次外乱の角周波数を推定し、前記推定した周期外乱の回転ベクトルを、外部振動抑圧用定数としての出力ゲインを使用して、外部振動抑圧制御値としての電流値に変換し、前記逐次推定した角周波数に応じて、前記出力ゲインを逐次補正する
ことを特徴とする付記６のヘッド位置決め制御装置。
【請求項８】
前記適応制御ブロックは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する前記出力ゲインを取り出し、前記外部振動抑圧用定数としての出力ゲインを更新する
ことを特徴とする付記７のヘッド位置決め制御装置。
【請求項９】
前記適応制御ブロックは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する２つの前記出力ゲインを取り出し、前記２つの出力ゲインの補間により、前記推定角周波数の出力ゲインを求め、前記外部振動抑圧用定数としての出力ゲインを更新する
ことを特徴とする付記７のヘッド位置決め制御装置。
【請求項１０】
ディスクから情報を読み取るヘッドと、
前記ヘッドを前記ディスクのトラック横断方向に移動するアクチュエータと、
前記ヘッドが読み取った位置信号に応じて、前記ヘッドを前記ディスクの所望トラックに位置決めするため、目標位置と前記位置信号から得た現在位置との位置誤差に応じて、前記アクチュエータの制御値を求める制御部とを有し、
前記制御部は、
前記位置誤差を基準にした信号から、適応則に従い、逐次外部振動周波数を推定し、前記位置誤差を基準にした信号から、周期外乱の回転ベクトルを推定し、外部振動抑圧用定数を使用して、外部振動抑圧制御値を求め、且つ前記逐次推定した各外部振動周波数に応じて、前記外部振動抑圧用定数を逐次補正する適応制御ブロックと、
前記制御値と前記外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成する加算ブロックとを有する
ことを特徴とするディスク装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外乱によるヘッドの位置ずれを抑制するためのディスク装置のヘッド位置制御方法およびディスク装置に関し、特に、外部振動によるヘッドの位置ずれを抑制するためのヘッド位置制御方法およびディスク装置に関する。
【背景技術】
【０００２】
回転する記憶媒体（例えば、ディスク媒体）に、ヘッドで、データを記録、再生するディスク装置では、ヘッドを記憶媒体の所望のトラックに位置決めし、そのトラックに、データをリード／ライトする。このようなディスク装置、例えば、磁気ディスク装置や光ディスク装置において、ヘッドを目標トラックに正確に位置決めすることが、記録密度向上のために極めて重要である。
【０００３】
この位置決めを阻害する要因の１つとして、ディスク上の同心円状のサーボ信号の中心が、モータの回転中心と異なることにより生じる偏心がある。この偏心を補正する技術として、オブザーバを利用した制御方法がある（例えば、特許文献１参照）。
【０００４】
偏心は、回転周波数の整数倍に同期した正弦波状の位置ゆれを発生させる。前記のオブザーバ制御方法は、このような正弦波状の位置揺れを抑圧し、目標トラックに正確に位置決めすることができる。しかしながら、このような偏心補正は、あらかじめ補正する周波数を事前に把握していなければならない。たとえば、回転数の整数倍、１倍や２倍でなければならない。
【０００５】
位置決めを阻害する２つ目の要因として、ディスク装置の外部から加わる振動がある。この振動はさまざまな波形があるが、ここでは、正弦波状の振動に対処する方法について検討する。前記の偏心補正制御を応用することで、回転数の整数倍以外の周波数にも対処することは可能になる。
【０００６】
前記の従来の構成は、外乱の周波数が既知であることを前提としている。ところが、外部振動は、どのような振動が加わるのかは、制御系の設計時点では未知であり、事前にその周波数を把握することはできない。それゆえ、なんらかの未知の周波数の検出手段が必要になり、周波数さえ検出できれば、前述の特許文献１に示したような制御方法を用いて、外部振動による位置ゆれを抑圧することが可能になる。
【０００７】
図４４は、従来の外乱周波数を検出し、所定の周波数の正弦波状の外乱を抑圧するための制御系の構成図である。目標位置ｒと観測位置ｙとの位置誤差ｅを演算器１００で演算し、フィードバック制御を行うコントローラ１０２（Ｃｎ）に入力する。コントローラ１０２は、周知のＰＩＤ制御、ＰＩ制御＋ＬｅａｄＬａｇ、オブザーバ制御により、制御電流値Ｕｎを出力する。
【０００８】
このコントローラ１０２に対して、外乱の周波数を推定する周波数推定器（ω推定）１０６と、適応制御により、特定の周波数の外乱を抑圧するための補償器（Ｃｄ）１０４を付加する。制御対象１０３（Ｐ）へは、コントローラ１０２（Ｃｎ）の出力Ｕｎと補償器１０４（Ｃｄ）の出力Ｕｄの和であるＵを供給する。この周波数推定器１０６は、位置誤差ｅを基に、外乱の角周波数ω（＝２πｆ）を推定し、補償器１０４の外乱周波数抑圧の伝達関数に、導入する。補償器１０４は、位置誤差ｅと、この推定角周波数ωとから正弦波の漸化式（適応制御式）を計算し、補償電流出力Ｕｄを計算する。
【０００９】
このようにして、従来の偏心補正制御を、ある範囲の未知周波数の外乱にも対応させるべく、外乱の周波数を検出し、未知周波数の抑圧を行う（例えば、非特許文献２参照）。この未知の周波数を推定し、未知周波数の外乱を抑圧する方法としては、正弦波の漸化式を仮定したもの（例えば、非特許文献１参照）、前述の誤差信号を基に、適応則を導入して、制御対象の駆動量を補正するもの（例えば、非特許文献２参照）が、提案されている。更に、誤差信号から未知の周波数を推定し、位置レベルでの外乱抑圧信号を生成し、その誤差信号を補正し、コントローラに入力するものも提案されている（例えば、特許文献２参照）。
【００１０】
例えば、図４５の系の開ループ特性の例に示すように、開ループ特性のゼロクロス周波数を１０００Ｈｚに、対象とする外乱の周波数を５００Ｈｚに設定する。これは、図４６  において、（Ｃｎ＋Ｃｄ）Ｐの式で表現される特性である。このように、特定の周波数（ここでは、５００Ｈｚ）における開ループ特性のゲインを高く設定することで、外乱の抑圧を実現できる。
【特許文献１】日本特許第３、４６０、７９５号公報
【特許文献２】米国特許第６，７６２，９０２号公報
【非特許文献１】電気学会研究会資料  産業計測研究会  ＩＩＣ−０４−７０「周波数追従型ピークフィルタ」（２００４年９月１０日発行）
【非特許文献２】Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ４０ｔｈ  ＩＥＥＥ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｄｅｃｉｓｉｏｎ  ａｎｄ  Ｃｏｎｔｒｏｌ，ｐｐ．４９０９−４９１４（２００１年１２月発行）
【発明の開示】
【発明が解決しようとする課題】
【００１１】
近年、かかるディスク装置、特に、ハード・ディスク・ドライブ（ＨＤＤ）が、モバイル機器、例えば、携帯型パーソナルコンピュータ、携帯端末、携帯電話、携帯型ＡＶ機器に搭載されている。このような環境で、使用される場合には、未知の外乱の周波数が、不特定であり、広い範囲の外乱周波数に適応する必要がある。
【００１２】
このため、従来の外部振動を抑圧する補償器を、既存のコントローラに付加する際には、抑圧信号生成式における外部振動の周波数に応じた係数を適切に設定する必要がある。例えば、図４４の系では、外部振動を抑圧する補償器１０４の伝達関数（適応則）のゲインと位相を調整する必要がある。この調整が適切でなければ、制御系が不安定になる。
【００１３】
従来の前記した各種の外乱抑圧制御方法は、フィードバック系の設計理論により、経験的に又は予測的に、事前にゲイン・位相等の係数を定め、生成式で、固定であった。このような係数の設定では、ある程度の範囲の外乱周波数（例えば、サーボ系の予測周波数範囲）による外乱抑圧は、可能である。
【００１４】
しかしながら、ディスク装置が、前述のようなモバイル環境で使用される場合には、未知の外乱周波数の範囲は、使用状況により変化し、予測が困難である。従来技術では、外乱の適応制御は、追従可能な周波数範囲が限られていたため、前記した使用環境では、調整したゲインと位相が適切でなく、かえって、制御系が不安定となる場合がある。又、外乱の大きさも特定できず、制御系が不安定となり、誤差が増幅され、発散する可能性もある。
【００１５】
従って、本発明の目的は、より広い範囲の外乱周波数に適応した外乱抑圧制御を実現するためのヘッド位置制御方法、ヘッド位置制御装置及びディスク装置を提供することにある。
【００１６】
又、本発明の他の目的は、モバイル環境で使用しても、外乱抑圧制御を実現するためのヘッド位置制御方法、ヘッド位置制御装置及びディスク装置を提供することにある。
【００１７】
更に、本発明の別の目的は、より広い範囲の外乱周波数及び外乱の振幅に適応した外乱抑圧制御を実現するためのヘッド位置制御方法、ヘッド位置制御装置及びディスク装置を提供することにある。
【００１８】
更に、本発明の別の目的は、高精度で、より広い範囲の外乱周波数に適応した外乱抑圧制御を実現するためのヘッド位置制御方法、ヘッド位置制御装置及びディスク装置を提供することにある。
【課題を解決するための手段】
【００１９】
この目的の達成のため、本発明は、ディスクからヘッドが読み取った位置信号に応じて、アクチュエータにより、前記ヘッドを前記ディスクの所望トラックに位置決め制御するヘッド位置決め制御方法である。その制御方法は、目標位置と前記位置信号から得た現在位置との位置誤差に応じて、前記アクチュエータの制御値を求めるステップと、前記位置誤差を基準にした信号から、適応則に従い、逐次外部振動周波数を推定するステップと、前記位置誤差を基準にした信号から、周期外乱の回転ベクトルを推定し、外部振動抑圧用定数を使用して、外部振動抑圧制御値を求めるステップと、前記逐次推定した各外部振動周波数に応じて、前記外部振動抑圧用定数を逐次補正するステップと、前記制御値と前記外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成するステップとを有する。
【００２０】
又、本発明は、ディスクからヘッドが読み取った位置信号に応じて、アクチュエータにより、前記ヘッドを前記ディスクの所望トラックに位置決め制御するヘッド位置決め制御装置である。その装置は、目標位置と前記位置信号から得た現在位置との位置誤差に応じて、前記アクチュエータの制御値を求める制御ブロックと、前記位置誤差を基準にした信号から、適応則に従い、逐次外部振動周波数を推定し、前記位置誤差を基準にした信号から、周期外乱の回転ベクトルを推定し、外部振動抑圧用定数を使用して、外部振動抑圧制御値を求め、且つ前記逐次推定した各外部振動周波数に応じて、前記外部振動抑圧用定数を逐次補正する適応制御ブロックと、前記制御値と前記外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成する加算ブロックとを有する。
【００２１】
又、本発明のディスク装置は、ディスクから情報を読み取るヘッドと、前記ヘッドを前記ディスクのトラック横断方向に移動するアクチュエータと、前記ヘッドが読み取った位置信号に応じて、前記ヘッドを前記ディスクの所望トラックに位置決めするため、目標位置と前記位置信号から得た現在位置との位置誤差に応じて、前記アクチュエータの制御値を求める制御部とを有し、前記制御部は、前記位置誤差を基準にした信号から、適応則に従い、逐次外部振動周波数を推定し、前記位置誤差を基準にした信号から、周期外乱の回転ベクトルを推定し、外部振動抑圧用定数を使用して、外部振動抑圧制御値を求め、且つ前記逐次推定した各外部振動周波数に応じて、前記外部振動抑圧用定数を逐次補正する適応制御ブロックと、前記制御値と前記外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成する加算ブロックとを有する。
【００２２】
更に、本発明では、好ましくは、前記推定ステップは、前記位置誤差を基準にした信号から、適応則に従い、逐次外乱の角周波数を推定するステップからなり、前記外部振動抑圧値を求めるステップは、前記推定した周期外乱の回転ベクトルを、外部振動抑圧用定数としての出力ゲインを使用して、外部振動抑圧制御値としての電流値に変換するステップからなり、前記補正ステップは、前記逐次推定した角周波数に応じて、前記出力ゲインを逐次補正するステップとからなる。
【００２３】
更に、本発明では、好ましくは、前記補正ステップは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する前記出力ゲインを取り出し、前記外部振動抑圧用定数としての出力ゲインを更新するステップからなる。
【００２４】
更に、本発明では、好ましくは、前記補正ステップは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する２つの前記出力ゲインを取り出すステップと、前記２つの出力ゲインの補間により、前記推定角周波数の出力ゲインを求め、前記外部振動抑圧用定数としての出力ゲインを更新するステップからなる。
【００２５】
更に、本発明では、好ましくは、前記外部振動抑圧制御値を、１サンプル遅延するステップを更に有し、前記生成ステップは、現サンプルでの前記制御値と前記１サンプル遅延された外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成するステップからなる。
【００２６】
更に、本発明では、好ましくは、前記推定ステップは、更に、前記推定した角周波数を、上限値、下限値で制限するステップを有する。
【００２７】
更に、本発明では、好ましくは、前記推定ステップと前記補正ステップと前記外部振動抑圧値を求めるステップと前記生成ステップとを、１サンプル毎に実行し、前記制御値を求めるステップを、前記１サンプルの間に複数回実行する。
【００２８】
更に、本発明では、好ましくは、複数の外部振動周波数毎に、前記推定ステップと前記補正ステップと前記外部振動抑圧値を求めるステップとを実行するステップと、前記各外部振動周波数に対する複数の前記外部振動抑圧値を加算するステップとを更に有する。
【００２９】
更に、本発明では、好ましくは、前記実行ステップは、前記推定した外部振動周波数が重ならないように、前記一方の推定した外部振動周波数を修正するステップを更に有する。
【発明の効果】
【００３０】
本発明では、位置誤差を基準とした信号から適応則により、外部振動周波数を推定するので、積分補償された正確な外部振動周波数を推定でき、且つこの外部振動周波数を用いて、逐次、補償器の定数を修正するので、広い範囲の外部振動周波数に対して、精度の高い追従制御が可能になる。このように、推定した外部振動周波数の値に応じて、補償器の動作を常に最適に保つことができ補償器の定数を修正することで、広い範囲の外部振動周波数に対して、追従制御が可能になる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明を、ディスク装置、位置決め制御系の第１の実施の形態、位置決め制御系の第２の実施の形態、位置決め制御系の第３の実施の形態、位置決め制御系の第４の実施の形態、位置決め制御系の第５の実施の形態、位置決め制御系の第６の実施の形態、位置決め制御系の第７の実施の形態、実施例、他の実施の形態の順で説明する。尚、本発明においては、以下に、磁気ディスク装置（ハード・ディスク・ドライブ）を例にして説明する。しかしながら、本発明において説明する技術は、他のディスク装置、例えば、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、などの光ディスク装置、ＭＯやＭＤなどの光磁気ディスク装置、にも適用できる。
【００３２】
［ディスク装置］
図１は、本発明の一実施の形態のディスク記憶装置の構成図、図２は、図１の磁気ディスクの位置信号の配置図、図３は、図１及び図２の磁気ディスクの位置信号の構成図、図４は、図３の位置信号の読み取り波形図、図５は、図１のヘッド位置制御の説明図である。
【００３３】
図１は、ディスク記憶装置として、磁気ディスク装置を示す。図１に示すように、磁気記憶媒体である磁気ディスク４が、スピンドルモータ５の回転軸２に設けられている。スピンドルモータ５は、磁気ディスク４を回転する。アクチュエータ（ＶＣＭ）１は、先端に磁気ヘッド３を備え、磁気ヘッド３を磁気ディスク４の半径方向に移動する。
【００３４】
アクチュエータ１は、回転軸を中心に回転するボイスコイルモータ（ＶＣＭ）で構成される。図では、磁気ディスク装置に、２枚の磁気ディスク４が搭載され、４つの磁気ヘッド３が、同一のアクチュエータ１で同時に駆動される。
【００３５】
磁気ヘッド３は、リード素子と、ライト素子とからなる。磁気ヘッド３は、スライダに、磁気抵抗（ＭＲ）素子を含むリード素子を積層し、その上にライトコイルを含むライト素子を積層して、構成される。
【００３６】
位置検出回路７は、磁気ヘッド３が読み取った位置信号（アナログ信号）をデジタル信号に変換する。リード／ライト（Ｒ／Ｗ）回路１０は、磁気ヘッド３の読み取り及び書込みを制御する。スピンドルモータ（ＳＰＭ）駆動回路８は、スピンドルモータ５を駆動する。ボイスコイルモータ（ＶＣＭ）駆動回路６は、ボイスコイルモータ（ＶＣＭ）１に駆動電流を供給し、ＶＣＭ１を駆動する。
【００３７】
マイクロコントローラ（ＭＣＵ）１４は、位置検出回路７からのデジタル位置信号から現在位置を検出（復調）し、検出した現在位置と目標位置との誤差に従い、ＶＣＭ駆動指令値を演算する。即ち、位置復調とサーボ制御を行う。リードオンリーメモリ（ＲＯＭ）１３は、ＭＣＵ１４の制御プログラム等を格納する。ランダムアクセスメモリ（ＲＡＭ）１２は、ＭＣＵ１４の処理のためのデータ等を格納する。
【００３８】
ハードディスクコントローラ（ＨＤＣ）１１は、サーボ信号のセクタ番号を基準にして，１周内の位置を判断し，データを記録・再生する。バッファ用ランダムアクセスメモリ（ＲＡＭ）１５は、リードデータやライトデータを一時格納する。ＨＤＣ１１は、ＵＳＢ，ＡＴＡやＳＣＳＩ等のインターフェイスＩＦで、ホストと通信する。バス９は、これらを接続する。
【００３９】
図２に示すように、磁気ディスク４には、外周から内周に渡り、各トラックにサーボ信号（位置信号）１６が、円周方向に等間隔に配置される。尚、各トラックは、複数のセクタで構成され、図２の実線は、サーボ信号１６の記録位置を示す。図３に示すように、位置信号は，サーボマークＳｅｒｖｏ  Ｍａｒｋと、トラック番号Ｇｒａｙ  Ｃｏｄｅと、インデックスＩｎｄｅｘと、オフセット情報（サーボバースト）ＰｏｓＡ，ＰｏｓＢ，ＰｏｓＣ，ＰｏｓＤとからなる。尚、図３の点線は、トラックセンターを示す。
【００４０】
図４は、図３の位置信号をヘッド３で読み取った信号波形図である。図４に示す信号波形のトラック番号Ｇｒａｙ  Ｃｏｄｅとオフセット情報ＰｏｓＡ，ＰｏｓＢ，ＰｏｓＣ，ＰｏｓＤを使い，磁気ヘッドの半径方向の位置を検出する。さらに、インデックス信号Ｉｎｄｅｘを元にして，磁気ヘッドの円周方向の位置を把握する。
【００４１】
例えば，インデックス信号を検出したときのセクタ番号を０番に設定し、サーボ信号を検出する毎に、カウントアップして、トラックの各セクタのセクタ番号を得る。このサーボ信号のセクタ番号は，データの記録再生を行うときの基準となる。尚、インデックス信号は、１周に１つである、又、インデックス信号の代わりに、セクタ番号を設けることもできる。
【００４２】
図５は、図１のＭＣＵ１４が行うアクチュエータのシーク制御例である。図１の位置検出回路７を通じて、ＭＣＵ１４が、アクチュエータの位置を確認して，サーボ演算し、適切な電流をＶＣＭ１に供給する。図５では、あるトラック位置から目標トラック位置へヘッド３を移動するシーク開始時からの制御の遷移と、アクチュエータ１の電流、アクチュエータ(ヘッド）の速度、アクチュエータ(ヘッド）の位置を示す。
【００４３】
即ち、シーク制御は、コアース制御、整定制御及びフォローイング制御と遷移することで，目標位置まで移動させることができる。コアース制御は、基本的に速度制御であり、整定制御、フォローイング制御は、基本的に位置制御であり、いずれも、ヘッドの現在位置を検出する必要がある。
【００４４】
このような，位置を確認するためには，前述の図２のように、磁気ディスク上にサーボ信号を事前に記録しておく。即ち、図３に示したように、サーボ信号の開始位置を示すサーボマーク，トラック番号を表すグレイコード，インデックス信号，オフセットを示すＰｏｓＡ〜ＰｏｓＤといった信号が記録されている。この信号を磁気ヘッドで読み出し、このサーボ信号を、位置検出回路７が、デジタル値に変換する。
【００４５】
［位置決め制御系の第１の実施の形態］
図６は、本発明の位置決め制御系（サーボ制御系）の第１の実施の形態のブロック図、図７は、図６の変形例のブロック図、図８は、図６及び図７の外乱抑圧補償器のブロック図、図９は、図６乃至図８の外乱抑圧補償用テーブルの構成図、図１０は、図６乃至図８の外乱抑圧補償用テーブルの他の構成図、図１１は、図９及び図１０のテーブルに格納されるＦ値の説明図である。
【００４６】
図６は、ＭＣＵ１４が実行するサーボ制御系の演算ブロック図である。即ち、目標位置ｒと現在位置ｙとの位置誤差ｅを演算ブロック２０で演算し、制御ブロック（Ｃｎ）２１で制御演算し、制御量Ｕｎを計算し、プラント２２であるＶＣＭ１、３を駆動する。プラントの位置は、磁気ヘッド３からのサーボ信号を、復調し、現在位置ｙを計算し、演算ブロック２０にフィードバックする。
【００４７】
周波数推定器２４は、位置誤差ｅと外乱抑圧補償器２３（Ｃｄ）の内部変数を用いて、外部振動の角周波数ωを推定する。補償用テーブル２５は、各周波数ωに対応した外部振動抑圧用の補償器２３（Ｃｄ）の定数を格納する。外乱抑圧補償器２３（Ｃｄ）は、周波数推定器２４の角周波数ωにより、補償用テーブル２５から読み出された定数により内部定数を修正し、位置誤差ｅから外乱抑圧制御量Ｕｄを計算する。加算ブロック２６は、制御量Ｕｎと外乱抑圧制御量Ｕｄとを加算して、プラント２２に出力する。
【００４８】
このように、推定した角周波数（外乱周波数）ωの値に応じて、補償器Ｃｄの内部定数を修正するため、補償器Ｃｄの動作を、広い周波数範囲にわたり、常に最適に保つことができる。
【００４９】
先ず、制御ブロック（コントローラ）２１について、説明する。磁気ディスク装置の位置決め制御系の設計において、制御対象であるプラント、すなわちアクチュエータは、次の（１）式で表現することが多い。
【００５０】
【数１】
2007004946.tif 000003
【００５１】
式（１）において、ｕはアクチュエータに与える電流、ｙは観測位置、Ｂｌは力定数、ｍは等価質量、ｓは、ラプラス演算子である。磁気ディスク装置は、一般的には回転型のアクチュエータであるが、コントローラの設計においては、式（１）のように、直進型のアクチュエータに等価変換して表現して利用する。
【００５２】
磁気ディスク装置の制御として代表的なものは、オブザーバ制御がある。前記のアクチュエータの伝達関数を、次の（２）式で示す状態方程式の形で表現する。
【００５３】
【数２】
2007004946.tif 000004
【００５４】
尚、ｘ、ｙは、位置、ｖは速度、ｕは、駆動電流である。このアナログモデルを、サンプル周期ＴにてＺ変換して、さらに磁気ディスク装置のデジタル制御用に単位を変換する。具体的には、位置をトラック、速度をトラック／サンプル、電流を最大電流が１になるように正規化した単位とする。このようにすれば、アクチュエータの状態方程式は次の式（３）となる。
【００５５】
【数３】
2007004946.tif 000005
【００５６】
尚、ＫａはＢｌ／ｍを含むゲインである。
【００５７】
この式を用いて、オブザーバ制御を実現する。磁気ディスク装置のデジタル制御で用いられるオブザーバ制御は、次の式（４）の現在オブザーバと呼ばれる構成である。
【００５８】
【数４】
2007004946.tif 000006
【００５９】
式（４）に示すように、オブザーバの推定位置誤差、すなわち観測位置ｙ［ｋ］と、１サンプル前に計算した予測位置ｘ＿ｂａｒ［ｋ］との差分値により、状態変数ｘ＿ｈａｔ［ｋ］、ｖ＿ｈａｔ［ｋ］を修正する。その上で、２つの状態変数ｘ＿ｈａｔ［ｋ］、ｖ＿ｈａｔ［ｋ］に、フィードバックゲインＦｘ，Ｆｖをかけて、電流ｕ［ｋ］を出力する。電流出力後に、次のサンプルの状態変数の値ｘ＿ｂａｒ［ｋ＋１］，ｖ＿ｂａｒ［ｋ＋１］を推定する。
【００６０】
この式（４）を用いて、コントローラ２１（Ｃｎ）が、オブザーバ制御を実行する。
【００６１】
又、前記に示したオブザーバは、アナログ制御ではＰＤ制御に相当する。磁気ディスク装置においては、積分補償も必要になる。積分補償相当の制御を追加する方法として、バイアス補償がある。アナログのプラントモデルに、次の式（５）で表現される定常バイアスｂを加える。
【００６２】
【数５】
2007004946.tif 000007
【００６３】
その上で、離散化して、現在オブザーバを構成すると、次の式（６）を得る。
【００６４】
【数６】
2007004946.tif 000008
【００６５】
以上は、コントローラとして、周知のオブザーバ制御を説明したが、他の制御方法として、下記式（７）で示す特性を持つＰＩＤ制御を適用しても良い。
【００６６】
【数７】
2007004946.tif 000009
【００６７】
この式（７）において、Ｋｉは積分ゲイン、Ｋｐは比例ゲイン、Ｋｄは微分ゲイン、ｓはラプラス演算子である。
【００６８】
また、ＰＩ制御とＬｅａｄＬａｇフィルタを直列接続したコントローラでも、制御ができる。伝達関数を下記式（８）に示す。
【００６９】
【数８】
2007004946.tif 000010
【００７０】
この式（８）において、Ｋｉは積分ゲイン、Ｋｐは比例ゲイン、ａｌ，ｂｌは，ＬｅａｄＬａｇフィルタの特性、ｓはラプラス演算子である。
【００７１】
更に、近年の磁気ディスク装置においては、アナログ制御ではなく、デジタル制御により、アクチュエータを制御している。上記式（７）、（８）で説明したコントローラ２１は、アナログ制御の式であるが、この式をデジタル制御で利用できるように変換して、装置に実装している。
【００７２】
以上、コントローラ２１の構成を、ＰＩＤ制御、ＰＩ制御×ＬｅａｄＬａｇフィルタ、オブザーバ制御の構成で説明した。本発明においては、前記したコントローラ２１のみでなく、線形なコントローラ２１すべてに適用できる。たとえば、Ｈ無限大制御理論にて設計したフィルタをコントローラに用いても良い。
【００７３】
更に、磁気ディスク装置のアクチュエータは共振特性を持つため、共振にともなうアクチュエータの振動が位置決め精度に影響する。そのため、次式（９）の形のノッチフィルタを複数個従属接続して、共振を抑止することが多い。実際には、式（９）を離散化して、実装する。
【００７４】
【数９】
2007004946.tif 000011
【００７５】
図６に戻り、補償器２３、テーブル２５、ω推定器２４を説明する。図６に示すように、図４６の従来の構成に、外部振動の角周波数ωの推定部２４で参照され、外部振動抑圧用の補償器Ｃｄの定数を保存するテーブル２５、および補償器２３（Ｃｄ）の内部定数を修正する手段を設ける。尚、図６の点線で示す手段は、デジタル制御として実現する。
【００７６】
以下に、デジタル制御の補償器２３（Ｃｄ）の構成を説明する。まず、外乱周波数が既知のときに、周期性外乱に追従するデジタル制御の補償器２３は次式（１０）の状態方程式で設計する。
【００７７】
【数１０】
2007004946.tif 000012
【００７８】
式（１０）において、（ｘ１、ｘ２）は、外乱の回転ベクトルの状態変数、ｅは、位置誤差、Ｌは入力ゲイン、Ｕｄｉｓｔは、外乱抑圧出力電流Ｕｄ，Ｆは、出力ゲイン、ωは既知の外乱の角周波数、Ｔは制御系のサンプル周期である。例えば、この出力ゲインＦは、想定する外乱周波数の変動範囲の中央の周波数で最適となるように設計し、一度設計した後は、この定数Ｆは、一定である。例えば、外乱抑止用の補償器を付加する前の元のコントローラの特性をＣ、プラントの特性をＰとしたときの、次式（１１）の伝達関数を利用する。
【００７９】
【数１１】
2007004946.tif 000013
【００８０】
出力ゲインＦは、この式（１１）の伝達関数における角周波数ωに対する位相特性と、既知の外乱に対する収束応答時間とを考慮して、調整する。
【００８１】
式（１０）において、入力ゲインＬの要素を、「０」または「１」としているが、他の固定値でも良い。このゲインＦの定数設計は、シミュレーションを用いて決定する。ただし、実際には、計算遅延、アクチュエータの共振およびそれを抑圧するためのノッチフィルタに代表される各種フィルタの挿入、ＶＣＭ駆動用アンプの周波数特性、などが影響する。したがって、最終的なＦの値は、実際に装置を動作させながら確認・調整する。
【００８２】
ここでは、入力として位置誤差を用いて以下に説明を行う。ただし、図７で説明するオブザーバの推定位置誤差を用いることもできる。その場合には、ゲインＦの設計に用いる伝達関数を違えなければならない。例えば、電流外乱からオブザーバの推定位置誤差までの伝達関数とする。
【００８３】
次に、式（１０）では、外乱の角周波数ωが固定値である。本発明では、未知の外乱周波数に適応するため、外乱の角周波数ωを逐次修正する。このための適応則を以下に説明する。適応則の導出は、式（１０）の離散系の周期外乱の補償器２３の状態方程式を変形し、下記式（１２）の連続系で考える。
【００８４】
【数１２】
2007004946.tif 000014
【００８５】
式（１２）において、ｘ１は、外乱のｓｉｎ成分、ｘ２は、外乱のｃｏｓ成分、Ｌ１，Ｌ２は、入力ゲイン、ｅは、位置誤差、ｓは、ラプラス演算子である。
【００８６】
一方、回転ベクトルの角周波数ωは、回転ベクトルは、ｓｉｎ成分ｘ１，ｃｏｓ成分ｘ２のｔａｎｇｅｎｔであり、角周波数ωは、その微分値であるから、この回転ベクトルの角周波数ωは、次式（１３）で求められる。
【００８７】
【数１３】
2007004946.tif 000015
【００８８】
式（１２）のアナログの補償器の状態方程式を展開し、ｘ１、ｘ２の微分値を求め、ｘ１，ｘ２の微分値を，式（１３）に代入すると、次の式（１４）を得る。
【００８９】
【数１４】
2007004946.tif 000016
【００９０】
推定した未知外乱の角周波数が、正しければ、補償器２３（Ｃｄ）は、適切に外乱を抑圧できる。結果として、位置誤差ｅ又はオブザーバの推定位置誤差が、ゼロになる。即ち、式（１４）において、補償器２３（Ｃｄ）の対象とする角周波数ωと、推定した外乱の角周波数ωとが一致する条件は、式（１３）の右辺の位置誤差ｅの項が、ゼロであれば、良い。即ち、式（１５）が、成立するはずである。
【００９１】
【数１５】
2007004946.tif 000017
【００９２】
つまり、式（１５）を満足するように、角周波数ωを逐次補正すればよい。このため、数（１５）式を角周波数の時間微分式で表現し、次式（１６）の適応則（積分補償則）を得る。
【００９３】
【数１６】
2007004946.tif 000018
【００９４】
この式を用いて、ωの値を逐次修正する。（１６）式を、積分形式に直し、デジタル制御の式で表現すれば次式（１７）が得られる。
【００９５】
【数１７】
2007004946.tif 000019
【００９６】
尚、Ｋａは、適応ゲインである。上式（１７）は、加算形式で適応則を用いている。これを次式（１８）のように乗算形式で表現することもできる。
【００９７】
【数１８】
2007004946.tif 000020
【００９８】
式（１８）で、適応ゲインＫａ２は、前記の適応ゲインＫａとは異なる値のゲインである。
【００９９】
以下では、式（１７）の加算形式の適応則を用いて説明するが、式（１８）の乗算形式の適応則を用いても同様である。
【０１００】
先ず、周期性外乱に対する補償器の対象周波数を、適応則を用いて補正すると、時間ｋとともに、角周波数が推移する。このため、前述の式（１０）の既知の外乱周波数に対する周期性外乱に追従する補償器の構成において、角周波数の推移に応じて、パラメータを更新するよう構成する。即ち、入力の位相、大きさを調整する入力ゲインＬ，ベクトルを回転する行列Ｇ，出力の位相、大きさを調整する出力ゲイン（行列）Ｆも、逐次補正に合わせて、更新する。これにより、逐次補正の精度が向上する。即ち、式（１０）を適応則に合わせて、次式（１９）の適応制御器を設計する。
【０１０１】
【数１９】
2007004946.tif 000021
【０１０２】
但し、Ｌ，Ｆ［ｋ］，ω［ｋ］は、行列Ｌに応じて、次式（２０）又は次式（２１）で示される。
【０１０３】
【数２０】
2007004946.tif 000022
【０１０４】
【数２１】
2007004946.tif 000023
【０１０５】
式（１９）乃至式（２１）では、行列Ｌを一定とし、適応則ω［ｋ］の更新に応じて、行列Ｇ，Ｆを、Ｇ［ｋ］，Ｆ［ｋ］と変化している。即ち、時間経過とともに角周波数が推移するので、それに応じて、Ｇのｃｏｓ(ω[ｋ]Ｔ), ｓｉｎ(ω[ｋ]Ｔ), 行列Ｆの値も更新する。ここで、Ｍａｇ、Ｐｈｓは、電流外乱から位置誤差までの伝達関数（式（１０）で示した）における角周波数ωに対するゲイン（Ｍａｇｎｉｔｕｄｅ）と位相（Ｐｈａｓｅ）であり、ω［ｋ］に応じたゲインＭａｇ（ω［ｋ］）、位相Ｐｈｓ（ω［ｋ］）に変化することで、出力ゲインＦ［ｋ］により、出力の位相、ゲインを調整する。
【０１０６】
又、式（２０）、（２１）に示すように、入力ゲインＬは、ｓｉｎ，ｃｏｓの各々に、Ｌ１，Ｌ２を設定するが、上記の適応制御の式（２０）、（２１）は、Ｌの２変数のうち、一方を「１」に、他方を「０」にしている。ゲイン・位相を調整するのは、入力側のＬと出力側Ｆのいずれかで足りるし、上記の適応制御は、単に外乱を抑圧するのみでなく、外乱の角周波数ωも推定しなければならない。
【０１０７】
推定するためには、内部状態変数ｘ１、ｘ２を使っている。ωの推定式を簡潔にするために、Ｌ１，Ｌ２の一方を「１」、他方を「０」にし、式（１７）に代入することにより、Ｌ１＝０，Ｌ２＝１なら、式（２０）のような、ωの適応則（ω［ｋ］）に変形され、Ｌ１＝１，Ｌ２＝０なら、式（２１）のような、ωの適応則（ω［ｋ］）に変形される。これにより、演算時間を短縮できる。
【０１０８】
もちろん、行列Ｌと行列Ｆとで、それぞれ２つずつの変数のいずれも、ω［ｋ］に応じて，値を変更させることもできる。例えば、Ｌ＝（Ｌ１（ω［ｋ］）  Ｌ２（ω［ｋ］）とすることもできる。更に、出力側ゲインＦを固定とし、入力側ゲインＬを、上述のように、ω［ｋ］に応じて、変更しても良い。但し、式（２０）、（２１）に比し、ω［ｋ］の演算に時間がかかる。
【０１０９】
又、ｘ１、ｘ２は、９０度ずれているから、式（２０）、（２１）に示すように、行列Ｌの設定により、Ｆ［ｋ］の位相の項のｓｉｎ，ｃｏｓの行列が、反対となる。
【０１１０】
図６に戻り、ω推定部２４は、サンプル毎に、式（２０）又は式（２１）のω［ｋ］を計算する。テーブル２５は、ω［ｋ］に対応するＧ、Ｆ［ｋ］の値を格納する。ω推定部２４が、サンプルごとに、推定したω［ｋ］の値に応じて、ＧおよびＦ［ｋ］の値を、テーブル２５の参照により求めて、外乱抑圧用の補償器２３に設定する。補償器２３は、式（１９）を演算し、ｘ１［ｋ＋１］，ｘ２［ｋ＋１］及び外乱抑圧電流値Ｕｄｉｓｔ［ｋ］（Ｕｄ［ｋ］）を計算し、出力する。
【０１１１】
加算器２６は、コントローラ２１の制御電流値Ｕｎ［ｋ］と、外乱抑圧電流値Ｕｄ［ｋ］を加算し、プラント２２（ＶＣＭ１）に出力し、駆動する。
【０１１２】
図７は、図６のコントローラ２１にオブザーバ制御を利用し、かつ外乱抑圧用の適応制御２３，２４の入力に、オブザーバ２１の推定位置誤差ｅ［ｋ］を与えたときの構成を示す。オブザーバの推定位置誤差ｅ［ｋ］とは、加算器２０の位置誤差（ｒ−ｙ）とオブザーバの推定位置との差分値のことである。
【０１１３】
図８及び図９、図１０により、更に詳細に説明する。図８は、式（１９）乃至式（２１）をブロック化した構成図である。図８中の１／ｚは、１サンプルＴだけ遅延させることを示す。ｚはデジタル制御で用いるｚ変換の演算子ｚである。図８に示すように、ω推定部２４は、式（２０）のω適応式の第２項（Ｋａ・ｘ１［ｋ］……）を演算する演算部２４−１と、推定されたω［ｋ］を、１サンプル遅延する遅延部２４−２と、遅延されたω（ω［ｋ−１］）と演算部２４−１の第２項の演算結果を加算する加算部２４−３とを有する。式（２１）の適応式の場合も同様である。
【０１１４】
一方、テーブル２５は、図９に示すように、各推定ωの値に応じたＧと、Ｆの値を格納する。即ち、式（１９）の行列Ｇとして、ω［ｋ］＝１・ωｒ〜ｎ・ωｒのｓｉｎ（１・ωｒ・Ｔ）〜ｓｉｎ（ｎ・ωｒ・Ｔ）と、ｃｏｓ（１・ωｒ・Ｔ）〜ｃｏｓ（ｎ・ωｒ・Ｔ）とを格納する。このｓｉｎ（１・ωｒ・Ｔ）〜ｓｉｎ（ｎ・ωｒ・Ｔ）の値は、「０」でスタートし、「１」に至り、「０」に戻る。又、ｃｏｓ（１・ωｒ・Ｔ）〜ｃｏｓ（ｎ・ωｒ・Ｔ）の値は、「１」からスタートし、「０」に到り、「１」に戻る。
【０１１５】
又、出力ゲインＦとして、ω［ｋ］＝１・ωｒ〜ｎ・ωｒのＦ１（１・ωｒ）〜Ｆ１（ｎ・ωｒ）と、Ｆ２（１・ωｒ）〜Ｆ２（ｎ・ωｒ）とを格納する。式（２０）では、Ｆ１＝−Ｍａｇ（ω［ｋ］）・ｃｏｓ（Ｐｈｓ（ω［ｋ］）であり、Ｆ２＝−Ｍａｇ（ω［ｋ］）・ｓｉｎ（Ｐｈｓ（ω［ｋ］）である。式（２１）の場合も同様である。
【０１１６】
又、補償器２３は、式（１８）のｘ１［ｋ＋１］、ｘ２［ｋ＋１］，Ｕｄｉｓｔ［ｋ］を演算する。即ち、位置誤差ｅ［ｋ］に「Ｌ」を乗算する乗算部２３−１と、ｘ１［ｋ］とｘ２［ｋ］に、テーブル２５からのＧ［ｋ］を乗算する乗算部２３−４と、両乗算部２３−１，２３−４の出力を加算し、ｘ１［ｋ＋１］，ｘ２［ｋ＋１］を出力する加算部２３−２と、加算部２３−２の出力を１サンプル遅延して、ｘ１［ｋ］，ｘ２［ｋ］を出力する遅延部２３−３と、遅延部２３−３の出力ｘ１［ｋ］，ｘ２［ｋ］に、テーブル２５からの出力ゲインＦ１［ｋ］，Ｆ２［ｋ］を乗算する乗算部２３−５を有する。
【０１１７】
尚、図９では、回転角周波数の整数倍に対する値のみを格納している。図１０は、図８の他のテーブルの構成図である。図１０は、図９の中でＳＩＮの値を削除した例を示す。このテーブルを利用する場合には、ＳＩＮの値はＣＯＳの値から計算により求める。すなわち、下記式（２２）で、テーブル２５−１のｃｏｓからｓｉｎを計算する。
【０１１８】
【数２２】
2007004946.tif 000024
【０１１９】
式（２２）で、注意をしなければならないのは、削除するのが、ＳＩＮ成分であり、ＣＯＳ成分ではない点である。今回の場合には、ナイキスト周波数までの値を表現しなければならない。すなわち、図９に示したように、ＣＯＳの値は「１」から「−１」まで変化するが、この範囲でのＳＩＮの値は、「０」から「１」までであり、同一のＳＩＮ値をとる角周波数が２つ存在する。テーブル２５−１からＣＯＳ成分を削除し、ＳＩＮ成分を残すと、ＣＯＳの正負を判定する必要があり、そのためには、ωの値をチェックしなければならない。このような判定処理は時間を余分に必要とする。
【０１２０】
したがって、テーブルサイズを削減するならば、ＣＯＳの値を残す方が良い。又、このような考慮を必要としない場合には、逆に、ＣＯＳ成分を削除し、ＳＩＮ成分を残すこともできる。
【０１２１】
図１１は、図９及び図１０の出力ゲインＦ＝［Ｆ１，Ｆ２］の周波数変化の具体例の説明図である。即ち、周波数（角周波数）を横軸に、各周波数におけるゲインＦ１，Ｆ２を縦軸にとったものである。尚、図では、Ｆ１の絶対値の最大値と、Ｆ２の絶対値の最大値のいずれか大きいほうが、「１」となるように、正規化して図示している。図の特性は、シミュレーションで設計したものであり、更に、実際には、計算遅延やアクチュエータの共振及びそれを抑圧するためのノッチフィルタに代表される各種フィルタの挿入、ＶＣＭ駆動用アンプの周波数特性などが影響する。このため、最終的な値は、実際に装置を動作させながら、確認、調整する。
【０１２２】
図１１に示すように、周波数に応じて、Ｆ１，Ｆ２のゲインは、異なる値となり、又、符号も異なる。これに従い、テーブル２５，２５−１に、各角周波数のＦ１，Ｆ２を設定する。尚、この例は、図６の位置誤差を入力にとる補償器２３のための値である。
【０１２３】
図１２及び図１３は、図１２は、従来の出力ゲインＦ＝［Ｆ１，Ｆ２］を、１０００Ｈｚに最適化して固定した時の外乱推定値及び補正応答値のグラフ、図１３は、本発明の出力ゲインＦ＝［Ｆ１，Ｆ２］を、周波数毎に最適化して、周波数値を推定した外乱周波数に応じて変更した時の外乱推定値及び補正応答値のグラフである。
【０１２４】
図１２及び図１３において、上段のグラフは、横軸に時間（ｓｅｃ）を、縦軸に、位置誤差ＰＥＳ（トラック数）をとり、下段のグラフは、横軸に時間（ｓｅｃ）を、縦軸に、推定周波数（Ｈｚ）をとったものである。図１２及び図１３とも、補償器２３の周波数と外乱周波数とが、異なる未知の外乱周波数を設定した場合であり、外乱周波数は、２００Ｈｚ，補償器２３の初期周波数は、１０００Ｈｚとして、図４４、図６の系でシュミレーションした結果である。
【０１２５】
図１２の従来例に示すように、補償器２３から見て、外乱周波数が未知（２００Ｈｚ）の場合には、図１２の上段のグラフに示すように、外乱を補正できず、位置誤差ＰＥＳが収束せず、むしろ外乱抑圧制御で、位置誤差が発散する。又、推定周波数も、図１２の下段のグラフのように、実線で示す、２００Ｈｚとは、異なり、初期値の１０００Ｈｚ前後で収束しない。
【０１２６】
一方、図１３の本発明を適用した場合のシミュレーション結果に示すように、補償器２３から見て、外乱周波数が未知（２００Ｈｚ）の場合には、図１３の上段のグラフに示すように、外乱を正しく補正し、位置誤差ＰＥＳが収束する。又、推定周波数も、図１３の下段のグラフのように、実線で示す、２００Ｈｚに収束する。尚、図１３では、位置誤差の描画範囲が、「４」〜「−４」であるのに対し、図１２の従来例では、位置誤差の描画範囲が、「５０００」〜「−５０００」である。
【０１２７】
このように、本発明の適用により、未知の外乱周波数が与えられても、正確に且つ高速に、外乱を抑圧できる。例えば、図１３のシミュレーション結果に示すように、外乱が付与されても、０．０４〜０．０６ｓｅｃで収束する。ディスクの回転を、４２００ｒｐｍとすると、１回転で、０．０１４ｍｓｅｃであるから、単発の外乱では、ディスク２〜４周分で外乱抑圧できる。
【０１２８】
［位置決め制御系の第２の実施の形態］
図１４は、本発明の位置決め制御系（サーボ制御系）の第２の実施の形態のブロック図、図１５は、図１４の変形例のブロック図、図１６及び図１７は、図１４及び図１５の制御系の計算処理の説明図、図１８は、図１４及び図１５のサーボ制御系の計算処理フロー図である。
【０１２９】
図１４は、図１のＭＣＵ１４が実行するサーボ制御系の演算ブロック図である。図１４において、図６で示したものと同一のものは、同一の記号で示してある。即ち、目標位置ｒと現在位置ｙとの位置誤差ｅを演算ブロック２０で演算し、制御ブロック（Ｃｎ）２１で制御演算し、制御量Ｕｎを計算し、プラント２２であるＶＣＭ１、３を駆動する。プラントの位置は、磁気ヘッド３からのサーボ信号を、復調し、現在位置ｙを計算し、演算ブロック２０にフィードバックする。
【０１３０】
周波数推定器２４は、位置誤差ｅと外乱抑圧補償器２３（Ｃｄ）の内部変数を用いて、外部振動の角周波数ωを推定する。補償用テーブル２５は、各周波数ωに対応した外部振動抑圧用の補償器２３（Ｃｄ）の定数を格納する。外乱抑圧補償器２３（Ｃｄ）は、周波数推定器２４の角周波数ωにより、補償用テーブル２５から読み出された定数により内部定数を修正し、位置誤差ｅから外乱抑圧制御量Ｕｄを計算する。加算ブロック２６は、制御量Ｕｎと外乱抑圧制御量Ｕｄとを加算して、プラント２２に出力する。遅延器２７は、補償器２３の出力Ｕｄを１サンプル遅延させ、加算ブロック２６に出力する。
【０１３１】
１サンプル遅延させた分、位相特性にずれ（位相遅れ）が生じる。そのため、出力ゲインＦの設定値は、図６、図８乃至図１０の値と、異なる。例えば、図８の特性では、位相遅れが発生するため、図８の特性を、位相遅れ分、進ませる。
【０１３２】
図１４のように、故意に、外乱抑圧出力を１サンプル遅延させるのは、計算処理時間の短縮のためである。これを図１６及び図１７で説明する。制御系の応答特性を改善するためには、計算処理時間の短縮、すなわち観測位置を取得してから駆動電流Ｕを出力するまでの時間短縮が欠かせない。
【０１３３】
一方、本発明のような適応制御の式（１７）乃至式（２１）は、計算処理時間が従来よりも余分に必要になる。即ち、図１７に示すように、ＭＣＵ１４で、図６の系の計算を行う場合には、サンプルｋ毎に、先ず、式（６）の計算式により、コントローラ（Ｃｎ）２１の出力Ｕｎ［ｋ］を計算する。次に、式（１７）又は式（１８）の周波数推定器２４の適応則の計算を行い、推定角周波数ωを更新する。
【０１３４】
更に、この推定角周波数ωで、テーブル２５を参照して、補償器２３のＧ，Ｆを更新する。そして、式（１９）により、補償器（Ｃｄ）２３の出力Ｕｄ（Ｕｄｉｓｔ）を計算する。最後に、プラント２２の出力Ｕ［ｋ］を、Ｕｎ［ｋ］＋Ｕｄ［ｋ］で計算する。この計算値がプラント２２へ出力され、出力電流が変化する。即ち、観測位置ｙを取得してから駆動電流Ｕを出力するまでの時間が長くなり、制御系のレスポンスが低下する（特に、位相遅れが生じる）。勿論、より高速のＭＣＵ１４を搭載することにより、この遅れは生じない。しかし、低コストのディスク装置を提供する場合には、高速のＭＣＵ１４を搭載することは、得策でない。
【０１３５】
それゆれ、外乱抑圧用の電流は現在のサンプルのω［ｋ］の値を用いずに、１サンプル前に推定した値ω［ｋ−１］を利用して，補正電流Ｕｄを計算する。即ち、図１６に示すように、ＭＣＵ１４で、サンプルｋ毎に、先ず、式（６）の計算式により、コントローラ（Ｃｎ）２１の出力Ｕｎ［ｋ］を計算する。次に、前回のサンプルで計算したＵｄ［ｋ−１］（遅延ブロック２７で、１サンプル遅延したＵｄであり、１サンプル前に推定した値ω［ｋ−１］に基づく）を用いて、プラント２２の出力Ｕ［ｋ］を、Ｕｎ［ｋ］＋Ｕｄ［ｋ−１］で計算する。この計算値がプラント２２へ出力され、出力電流が変化する。
【０１３６】
次に、式（１７）又は式（１８）の周波数推定器２４の適応則の計算を行い、推定角周波数ω［ｋ］を更新する。更に、この推定角周波数ω［ｋ］で、テーブル２５を参照して、補償器２３のＧ，Ｆを更新する。そして、式（１９）により、補償器（Ｃｄ）２３の出力Ｕｄ（Ｕｄｉｓｔ）［ｋ］を計算する。このように、観測位置ｙを取得してから駆動電流Ｕを出力するまでの時間が、短くなり、制御系のレスポンスが向上する（位相遅れを防止する）。
【０１３７】
又、前述のように、前回のサンプルでの推定値ω［ｋ−１］，Ｕｄ［ｋ−１］を使用しても、その影響より、制御系のレスポンス（位相精度）が早くなる分、外乱周波数推定速度が向上する。
【０１３８】
図１５は、図１４の変形例のブロック図である。図１４で示したものと同一のものは、同一の記号で示してある。図１５の構成では、図１４のコントローラ２１に、オブザーバ制御を利用し、かつ外乱抑圧用の適応制御の入力（周波数推定器２４、補償器２３）に、オブザーバの推定位置誤差を与えたときの構成を示す。このような構成でも、同様に実現できる。
【０１３９】
図１８は、図１４または図１５に示す制御系の観測位置取得から電流出力、さらに適応制御の計算に至る、一連の処理を説明するフローチャートである。
【０１４０】
（Ｓ１０）ＭＣＵ１４は、最初に観測位置ｙを、ヘッド３から取得して、位置誤差ｅを計算する。
【０１４１】
（Ｓ１２）次に、ＭＣＵ１４は、式（６）の計算式により、コントローラ（Ｃｎ）２１の出力Ｕｎ［ｋ］を計算する。
【０１４２】
（Ｓ１４）次に、ＭＣＵ１４は、前回のサンプルで計算したＵｄ［ｋ−１］を用いて、プラント２２の出力Ｕ［ｋ］を、Ｕｎ［ｋ］＋Ｕｄ［ｋ−１］で計算する。この計算値Ｕがプラント２２へ出力され、出力電流が変化する。
【０１４３】
（Ｓ１６）ＭＣＵ１４は、その後、適応制御の計算を実行する。先ず、ωの更新計算を行う。即ち、式（１７）又は式（１８）の周波数推定器２４の適応則の計算を行い、推定角周波数ω［ｋ］を更新する。
【０１４４】
（Ｓ１８）次に、ＭＣＵ１４は、テーブル２５を参照して、Ｇ，Ｆの値を更新する。
【０１４５】
（Ｓ２０）その上で，ＭＣＵ１４は、式（１９）の状態変数ｘ１［ｋ＋１］，ｘ２［ｋ＋１］の更新計算を行い、同時に次サンプルの補正電流Ｕｄ［ｋ］を計算する。
【０１４６】
［位置決め制御系の第３の実施の形態］
図１９は、本発明の位置決め制御系（サーボ制御系）の第３の実施の形態のブロック図、図２０は、図１９の実施の形態の説明図である。図１９の実施の形態は、補償テーブル２５のデータ容量を低減するための構成である。即ち、図８乃至図１０の実施の形態では、全ての推定角周波数ωに対して、テーブル２５が、Ｇ，Ｆの値を保持している。本実施の形態は、このテーブル２５のデータＧ，Ｆを少なくしても、同様の外乱抑圧補償を行うものである。
【０１４７】
図１９において、図８と同一のものは、同一の記号で示してある。即ち、図８と同様に、ω推定部２４は、式（２０）のω適応式の第２項（Ｋａ・ｘ１［ｋ］……）を演算する演算部２４−１と、推定されたω［ｋ］を、１サンプル遅延する遅延部２４−２と、遅延されたω（ω［ｋ−１］）と演算部２４−１の第２項の演算結果を加算する加算部２４−３とを有する。式（２１）の適応式の場合も同様である。
【０１４８】
一方、テーブル２５は、図２０に示すように、角周波数ωの所定周波数毎のＧと、Ｆの値を格納する。例えば、図２０では、２５０Ｈｚ毎の出力ゲインＦ＝［Ｆ１，Ｆ２］を格納する。又、位相補償値Ｇも同様である。
【０１４９】
補間演算器２８は、テーブル２５からω推定器２４からの推定角周波数ω［ｋ］に最も近い２つのＧ，Ｆを読み出し、線形補間して、推定角周波数ω［ｋ］に対応するＧ［ｋ］、Ｆ［ｋ］を計算する。
【０１５０】
又、補償器２３は、式（１８）のｘ１［ｋ＋１］、ｘ２［ｋ＋１］，Ｕｄｉｓｔ［ｋ］を演算する。即ち、位置誤差ｅ［ｋ］に「Ｌ」を乗算する乗算部２３−１と、ｘ１［ｋ］とｘ２［ｋ］に、補間演算器２８からのＧ［ｋ］を乗算する乗算部２３−４と、両乗算部２３−１，２３−４の出力を加算し、ｘ１［ｋ＋１］，ｘ２［ｋ＋１］を出力する加算部２３−２と、加算部２３−２の出力を１サンプル遅延して、ｘ１［ｋ］，ｘ２［ｋ］を出力する遅延部２３−３と、遅延部２３−３の出力ｘ１［ｋ］，ｘ２［ｋ］に、補間演算器２５からの出力ゲインＦ１［ｋ］，Ｆ２［ｋ］を乗算する乗算部２３−５を有する。
【０１５１】
又、テーブル２５の構成は、図９のものでも、図１０のものでも良い。即ち、推定した外乱の各周波数ωを補間演算ブロック２８に挿入し、そのブロック２８からテーブル２５を参照する。テーブル２５に、無限個の値を保持することは困難であるため、実用上はテーブル２５の値は、間欠的な周波数に対してＧ，Ｆの値を保持することが望ましい。例えば、回転角周波数の整数倍の角周波数に対する値を保持する。
【０１５２】
このように構成することにより、第１の実施の形態と同様の外乱抑圧制御を、テーブル２５のサイズを低減して、実現でき、実装上、有効である。
【０１５３】
［位置決め制御系の第４の実施の形態］
図２１は、本発明の位置決め制御系（サーボ制御系）の第４の実施の形態のブロック図、図２２は、図２１の制御系の計算処理の説明図、図２３は、図２１のサーボ制御系の計算処理フロー図である。図２１は、推定角周波数ω［ｋ］の値に，上限と下限の制約を設けた例である。
【０１５４】
即ち、ωの値は、「０」や負の値になることはない。また、デジタル制御にて実現することから、ナイキスト周波数、すなわち、サンプル周波数の半分の周波数に対応した角周波数以上は制御できないため、推定する必要がない。また、計算遅延などの影響によりナイキスト周波数近傍の外乱には対処しづらい。さらに周波数の極めて低い、例えば１Ｈｚなどの外乱は、コントローラ２１の積分補償で対応できるため、対応する必要がない。従って、図２２に示すように、角周波数ωの推定範囲に、上限ωｍａｘと下限ωｍｉｎを設ける。
【０１５５】
図２１において、図８，図１９と同一のものは、同一の記号で示してある。即ち、ω推定部２４は、式（２０）のω適応式の第２項（Ｋａ・ｘ１［ｋ］……）を演算する演算部２４−１と、推定されたω［ｋ］を、１サンプル遅延する遅延部２４−２と、遅延されたω（ω［ｋ−１］）と演算部２４−１の第２項の演算結果を加算する加算部２４−３と、更に、加算部２４−３の推定角周波数ωの上限と下限を制限する周波数範囲制限ブロック２４−４とを有する。式（２１）の適応式の場合も同様である。
【０１５６】
一方、テーブル２５は、図２０に示したように、角周波数ωの所定周波数毎のＧと、Ｆの値を格納する。例えば、図２０では、２５０Ｈｚ毎の出力ゲインＦ＝［Ｆ１，Ｆ２］を格納する。又、位相補償値Ｇも同様である。
【０１５７】
補間演算器２８は、テーブル２５からω推定器２４からの推定角周波数ω［ｋ］に最も近い２つのＧ，Ｆを読み出し、線形補間して、推定角周波数ω［ｋ］に対応するＧ［ｋ］、Ｆ［ｋ］を計算する。
【０１５８】
又、補償器２３は、式（１９）のｘ１［ｋ＋１］、ｘ２［ｋ＋１］，Ｕｄｉｓｔ［ｋ］を演算する。即ち、位置誤差ｅ［ｋ］に「Ｌ」を乗算する乗算部２３−１と、ｘ１［ｋ］とｘ２［ｋ］に、補間演算器２８からのＧ［ｋ］を乗算する乗算部２３−４と、両乗算部２３−１，２３−４の出力を加算し、ｘ１［ｋ＋１］，ｘ２［ｋ＋１］を出力する加算部２３−２と、加算部２３−２の出力を１サンプル遅延して、ｘ１［ｋ］，ｘ２［ｋ］を出力する遅延部２３−３と、遅延部２３−３の出力ｘ１［ｋ］，ｘ２［ｋ］に、補間演算器２８からの出力ゲインＦ１［ｋ］，Ｆ２［ｋ］を乗算する乗算部２３−５を有する。
【０１５９】
又、テーブル２５の構成は、図９のものでも、図１０のものでも良い。即ち、推定した外乱の各周波数ωを補間演算ブロック２８に挿入し、そのブロック２８からテーブル２５を参照する。テーブル２５に、無限個の値を保持することは困難であるため、実用上はテーブル２５の値は、間欠的な周波数に対してＧ，Ｆの値を保持することが望ましい。例えば、回転角周波数の整数倍の角周波数に対する値を保持する。
【０１６０】
このように構成することにより、推定角周波数は、上限ωｍａｘ（例えば、サンプル周波数の半分＝ナイキスト周波数）で制限され、且つ下限ωｍｉｎ（例えば、ディスクの回転周波数）で制限される。このため、過度の外乱抑圧制御を防止でき、安定な外乱抑圧制御が実現できる。更に、上限を、アクチュエータの共振周波数の固体差及び温度変化にともなう変動範囲の下限周波数としても良い。
【０１６１】
図２３は、図２１に示す制御系の観測位置取得から電流出力、さらに適応制御の計算に至る、一連の処理を説明するフローチャートである。
【０１６２】
（Ｓ３０）ＭＣＵ１４は、最初に観測位置ｙを、ヘッド３から取得して、位置誤差ｅを計算する。
【０１６３】
（Ｓ３２）次に、ＭＣＵ１４は、式（６）の計算式により、コントローラ（Ｃｎ）２１の出力Ｕｎ［ｋ］を計算する。
【０１６４】
（Ｓ３４）次に、ＭＣＵ１４は、前回のサンプルで計算したＵｄ［ｋ−１］を用いて、プラント２２の出力Ｕ［ｋ］を、Ｕｎ［ｋ］＋Ｕｄ［ｋ−１］で計算する。この計算値Ｕがプラント２２へ出力され、出力電流が変化する。
【０１６５】
（Ｓ３６）ＭＣＵ１４は、その後、適応制御の計算を実行する。先ず、ωの更新計算を行う。即ち、式（１７）又は式（１８）の周波数推定器２４の適応則の計算を行い、推定角周波数ω［ｋ］を更新する。
【０１６６】
（Ｓ４０）次に、ＭＣＵ１４は、推定角周波数ω［ｋ］が、下限値ωｍｉｎ以下かを判定する。推定角周波数ω［ｋ］が、下限値ωｍｉｎ以下であれば、推定角周波数ω［ｋ］＝ωｍｉｎとする。
【０１６７】
（Ｓ４２）次に、ＭＣＵ１４は、テーブル２５を参照して、前述の線形補間を実効してＧ，Ｆの値を更新する。
【０１６８】
（Ｓ４４）その上で，ＭＣＵ１４は、式（１９）の状態変数ｘ１［ｋ＋１］，ｘ２［ｋ＋１］の更新計算を行い、同時に次サンプルの補正電流Ｕｄ［ｋ］を計算する。
【０１６９】
［位置決め制御系の第５の実施の形態］
図２４は、本発明の位置決め制御系（サーボ制御系）の第５の実施の形態のブロック図、図２５は、図２４の第５の実施の形態の変形例のブロック図、図２６は、図２４の詳細ブロック図、図２７は、図２４の計算処理フロー図である。図２４以下の実施の形態は、２つの異なる周波数の外乱に対応するために、適応制御のブロックを２つ設けた例である。
【０１７０】
即ち、前述の実施の形態では、未知外乱の周波数を１つとして、説明した。一方、ディスク装置の使用形態によっては、未知外乱が、２つの異なる周波数である場合がある。例えば、ディスク装置が、携帯装置に搭載される場合に、弾性部材を介して取り付けられる。このような搭載例では、ディスク装置は、直接外乱を受けるとともに、弾性部材を介しても外乱を受け、１つの外乱でも、ディスク装置は、２つの異なる周波数外乱を受ける。このため、２つの異なる未知周波数の外乱を抑圧制御する。
【０１７１】
図２４において、図６と同一のものは、同一の記号で示してある。図２４において、目標位置ｒと現在位置ｙとの位置誤差ｅを演算ブロック２０で演算し、制御ブロック（Ｃｎ）２１で制御演算し、制御量Ｕｎを計算し、プラント２２であるＶＣＭ１、３を駆動する。プラントの位置は、磁気ヘッド３からのサーボ信号を、復調し、現在位置ｙを計算し、演算ブロック２０にフィードバックする。
【０１７２】
外乱抑圧制御機構は、２つ設けられる。即ち、第１の外乱抑圧制御機構２３Ａ，２４Ａ，２５と、第２の外乱抑圧制御機構２３Ｂ，２４Ｂ，２５とを設ける。周波数推定器２４Ａ，２４Ｂは、位置誤差ｅと外乱抑圧補償器２３Ａ，２３Ｂ（Ｃｄ）の内部変数を用いて、外部振動の角周波数ω１、ω２を推定する。補償用テーブル２５は、各周波数ω１、ω２に対応した外部振動抑圧用の補償器２３Ａ，２３Ｂ（Ｃｄ）の定数を格納する。外乱抑圧補償器２３Ａ，２３Ｂ（Ｃｄ）は、周波数推定器２４Ａ，２４Ｂの角周波数ω１、ω２により、補償用テーブル２５から読み出された定数により内部定数を修正し、位置誤差ｅから外乱抑圧制御量Ｕｄ１，Ｕｄ２を計算する。
【０１７３】
加算ブロック２９は、２つの外乱抑圧制御量Ｕｄ１，Ｕｄ２を加算する。加算ブロック２６は、制御量Ｕｎと外乱抑圧制御量Ｕｄ（＝Ｕｄ１＋Ｕｄ２）とを加算して、プラント２２に出力する。
【０１７４】
即ち、Ｕｄ1とＵｄ２なる２つの補正値を加算して、出力する。ここで、第１の外乱抑圧制御機構２３Ａ，２４Ａ，２５と、第２の外乱抑圧制御機構２３Ｂ，２４Ｂ，２５との間で、角周波数ωを修正する。即ち、適応制御すると、推定角周波数ω１、ω２が、同一となり、１つの外乱にしか対応できなくなる可能性がある。このため、後述するように、推定角周波数ω１、ω２の値が、重ならないように、調整する。
【０１７５】
図２５は、図２４の変形例である。図２５において、図２４と同一のものは、同一の記号で示してあり、図７の図６の変形例と同様に、図２４のコントローラ２１に、オブザーバ制御を利用し、かつ外乱抑圧用の適応制御の入力に、オブザーバの推定位置誤差を与えたときの構成を示す。
【０１７６】
図２６は、図２４の詳細ブロック図である。図２６において、図２１、図２５と同一のものは、同一の記号で示してある。図２６において、ω推定部２４Ａ，２４Ｂは、式（２０）のω適応式の第２項（Ｋａ・ｘ１［ｋ］……）を演算する演算部２４−１Ａ，２４−１Ｂと、推定されたω１［ｋ］、ω２［ｋ］を、１サンプル遅延する遅延部２４−２Ａ，２４−２Ｂと、遅延されたω１（ω１［ｋ−１］），ω２（ω２［ｋ−１］）と演算部２４−１Ａ，２４−１Ｂの第２項の演算結果を加算する加算部２４−３Ａ，２４−３Ｂと、加算部２４−３Ａ，２４−３Ｂの推定角周波数ω１，ω２の上限と下限を制限する周波数範囲制限ブロック２４−４Ａ，２４−４Ｂとを有する。式（２１）の適応式の場合も同様である。
【０１７７】
一方、テーブル２５は、図２０に示したように、角周波数ωの所定周波数毎のＧと、Ｆの値を格納する。例えば、図２０では、２５０Ｈｚ毎の出力ゲインＦ＝［Ｆ１，Ｆ２］を格納する。又、位相補償値Ｇも同様である。
【０１７８】
補間演算器２８Ａ，２８Ｂは、テーブル２５からω推定器２４Ａ，２４Ｂからの推定角周波数ω１［ｋ］，ω２［ｋ］に最も近い２つのＧ，Ｆを読み出し、線形補間して、推定角周波数ω１［ｋ］，ω２［ｋ］に対応するＧ１［ｋ］、Ｇ２［ｋ］，ＦＡ［ｋ］＝Ｆ１［ｋ］，Ｆ２［ｋ］，ＦＢ［ｋ］＝Ｆ１［ｋ］，Ｆ２［ｋ］を計算する。
【０１７９】
又、補償器２３Ａ，２３Ｂは、式（１９）のｘ１［ｋ＋１］、ｘ２［ｋ＋１］，Ｕｄｉｓｔ１［ｋ］，Ｕｄｉｓｔ２［ｋ］を演算する。即ち、位置誤差ｅ［ｋ］に「ＬＡ＝Ｌ１，Ｌ２」，「ＬＢ＝Ｌ１，Ｌ２」を乗算する乗算部２３−１Ａ，２３−１Ｂと、ｘ１［ｋ］とｘ２［ｋ］に、補間演算器２８Ａ，２８ＢからのＧ１［ｋ］、Ｇ２［ｋ］を乗算する乗算部２３−４Ａ，２３−４Ｂと、両乗算部２３−１Ａ，２３−１Ｂ，２３−４Ａ，２３−４Ｂの出力を加算し、ｘ１［ｋ＋１］，ｘ２［ｋ＋１］を出力する加算部２３−２Ａ，２３−２Ｂと、加算部２３−２Ａ，２３−２Ｂの出力を１サンプル遅延して、ｘ１［ｋ］，ｘ２［ｋ］を出力する遅延部２３−３Ａ，２３−３Ｂと、遅延部２３−３Ａ，２３−３Ｂの出力ｘ１［ｋ］，ｘ２［ｋ］に、補間演算器２８Ａ，２８Ｂからの出力ゲインＦＡ［ｋ］，ＦＢ［ｋ］を乗算する乗算部２３−５Ａ，２３−５Ｂを有する。
【０１８０】
加算ブロック２９は、２つの乗算部２３−５Ａ，２３−５Ｂの出力Ｕｄ１，Ｕｄ２を加算し、外乱抑圧制御値Ｕｄ［ｋ］を出力する。又、テーブル２５の構成は、図９のものでも、図１０のものでも良い。
【０１８１】
更に、第２のω推定部２４Ｂに、推定されたω２を、第１のω推定部２４Ａの遅延部２４−２Ａの出力ω１で修正するω２修正ブロック２４−５を設ける。即ち、このような２つの未知周波数に対する適応制御の構成をとるときに、注意すべき点は、ω１とω２が常に同一の値をとり、２つ用意しておきながら、実質的に1つの外乱にしか対処できない場合である。
【０１８２】
このような問題を解決するために、ω１とω２とで値が重ならないように調整する手段２４−５を設ける。即ち、ω２修正ブロック２４−５は、更新したω２を、ω１と比較し、両者が近ければω２を修正する。詳細は、以下で説明する図２９の処理フローで説明する。
【０１８３】
図２７は、図２４の実施の形態の更なる変形例のブロック図である。図２７において、図２４と同一のものは、同一の記号で示してある。図２７において、図２４の構成に、図１４で説明した遅延ブロック２７を設け、図１６で説明したように、計算遅延時間を改善するために、Ｕｄの出力を１サンプル遅延させた例である。
【０１８４】
図２８は、図２７のブロック図の変形例のブロック図である。図２８において、図２４、図２７と同一のものは、同一の記号で示してある。図２８は、図１５と同様に、図２７のコントローラ２１に、オブザーバ制御を利用し、かつ外乱抑圧用の適応制御の入力に、オブザーバの推定位置誤差を与えたときの構成を示す。
【０１８５】
図２９は、図２４、図２７に示す制御系の観測位置取得から電流出力、さらに適応制御の計算に至る、一連の処理を説明するフローチャートである。
【０１８６】
（Ｓ５０）ＭＣＵ１４は、最初に観測位置ｙを、ヘッド３から取得して、位置誤差ｅを計算する。
【０１８７】
（Ｓ５２）次に、ＭＣＵ１４は、式（６）の計算式により、コントローラ（Ｃｎ）２１の出力Ｕｎ［ｋ］を計算する。
【０１８８】
（Ｓ５４）次に、ＭＣＵ１４は、前回のサンプルで計算したＵｄ［ｋ−１］を用いて、プラント２２の出力Ｕ［ｋ］を、Ｕｎ［ｋ］＋Ｕｄ［ｋ−１］で計算する。この計算値Ｕがプラント２２へ出力され、出力電流が変化する。
【０１８９】
（Ｓ５６）ＭＣＵ１４は、その後、適応制御の計算を実行する。先ず、ω１の更新計算を行う。即ち、式（１７）又は式（１８）の周波数推定器２４Ａの適応則の計算を行い、推定角周波数ω１［ｋ］を更新する。
【０１９０】
（Ｓ５８）次に、ＭＣＵ１４は、テーブル２５を参照して、前述の線形補間を実行してＧ１，ＦＡの値を更新する。
【０１９１】
（Ｓ６０）その上で，ＭＣＵ１４は、式（１９）の状態変数ｘ１［ｋ＋１］，ｘ２［ｋ＋１］の更新計算を行い、同時に次サンプルの補正電流Ｕｄ１［ｋ］を計算する。
【０１９２】
（Ｓ６２）次に、ＭＣＵ１４は、推定角周波数ω２［ｋ］の更新計算を行う。先ず、変数ω２＿ＯＬＤに、前サンプルのω［ｋ−１］をセットする。次に、式（１７）又は式（１８）の周波数推定器２４Ｂの適応則の計算を行い、推定角周波数ω２［ｋ］を更新する。
【０１９３】
（Ｓ６４）ＭＣＵ１４は、更新したω２［ｋ］を、ω１［ｋ］と比較し、両者が近ければ，ω２［ｋ］を修正する。即ち、第１の推定角周波数ω１に対し、所定の周波数範囲を定義するΔωを設定し、第２の推定角周波数ω２［ｋ］が、（ω１＋Δω）より小さく、且つ（ω１−Δω）より大きいかを判定する。この（ω１＋Δω）から（ω１−Δω）までが、ω２が、ω１に近いかの範囲である。第２の推定角周波数ω２［ｋ］が、（ω１＋Δω）より小さくなく、且つ（ω１−Δω）より大きくない場合には、ω２とω１が近くないため、ω２の修正は必要なく、ステップＳ６８に進む。いかを判定する。り小さく、より小さく、小さく、
（Ｓ６６）一方、第２の推定角周波数ω２［ｋ］が、（ω１＋Δω）より小さく、且つ（ω１−Δω）より大きいと判定された場合には、ω２が、ω１に近いとを判定し、ω２［ｋ］を修正する。即ち、ω１に対し、ω２が、小さい方向にあるか、大きい方向にあるかを判定するため、前サンプルのω２［ｋ−１］は、ω１に近くなかったため、ω１が、ω２［ｋ−１］がセットされたω＿ＯＬＤ［ｋ］以下かを判定する。ω１が、ω２［ｋ−１］がセットされたω＿ＯＬＤ［ｋ］以上であれば、ω２は、ω１より小さかったため、ω２［ｋ］を（ω１−Δω）、即ち、許容範囲の下限に、修正する。逆に、ω１が、ω２［ｋ−１］がセットされたω＿ＯＬＤ［ｋ］以上でなければ、ω２は、ω１より大きかったため、ω２［ｋ］を（ω１＋Δω）、即ち、許容範囲の上限に、修正する。
【０１９４】
（Ｓ６８）次に、ＭＣＵ１４は、ω２［ｋ］で、テーブル２５を参照して、前述の線形補間を実行して，Ｇ２，ＦＢの値を更新する。
【０１９５】
（Ｓ７０）その上で，ＭＣＵ１４は、式（１９）の状態変数ｘ１［ｋ＋１］，ｘ２［ｋ＋１］の更新計算を行い、同時に次サンプルの補正電流Ｕｄ２［ｋ］を計算する。そして、ＭＣＵ１４は、ステップＳ６０のＵｄ１［ｋ］と前記Ｕｄ２［ｋ］とを加算して、Ｕｄ［ｋ］を求める。
【０１９６】
尚、図２４乃至図２９では、２つの異なる周波数の外乱に適応させる例を示した。しかし、対応する周波数の数は２つに限定されない。３つ、４つと適応制御のブロックを増やすことにより、さらに多くの外乱周波数に対応することが可能になる。
【０１９７】
このように、Δωなる値を設定している。この値は、ω２とω１との差の最低値である。このΔωよりも差が小さければ、ω２の値をずらすようにする。ただし、ずらすにも方向がある。正方向にずらす場合と負方向にずらす場合とを区別する。
【０１９８】
［位置決め制御系の第６の実施の形態］
図３０は、本発明の位置決め制御系（サーボ制御系）の第６の実施の形態のブロック図、図３１は、図３０のタイムチャート図である。
【０１９９】
一般に、サンプル周波数を高くすれば、位置決め精度の改善が期待できる。しかし、磁気ディスク装置においては、サーボ信号の記録領域を増やすことにつながり、その分、データを記録する面積が減少してしまう。その改善策として、磁気ディスク装置においてマルチレート制御が用いられることがある。マルチレート制御は、フィルタを用いて実現することもできる。磁気ディスク装置においては、オブザーバ制御を用いてマルチレート制御を実現する方法が一般的である。
【０２００】
この実施の形態は、マルチレート制御を用いたオブザーバ制御のコントローラの構成を使用した実施の形態である。即ち、マルチレート制御は、入力のサンプル周波数以上の周波数の出力を実現するための方法である。この例では、２倍のマルチレート制御を構成している。すなわち、入力である観測位置ｙの検出サンプル周波数の２倍の周波数で電流Ｕを出力する。
【０２０１】
図３０のマルチレート制御を用いたオブザーバ制御のコントローラ２１Ａ，２１Ｂは、式（６）から、以下の式（２３）で、構成される。
【０２０２】
【数２３】
2007004946.tif 000025
【０２０３】
式（２３）で示されるように、基本的には、観測位置ｙの検出サンプルで、式（６）を２回実行し、ｕ［ｋ］，ｕ［ｋ＋０．５］を計算し、２倍の周波数で、電流ｕ［ｋ］，ｕ［ｋ＋０．５］を出力する。
【０２０４】
即ち、図３１にも示すように、観測位置の検出サンプル（サーボゲート）で、観測位置ｙを取得した後、オブザーバの推定位置誤差、すなわち観測位置ｙ［ｋ］と、１サンプル前に計算した予測位置ｘ＿ｂａｒ［ｋ］との差分値により、状態変数ｘ＿ｈａｔ［ｋ］、ｖ＿ｈａｔ［ｋ］、ｂ＿ｈａｔ［ｋ］を修正する。その上で、３つの状態変数ｘ＿ｈａｔ［ｋ］、ｖ＿ｈａｔ［ｋ］、ｂ＿ｈａｔ［ｋ］に、フィードバックゲインＦｘ，Ｆｖ，Ｆｂをかけて、電流ｕ［ｋ］を出力する。電流出力後に、０．５サンプル後のサンプルの状態変数の値ｘ＿ｈａｔ［ｋ＋０．５］，ｖ＿ｈａｔ［ｋ＋０．５］，ｂ＿ｈａｔ［ｋ＋０．５］を，ｕ［ｋ］により、推定する。その上で、３つの状態変数ｘ＿ｈａｔ［ｋ＋０．５］、ｖ＿ｈａｔ［ｋ＋０．５］、ｂ＿ｈａｔ［ｋ＋０．５］に、フィードバックゲインＦｘ，Ｆｖ，Ｆｂをかけて、電流ｕ［ｋ＋０．５］を出力する。電流出力後、次のサンプルの状態変数の値ｘ＿ｂａｒ［ｋ＋１］，ｖ＿ｂａｒ［ｋ＋１］、ｂ＿［ｋ＋１］を推定する。
【０２０５】
具体的には、観測位置ｙの検出サンプル周波数の２倍の周波数のクロック（マルチレートサンプルクロック）３０を、コントローラ２１Ａ，２１Ｂに与え、Ｕｎ１（Ｕ［ｋ］），Ｕｎ２（Ｕ［ｋ＋０．５］）を，このクロックに同期して、Ｕｎとして、出力する。
【０２０６】
一方、適応制御のブロック２３，２４，２５は、オブザーバ２１Ａの推定位置誤差を用いて、前述のように、外乱抑圧制御値Ｕｄを計算する。このようなマルチレート制御においても、適応制御のブロック２３，２４，２５は１サンプルに、１回動作させ、外乱抑圧制御値Ｕｄを計算する。その理由は、１つには、計算処理が重く、処理時間が長くなるためであり、２つは、１サンプルに１度動作させても、２度動作させるのに比べて、抑圧性能に差はないと思われるためである。加算ブロック２６は、ＵｎとＵｄを加算し、プラント２２に出力する。
【０２０７】
図３２は、図３０の第６の実施の形態のマルチレート制御を用いた制御系の他の構成のブロック図である。図３２において、図３０で示したものと同一のものは、同一の記号で示してある。図３２において、図３０の構成に、適応制御の出力Ｕｄを１サンプル遅延させる遅延ブロック２７を設けた例である。即ち、図１４の実施の形態と同様に、故意に、外乱抑圧出力を１サンプル遅延させるのは、計算処理時間の短縮のためである。
【０２０８】
即ち、図１６のように、前回のサンプルの外乱抑圧制御値Ｕｄ［ｋ−１］を用いて、電流出力し、その後、補償器（Ｃｄ）２３の出力Ｕｄ（Ｕｄｉｓｔ）［ｋ］を計算する。このように、観測位置ｙを取得してから駆動電流Ｕを出力するまでの時間が、短くなり、制御系のレスポンス（位相精度）が向上する。又、前述のように、前回のサンプルでの推定値ω［ｋ−１］，Ｕｄ［ｋ−１］を使用しても、その影響より、制御系のレスポンス（位相精度）が早くなる分、外乱周波数推定速度が向上する。
【０２０９】
図３３は、図３２に示す制御系の観測位置取得から電流出力、さらに適応制御の計算に至る、一連の処理を説明するフローチャートである。
【０２１０】
（Ｓ８０）ＭＣＵ１４は、最初に観測位置ｙを、ヘッド３から取得して、位置誤差ｅを計算する。
【０２１１】
（Ｓ８２）次に、ＭＣＵ１４は、式（３３）の計算式により、コントローラ（Ｃｎ１）２１Ａの出力Ｕｎ１［ｋ］を計算する。
【０２１２】
（Ｓ８４）次に、ＭＣＵ１４は、前回のサンプルで計算したＵｄ［ｋ−１］を用いて、プラント２２の出力Ｕ１［ｋ］を、Ｕｎ１［ｋ］＋Ｕｄ［ｋ−１］で計算する。この計算値Ｕ１がプラント２２へ出力され、出力電流が変化する。
【０２１３】
（Ｓ８６）次に、ＭＣＵ１４は、式（３３）の計算式により、コントローラ（Ｃｎ２）２１Ａの出力Ｕｎ２［ｋ］（＝Ｕｎ［ｋ＋０．５］）を計算する。
【０２１４】
（Ｓ８８）次に、ＭＣＵ１４は、前回のサンプルで計算したＵｄ［ｋ−１］を用いて、プラント２２の出力Ｕ２［ｋ］を、Ｕｎ２［ｋ］＋Ｕｄ［ｋ−１］で計算する。この計算値Ｕ２が，指定時刻に、プラント２２へ出力され、出力電流が変化する。
【０２１５】
（Ｓ９０）ＭＣＵ１４は、その後、適応制御の計算を実行する。先ず、ωの更新計算を行う。即ち、式（１７）又は式（１８）の周波数推定器２４の適応則の計算を行い、推定角周波数ω［ｋ］を更新する。
【０２１６】
（Ｓ９２）次に、ＭＣＵ１４は、テーブル２５を参照して、Ｇ，Ｆの値を更新する。
【０２１７】
（Ｓ９４）その上で，ＭＣＵ１４は、式（１９）の状態変数ｘ１［ｋ＋１］，ｘ２［ｋ＋１］の更新計算を行い、同時に次サンプルの補正電流Ｕｄ［ｋ］を計算する。
【０２１８】
図３４は、図３０の第６の実施の形態のマルチレート制御を用いた制御系の更に他の構成のブロック図である。図３４において、図３０、図３２で示したものと同一のものは、同一の記号で示してある。図３４において、図３０の構成に、適応制御の出力Ｕｄを１サンプル遅延させる遅延ブロック２７を設け、且つプラント２２への電流出力前に、式（９）で説明したノッチフィルタ３１を設けたものである。
【０２１９】
ノッチフィルタ３１を、１個又は複数個従属接続して、アクチュエータ１の共振を抑止する。即ち、アクチュエータは共振特性をもっている。そのため、ノッチフィルタに代表されるフィルタを用いて、コントローラ出力をそのフィルタに通した後、フィルタ出力をアクチュエータに供給する。
【０２２０】
図３５は、図３４に示す制御系の観測位置取得から電流出力、さらに適応制御の計算に至る、一連の処理を説明するフローチャートである。
【０２２１】
（Ｓ１００）ＭＣＵ１４は、最初に観測位置ｙを、ヘッド３から取得して、位置誤差ｅを計算する。
【０２２２】
（Ｓ１０２）次に、ＭＣＵ１４は、式（３３）の計算式により、コントローラ（Ｃｎ１）２１Ａの出力Ｕｎ１［ｋ］を計算する。
【０２２３】
（Ｓ１０４）次に、ＭＣＵ１４は、前回のサンプルで計算したＵｄ［ｋ−１］を用いて、プラント２２の出力Ｕ１［ｋ］を、Ｕｎ１［ｋ］＋Ｕｄ［ｋ−１］で計算する。
【０２２４】
（Ｓ１０６）ＭＣＵ１４は、出力Ｕ１［ｋ］を式（９）のノッチフィルタ３１を通過するためのフィルタ計算処理を行い、この計算値Ｕ１がプラント２２へ出力され、出力電流が変化する。
【０２２５】
（Ｓ１０８）次に、ＭＣＵ１４は、式（３３）の計算式により、コントローラ（Ｃｎ２）２１Ａの出力Ｕｎ２［ｋ］（＝Ｕｎ［ｋ＋０．５］）を計算する。
【０２２６】
（Ｓ１１０）次に、ＭＣＵ１４は、前回のサンプルで計算したＵｄ［ｋ−１］を用いて、プラント２２の出力Ｕ２［ｋ］を、Ｕｎ２［ｋ］＋Ｕｄ［ｋ−１］で計算する。
【０２２７】
（Ｓ１１２）ＭＣＵ１４は、出力Ｕ２［ｋ］を式（９）のノッチフィルタ３１を通過するためのフィルタ計算処理を行い、この計算値Ｕ２が，指定時刻に、プラント２２へ出力され、出力電流が変化する。
【０２２８】
（Ｓ１１４）ＭＣＵ１４は、その後、適応制御の計算を実行する。先ず、ωの更新計算を行う。即ち、式（１７）又は式（１８）の周波数推定器２４の適応則の計算を行い、推定角周波数ω［ｋ］を更新する。
【０２２９】
（Ｓ１１６）次に、ＭＣＵ１４は、テーブル２５を参照して、Ｇ，Ｆの値を更新する。
【０２３０】
（Ｓ１１８）その上で，ＭＣＵ１４は、式（１９）の状態変数ｘ１［ｋ＋１］，ｘ２［ｋ＋１］の更新計算を行い、同時に次サンプルの補正電流Ｕｄ［ｋ］を計算する。
【０２３１】
［位置決め制御系の第７の実施の形態］
前述の説明では、トラック追従中に外部振動を加えた状態にて、適応制御を起動して、外乱を抑圧している。しかし、実際の磁気ディスク装置においては、常時同一のトラックを追従するのではなく、シーク制御も実行される。
【０２３２】
このように制御を切り替える際に、本発明の適応制御の動作タイミングを説明する。図３６は、本発明の位置決め制御系の第７の実施の形態のブロック図である。図３６において、図６で説明したものと同一のものは、同一の記号で示してある。即ち、図３６は、ＭＣＵ１４が実行するサーボ制御系の演算ブロック図であり、目標位置ｒと現在位置ｙとの位置誤差ｅを演算ブロック２０で演算し、制御ブロック（Ｃｎ）２１で制御演算し、制御量Ｕｎを計算し、プラント２２であるＶＣＭ１、３を駆動する。プラントの位置は、磁気ヘッド３からのサーボ信号を、復調し、現在位置ｙを計算し、演算ブロック２０にフィードバックする。
【０２３３】
角周波数推定器２４は、位置誤差ｅと外乱抑圧補償器２３（Ｃｄ）の内部変数を用いて、外部振動の角周波数ωを推定する。補償用テーブル２５は、各周波数ωに対応した外部振動抑圧用の補償器２３（Ｃｄ）の定数を格納する。外乱抑圧補償器２３（Ｃｄ）は、周波数推定器２４の角周波数ωにより、補償用テーブル２５から読み出された定数により内部定数を修正し、位置誤差ｅから外乱抑圧制御量Ｕｄを計算する。加算ブロック２６は、制御量Ｕｎと外乱抑圧制御量Ｕｄとを加算して、プラント２２に出力する。
【０２３４】
このコントローラ２１は、トラックフォローイングを行うブロックである。図５に示したように、更に、シーク制御と整定制御を行うため、周知のシーク制御ブロック４０と、整定制御ブロック４１及び位置誤差に応じて、シーク制御ブロック４０、整定制御ブロック４１及びコントローラ（トラックフォローイング制御ブロック）２１の出力を切り替える切替ブロック４２とを設ける。
【０２３５】
この構成では、図５のヘッド移動制御を行う際に、トラック追従制御のときのみ適応制御を起動する。即ち、トラック追従制御の時のみ、切替ブロック４２が、適応制御の加算ブロック２６の出力を選択して、プラント２２（１，３）に出力するので、コントローラ２１を含む適応制御ブロック（２３，２４，２５，２６）の処理を、トラック追従時にのみ、実行する。
【０２３６】
このようにすると、ＭＣＵ１４の処理の負担を軽減して、且つリード／ライト動作時のヘッドのトラック追従制御を、外乱抑圧して、実行できる。
【０２３７】
図３７は、本発明の位置決め制御系の第７の実施の形態の他のブロック図である。図３７において、図６、図３６で説明したものと同一のものは、同一の記号で示してあり、説明を省略する。この構成では、適応制御２３，２４，２５は、通常はＯＦＦにしておく。データのＲｅａｄまたはＷｒｉｔｅ実行時に、位置決め精度が劣化していたら、適応制御２３，２４，２５をＯＮにして、ＲｅａｄまたはＷｒｉｔｅ動作を再試行する。
【０２３８】
即ち、図３７の制御系の構成に示すように、図３６の構成に、位置決め精度監視ブロック４３と、適応制御ブロック２３，２４の入口と出口に、一対のスイッチブロック４４，４５を設ける。位置決め精度監視ブロック４３は、切替ブロック４２からの制御モード（シーク、整定、フォローイング）を受け、フォローイングモード時に、位置誤差ｅを監視し、位置決め精度が低下したかを判定する。一方、両スイッチ４４，４５は、通常、オフの状態にある。即ち、適応制御ブロック２３，２４への入力は、カットされており、出力もカットされている。
【０２３９】
位置決め精度監視ブロック４３は、前述の監視により、外乱等により、位置決め精度が低下したと判定すると、両スイッチ４４，４５に起動命令を送り、両スイッチ４４，４５をオンする。これにより、補償器２３、ω推定部２４に、位置誤差ｅが入力され、前述のように、補償器２３から外乱抑圧制御値Ｕｄが、スイッチ４５を介し、加算ブロック２６へ出力される。このため、トラックフォローイング時のプラント２２（１，３）への出力Ｕは、コントローラ２１の出力Ｕｎから、（Ｕｎ＋Ｕｄ）へ変化し、外乱抑圧制御する。
【０２４０】
この場合、位置決め精度監視ブロック４３が、位置決め精度が向上したと判定した場合には、スイッチ４４，４５をオフに制御できる。
【０２４１】
このようにすると、ＭＣＵ１４の処理の負担をより軽減して、且つリード／ライト動作時のヘッドのトラック追従制御を、位置決め精度が低下する外乱の場合に、外乱抑圧して、実行できる。
【０２４２】
図３８は、本発明の位置決め制御系の第７の実施の形態の更に他のブロック図である。図３８において、図６、図３６、図３７で説明したものと同一のものは、同一の記号で示してあり、説明を省略する。この構成では、適応制御を常時動作させるものである。
【０２４３】
即ち、適応制御２３の出力Ｕｄは、常時供給するが、適応制御２３，２４の入力は、トラック追従中のみに供給する。この構成にすることで、シーク応答時に発生する大きな位置誤差の影響を受けずに、適応制御が実行できる。
【０２４４】
即ち、図３８に示すように、図３６の構成に、適応制御ブロック２３，２４の入口に、スイッチブロック４４を設ける。スイッチブロック４４は、通常は、値「０」側に、接続されており、切替ブロック４２からの制御モード（シーク、整定、フォローイング）の内、フォローイングモード時に、位置誤差ｅ側に切り替わる。これにより、補償器２３、ω推定部２４に、位置誤差ｅが入力され、前述のように、補償器２３から外乱抑圧制御値Ｕｄが、スイッチ４５を介し、加算ブロック２６へ出力される。
【０２４５】
一方、加算ブロック２６は、切替ブロック４２とプラント２２（１，３）との間に設けられている。このため、トラックフォローイング時以外（シーク、整定制御時）にも、外乱抑圧制御値Ｕｄが、シーク制御値や整定制御値に加算され、プラント２２（１，３）に出力される。一方、トラックフォローイング時は、プラント２２（１，３）への出力Ｕは、位置誤差ｅを入力して、適応制御ブロック２３，２４が計算したコントローラ２１の出力Ｕｎに、位置誤差ｅに応じたＵｄを加算して、外乱抑圧制御する。
【０２４６】
一方、トラックフォローイング時以外（シーク、整定制御時）は、適応制御ブロック２３，２４には、スイッチ４４により、値「０」（位置誤差ｅ＝０）が入力されているので、式（２０）のように、角周波数ωは、トラックフォローイング時の推定値のままである。このため、シーク時の大きな位置誤差（シークトラック数）の影響を受けずに、トラックフォローイング時に、完全に、外乱抑圧できなくても、シーク動作を開始できる。
【０２４７】
即ち、その外乱抑圧制御値Ｕｄが、シーク制御値や整定制御値に加算され、プラント２２（１，３）に出力される。この構成では、ヘッド切り替え時にも、そのまま利用し続けることができる。
【０２４８】
［実施例］
次に、本発明による実施例を説明する。図３９及び図４０は、本発明の適応制御を適用した位置決め制御系のシミュレーション結果である。図３９及び図４０は、図１９の構成の制御系で、コントローラ２１にオブザーバ制御を用いたモデルを使用した。ただし、適応制御の入力は、オブザーバの推定位置誤差ではなく、位置誤差とした。
【０２４９】
図３９の上段は、横軸に時間（ｍｓ）、縦軸に、位置誤差ＰＥＳ（ｅ）をとったグラフであり、下段は、横軸に時間、縦軸に外乱周波数（Ｈｚ）をとったグラフである。図３９の下段のグラフのように、外乱周波数を５００Ｈｚ、１０００Ｈｚ、１５００Ｈｚの３段階にステップ状に変化させたときに、図３９の上段に示すように、位置誤差ＰＥＳは、適切に収束している。この本発明の適応制御の抑圧応答に示すように、外乱を正しく抑圧することができる。
【０２５０】
次に、図４０は、図２４及び図２５に示す２つの異なる周波数に対応できる適応制御を用いた制御系のシミュレーション結果である。図３９と同様に、図４０の上段は、横軸に時間、縦軸に、位置誤差ＰＥＳ（ｅ）をとったグラフであり、下段は、横軸に時間、縦軸に外乱周波数（Ｈｚ）をとったグラフである。図４０の下段のグラフに示すように、外乱周波数は、１０００Ｈｚと２０００Ｈｚの２つを与えた。
【０２５１】
図２４の補償器２３Ａ，２３Ｂの初期周波数を、それぞれ５００Ｈｚと２５００Ｈｚに設定して、動作させたときの収束応答を示している。図４０の上段に示すように、位置誤差ＰＥＳは、適切に収束している。この本発明の適応制御の抑圧応答に示すように、２つの異なる周波数の外乱を正しく抑圧することができる。
【０２５２】
次に、実際の磁気ディスク装置での実施例を説明する。図４１、図４２及び図４３は、２．５型磁気ディスク装置において、本発明の適応制御を実装したときの応答特性を示すグラフである。図４１、図４２の上段は、横軸に時間（ｍｓ）、縦軸に、位置誤差ＰＥＳ（トラック数）をとったグラフであり、中段は、横軸に時間（ｍｓ）、縦軸に駆動電流（％）をとったグラフであり、下段は、横軸に時間（ｍｓ）、縦軸に外乱周波数（Ｈｚ）をとったグラフである。
【０２５３】
磁気ディスク装置は、回転周波数が７０Ｈｚ（４２００ｒｐｍ）の２．５インチの装置を用いた。この磁気ディスク装置のＭＣＵ１４のプログラムにて、位置ｙに、正弦波上の外乱を加えて、擬似的に振動を発生させたときの応答を示す。外乱周波数は、回転周波数の整数倍からずらしてある。結果を、回路上のメモリに、数値データとして展開して、動作後にその値を外部に取り出した上で、図示した。
【０２５４】
図４１では、補償器の外乱周波数の推定値として、５６０Ｈｚとし、外乱周波数１７５Ｈｚの外乱を与えた場合に、図４１の下段のグラフのように、補償器の推定外乱周波数は、５６０Ｈｚから１７５Ｈｚに推移し、図４１の上段に示すように、位置誤差ＰＥＳは、適切に収束している。又、この時、図４１の中段に示すように、駆動電流が、適切に外乱の変化に対応して、変化している。この本発明の適応制御の抑圧応答に示すように、外乱を正しく抑圧することができる。即ち、外乱周波数に正しく追従でき、かつ位置ゆれが抑圧できている。
【０２５５】
同様に、図４２では、補償器の外乱周波数の推定値として、５６０Ｈｚとし、外乱周波数１４３５Ｈｚの外乱を与えた場合に、図４２の下段のグラフのように、補償器の推定外乱周波数は、５６０Ｈｚから１４３５Ｈｚに推移し、図４２の上段に示すように、位置誤差ＰＥＳは、適切に収束している。又、この時、図４２の中段に示すように、駆動電流が、適切に外乱の変化に対応して、変化している。この本発明の適応制御の抑圧応答に示すように、外乱を正しく抑圧することができる。
【０２５６】
図４３は、加振器上に、図４１及び図４２で説明した磁気ディスク装置を載せ、正弦波状に振動するように加振器を駆動したときに、適応制御の応答を観測したものである。図４３において、横軸は、時間（ｍｓ）であり、縦軸は、上から適応制御をＯＮにする時刻、ＶＣＭの駆動電流、位置誤差ＰＥＳを示す。この例では、時刻４０ｍｓで、適応制御をオンしてから、５０ｍｓ後の時刻９０ｍｓで、位置誤差ＰＥＳが収束している。
【０２５７】
この収束時間は、式（２０）、式（２１）の適応ゲインＫａおよびＦで調整することができる。適応ゲインまたはＦの値が大きければ、より早く周波数に追従し、かつ外乱周波数と一致したからの収束時間が早まる。
【０２５８】
前記にて説明した実験例はいずれも、トラック追従中に外部振動を加えた状態にて、適応制御を起動して外乱を抑圧している。しかし、実際の磁気ディスク装置においては、常時同一のトラックを追従するのではなく、他のトラックへ移動した時や、ヘッド切り替えを行うための、シーク制御も実行される。
【０２５９】
［他の実施の形態］
前述の実施の形態では、ディスク装置を、磁気ディスク装置で説明したが、光ディスク装置、光磁気ディスク装置等、他の構成のディスク装置にも、適用でき、又、ディスク形状は、円形のみならず、方形等であっても良い。更に、ＭＰＵのプログラム制御で説明したが、個別のハードウェアを使用しても良い。
【０２６０】
以上、本発明を、実施の形態で説明したが、本発明は、その趣旨の範囲内で種々の変形が可能であり、これを本発明の範囲から排除するものではない。
【０２６１】
（付記１）ディスクからヘッドが読み取った位置信号に応じて、アクチュエータにより、前記ヘッドを前記ディスクの所望トラックに位置決め制御するヘッド位置決め制御方法において、目標位置と前記位置信号から得た現在位置との位置誤差に応じて、前記アクチュエータの制御値を求めるステップと、前記位置誤差を基準にした信号から、適応則に従い、逐次外部振動周波数を推定するステップと、前記位置誤差を基準にした信号から、周期外乱の回転ベクトルを推定し、外部振動抑圧用定数を使用して、外部振動抑圧制御値を求めるステップと、前記逐次推定した各外部振動周波数に応じて、前記外部振動抑圧用定数を逐次補正するステップと、前記制御値と前記外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成するステップとを有することを特徴とするヘッド位置決め制御方法。
【０２６２】
（付記２）前記推定ステップは、前記位置誤差を基準にした信号から、適応則に従い、逐次外乱の角周波数を推定するステップからなり、前記外部振動抑圧値を求めるステップは、前記推定した周期外乱の回転ベクトルを、外部振動抑圧用定数としての出力ゲインを使用して、外部振動抑圧制御値としての電流値に変換するステップからなり、前記補正ステップは、前記逐次推定した角周波数に応じて、前記出力ゲインを逐次補正するステップとからなることを特徴とする付記１のヘッド位置決め制御方法。
【０２６３】
（付記３）前記補正ステップは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する前記出力ゲインを取り出し、前記外部振動抑圧用定数としての出力ゲインを更新するステップからなることを特徴とする付記２のヘッド位置決め制御方法。
【０２６４】
（付記４）前記補正ステップは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する２つの前記出力ゲインを取り出すステップと、前記２つの出力ゲインの補間により、前記推定角周波数の出力ゲインを求め、前記外部振動抑圧用定数としての出力ゲインを更新するステップからなることを特徴とする付記３のヘッド位置決め制御方法。
【０２６５】
（付記５）前記外部振動抑圧制御値を、１サンプル遅延するステップを更に有し、前記生成ステップは、現サンプルでの前記制御値と前記１サンプル遅延された外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成するステップからなることを特徴とする付記１のヘッド位置決め制御方法。
【０２６６】
（付記６）前記推定ステップは、更に、前記推定した角周波数を、上限値、下限値で制限するステップを有することを特徴とする付記２のヘッド位置決め制御方法。
【０２６７】
（付記７）前記推定ステップと前記補正ステップと前記外部振動抑圧値を求めるステップと前記生成ステップとを、１サンプル毎に実行し、前記制御値を求めるステップを、前記１サンプルの間に複数回実行することを特徴とする付記１のヘッド位置決め制御方法。
【０２６８】
（付記８）複数の外部振動周波数毎に、前記推定ステップと前記補正ステップと前記外部振動抑圧値を求めるステップとを実行するステップと、前記各外部振動周波数に対する複数の前記外部振動抑圧値を加算するステップとを更に有することを特徴とする付記１のヘッド位置決め制御方法。
【０２６９】
（付記９）前記実行ステップは、前記推定した外部振動周波数が重ならないように、前記一方の推定した外部振動周波数を修正するステップを更に有することを特徴とする付記９のヘッド位置決め制御方法。
【０２７０】
（付記１０）ディスクからヘッドが読み取った位置信号に応じて、アクチュエータにより、前記ヘッドを前記ディスクの所望トラックに位置決め制御するヘッド位置決め制御装置において、目標位置と前記位置信号から得た現在位置との位置誤差に応じて、前記アクチュエータの制御値を求める制御ブロックと、前記位置誤差を基準にした信号から、適応則に従い、逐次外部振動周波数を推定し、前記位置誤差を基準にした信号から、周期外乱の回転ベクトルを推定し、外部振動抑圧用定数を使用して、外部振動抑圧制御値を求め、且つ前記逐次推定した各外部振動周波数に応じて、前記外部振動抑圧用定数を逐次補正する適応制御ブロックと、前記制御値と前記外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成する加算ブロックとを有することを特徴とするヘッド位置決め制御装置。
【０２７１】
（付記１１）前記適応制御ブロックは、前記位置誤差を基準にした信号から、適応則に従い、逐次外乱の角周波数を推定し、前記推定した周期外乱の回転ベクトルを、外部振動抑圧用定数としての出力ゲインを使用して、外部振動抑圧制御値としての電流値に変換し、前記逐次推定した角周波数に応じて、前記出力ゲインを逐次補正することを特徴とする付記１０のヘッド位置決め制御装置。
【０２７２】
（付記１２）前記適応制御ブロックは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する前記出力ゲインを取り出し、前記外部振動抑圧用定数としての出力ゲインを更新することを特徴とする付記１１のヘッド位置決め制御装置。
【０２７３】
（付記１３）前記適応制御ブロックは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する２つの前記出力ゲインを取り出し、前記２つの出力ゲインの補間により、前記推定角周波数の出力ゲインを求め、前記外部振動抑圧用定数としての出力ゲインを更新することを特徴とする付記１２のヘッド位置決め制御装置。
【０２７４】
（付記１４）前記適応制御ブロックは、前記外部振動抑圧制御値を、１サンプル遅延し、前記加算ブロックは、現サンプルでの前記制御値と前記１サンプル遅延された外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成することを特徴とする付記１０のヘッド位置決め制御装置。
【０２７５】
（付記１５）前記適応制御ブロックは、更に、前記推定した角周波数を、上限値、下限値で制限することを特徴とする付記１１のヘッド位置決め制御装置。
【０２７６】
（付記１６）前記適応制御ブロックを、前記１サンプル毎に、実行し、前記制御ブロックを、１サンプルの間に複数回実行することを特徴とする付記１０のヘッド位置決め制御装置。
【０２７７】
（付記１７）複数の外部振動周波数毎に、前記適応制御ブロックを設け、且つ複数の前記適応制御ブロックの前記外部振動抑圧値を加算する加算ブロックを更に有することを特徴とする付記１０のヘッド位置決め制御装置。
【０２７８】
（付記１８）前記適応制御ブロックは、前記推定した外部振動周波数が重ならないように、前記一方の推定した外部振動周波数を修正することを特徴とする付記１７のヘッド位置決め制御装置。
【０２７９】
（付記１９）ディスクから情報を読み取るヘッドと、前記ヘッドを前記ディスクのトラック横断方向に移動するアクチュエータと、前記ヘッドが読み取った位置信号に応じて、前記ヘッドを前記ディスクの所望トラックに位置決めするため、目標位置と前記位置信号から得た現在位置との位置誤差に応じて、前記アクチュエータの制御値を求める制御部とを有し、前記制御部は、前記位置誤差を基準にした信号から、適応則に従い、逐次外部振動周波数を推定し、前記位置誤差を基準にした信号から、周期外乱の回転ベクトルを推定し、外部振動抑圧用定数を使用して、外部振動抑圧制御値を求め、且つ前記逐次推定した各外部振動周波数に応じて、前記外部振動抑圧用定数を逐次補正する適応制御ブロックと、前記制御値と前記外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成する加算ブロックとを有することを特徴とするディスク装置。
【０２８０】
（付記２０）前記適応制御ブロックは、前記位置誤差を基準にした信号から、適応則に従い、逐次外乱の角周波数を推定し、前記推定した周期外乱の回転ベクトルを、外部振動抑圧用定数としての出力ゲインを使用して、外部振動抑圧制御値としての電流値に変換し、前記逐次推定した角周波数に応じて、前記出力ゲインを逐次補正することを特徴とする付記１９のディスク装置。
【０２８１】
（付記２１）前記適応制御ブロックは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する前記出力ゲインを取り出し、前記外部振動抑圧用定数としての出力ゲインを更新することを特徴とする付記２０のディスク装置。
【０２８２】
（付記２２）前記適応制御ブロックは、複数の角周波数値の各々に対する出力ゲインを格納するテーブルを、前記推定した角周波数で参照して、対応する２つの前記出力ゲインを取り出し、前記２つの出力ゲインの補間により、前記推定角周波数の出力ゲインを求め、前記外部振動抑圧用定数としての出力ゲインを更新することを特徴とする付記２１のディスク装置。
【０２８３】
（付記２３）前記適応制御ブロックは、前記外部振動抑圧制御値を、１サンプル遅延し、前記加算ブロックは、現サンプルでの前記制御値と前記１サンプル遅延された外部振動抑圧制御値を加算して、前記アクチュエータの駆動値を生成することを特徴とする付記１９のディスク装置。
【０２８４】
（付記２４）前記適応制御ブロックは、更に、前記推定した角周波数を、上限値、下限値で制限することを特徴とする付記２０のディスク装置。
【０２８５】
（付記２５）制御部は、前記適応制御ブロックを、前記１サンプル毎に、実行し、前記制御値の計算を、１サンプルの間に複数回実行することを特徴とする付記１９のディスク装置。
【０２８６】
（付記２６）前記制御部は、複数の外部振動周波数毎に、前記適応制御ブロックと、複数の前記適応制御ブロックの前記外部振動抑圧値を加算する加算ブロックを更に有することを特徴とする付記１９のディスク装置。
【０２８７】
（付記２７）前記適応制御ブロックは、前記推定した外部振動周波数が重ならないように、前記一方の推定した外部振動周波数を修正することを特徴とする付記２６のディスク装置。
【産業上の利用可能性】
【０２８８】
位置誤差を基準とした信号から適応則により、外部振動周波数を推定するので、積分補償された正確な外部振動周波数を推定でき、且つこの外部振動周波数を用いて、逐次、補償器の定数を修正するので、広い範囲の外部振動周波数に対して、精度の高い追従制御が可能になる。このように、推定した外部振動周波数の値に応じて、補償器の動作を常に最適に保つことができ、特に、外部振動を受けやすい環境でも、ディスク装置の正常動作を保証するのに寄与する。
【図面の簡単な説明】
【０２８９】
【図１】本発明の一実施の形態のディスク記憶装置の構成図である。
【図２】図１の構成のディスクの位置信号の説明図である。
【図３】図２の位置信号の詳細説明図である。
【図４】図２の位置信号の読み取り波形図である。
【図５】図１のヘッドのシーク動作の説明図である。
【図６】本発明の第１の実施の形態の外乱抑圧補償器を付加した位置決め制御系のブロック図である。
【図７】図７のコントローラをオブザーバ制御とした変形例のブロック図である。
【図８】図６の構成の外乱抑圧補償器を含む適応制御ブロックの詳細構成図である。
【図９】図６、図７、図８の構成におけるテーブルの構成図である。
【図１０】図６、図７、図８の構成における他のテーブルの構成図である。
【図１１】図９及び図１０の出力ゲインの特性図である。
【図１２】従来技術の内部定数を固定とした補償器を使用したシミュレーション結果のグラフである。図１０において外乱抑圧用の計算を１サンプル遅延させた制御系の構成
【図１３】本発明の内部定数を更新した補償器を使用したシミュレーション結果のグラフである。
【図１４】本発明の第２の実施の形態の外乱抑圧補償器を付加した位置決め制御系のブロック図である。
【図１５】図１４のコントローラをオブザーバ制御とした変形例のブロック図である。
【図１６】図１４及び図１５において外乱抑圧用の計算を１サンプル遅延させた処理のシーケンス図である。
【図１７】図６及び図７の外乱抑圧用の計算を１サンプル遅延させない処理のシーケンス図である。
【図１８】図１４及び図１５の適応制御処理のフローチャート図である。
【図１９】本発明の第３の実施の形態の外乱抑圧補償器を付加した位置決め制御系のブロック図である。
【図２０】図２０のテーブルの格納データの説明図である。
【図２１】本発明の第４の実施の形態の外乱抑圧補償器を付加した位置決め制御系のブロック図である。
【図２２】図２２の推定角周波数の上限、下限制限の説明図である。
【図２３】図２１の適応制御処理のフローチャート図である。
【図２４】本発明の第５の実施の形態の外乱抑圧補償器を付加した位置決め制御系のブロック図である。
【図２５】図１４のコントローラをオブザーバ制御とした変形例のブロック図である。
【図２６】図２４の構成の外乱抑圧補償器を含む適応制御ブロックの詳細構成図である。
【図２７】本発明の第５の実施の形態の位置決め制御系の他の構成のブロック図である。
【図２８】図２７のコントローラをオブザーバ制御とした変形例のブロック図である。
【図２９】図２７の適応制御処理のフローチャート図である。
【図３０】本発明の第６の実施の形態の外乱抑圧補償器を付加した位置決め制御系のブロック図である。
【図３１】図３１のダブルレート制御による適応制御の動作説明図である。
【図３２】本発明の第６の実施の形態の他の位置決め制御系のブロック図である。
【図３３】図３２の適応制御処理のフローチャート図である。
【図３４】本発明の第６の実施の形態の更に他の位置決め制御系のブロック図である。
【図３５】図３４の適応制御処理のフローチャート図である。
【図３６】本発明の第７の実施の形態の外乱抑圧補償器を付加した位置決め制御系のブロック図である。
【図３７】本発明の第７の実施の形態の他の位置決め制御系のブロック図である。
【図３８】本発明の第７の実施の形態の更に他の位置決め制御系のブロック図である。
【図３９】本発明を適用した制御系のコンピュータシミュレーションによる実施例の応答図である。
【図４０】本発明を適用した制御系のコンピュータシミュレーションによる他の実施例の応答図である。
【図４１】本発明を適用した磁気ディスク装置上のプログラムで電流値に正弦波状外乱を印加したときの応答図である。
【図４２】本発明を適用した磁気ディスク装置上のプログラムで電流値に他の正弦波状外乱を印加したときの応答図である。
【図４３】本発明を適用した磁気ディスク装置を加振器にて加振したときの収束応答結果の説明図である。
【図４４】従来の外乱抑圧用の補償器を含む制御系のブロック図である。
【図４５】図４４の従来技術の開ループ特性図である。
【符号の説明】
【０２９０】
１  アクチュエータ
２  スピンドルモータの回転軸
３  ヘッド
４  ディスク
５  スピンドルモータ
６  アクチュエータのＶＣＭ駆動回路
７  位置復調回路
８  スピンドルモータの駆動回路
９  バス
１０  データの記録再生回路
１１  ハードディスクコントローラ
１２  ＭＣＵのＲＡＭ
１３  ＭＣＵのＲＯＭ
１４  マイクロコントローラユニット（ＭＣＵ）
１５  ハードディスクコントローラのＲＡＭ
１６  位置信号
２０  位置誤差計算ブロック
２１  コントローラ
２２  プラント（ヘッド、アクチュエータ）
２３  外乱抑圧補償器
２４  角周波数推定ブロック
２５  テーブル（定数補正ブロック）
２６  加算ブロック
【図１】
2007004946.tif 000026
【図２】
2007004946.tif 000027
【図３】
2007004946.tif 000028
【図４】
2007004946.tif 000029
【図５】
2007004946.tif 000030
【図６】
2007004946.tif 000031
【図７】
2007004946.tif 000032
【図８】
2007004946.tif 000033
【図９】
2007004946.tif 000034
【図１０】
2007004946.tif 000035
【図１１】
2007004946.tif 000036
【図１２】
2007004946.tif 000037
【図１３】
2007004946.tif 000038
【図１４】
2007004946.tif 000039
【図１５】
2007004946.tif 000040
【図１６】
2007004946.tif 000041
【図１７】
2007004946.tif 000042
【図１８】
2007004946.tif 000043
【図１９】
2007004946.tif 000044
【図２０】
2007004946.tif 000045
【図２１】
2007004946.tif 000046
【図２２】
2007004946.tif 000047
【図２３】
2007004946.tif 000048
【図２４】
2007004946.tif 000049
【図２５】
2007004946.tif 000050
【図２６】
2007004946.tif 000051
【図２７】
2007004946.tif 000052
【図２８】
2007004946.tif 000053
【図２９】
2007004946.tif 000054
【図３０】
2007004946.tif 000055
【図３１】
2007004946.tif 000056
【図３２】
2007004946.tif 000057
【図３３】
2007004946.tif 000058
【図３４】
2007004946.tif 000059
【図３５】
2007004946.tif 000060
【図３６】
2007004946.tif 000061
【図３７】
2007004946.tif 000062
【図３８】
2007004946.tif 000063
【図３９】
2007004946.tif 000064
【図４０】
2007004946.tif 000065
【図４１】
2007004946.tif 000066
【図４２】
2007004946.tif 000067
【図４３】
2007004946.tif 000068
【図４４】
2007004946.tif 000069
【図４５】
2007004946.tif 000070