JP5362062B2 - 位置制御装置及びこれを用いたディスク装置 - Google Patents

位置制御装置及びこれを用いたディスク装置 Download PDF

Info

Publication number
JP5362062B2
JP5362062B2 JP2012055984A JP2012055984A JP5362062B2 JP 5362062 B2 JP5362062 B2 JP 5362062B2 JP 2012055984 A JP2012055984 A JP 2012055984A JP 2012055984 A JP2012055984 A JP 2012055984A JP 5362062 B2 JP5362062 B2 JP 5362062B2
Authority
JP
Japan
Prior art keywords
control
sin
disturbance
block
cos
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012055984A
Other languages
English (en)
Other versions
JP2012138164A (ja
Inventor
和彦 高石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2012055984A priority Critical patent/JP5362062B2/ja
Publication of JP2012138164A publication Critical patent/JP2012138164A/ja
Application granted granted Critical
Publication of JP5362062B2 publication Critical patent/JP5362062B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、外乱による対象物の位置ずれを抑制するための位置制御装置及びディスク装置に関し、特に、未知の外乱周波数による位置ずれを抑制するための位置制御装置及びディスク装置に関する。
近年、対象物を高精度で位置制御する装置は、広く利用されている。例えば、回転する記憶媒体(例えば、ディスク媒体)に、ヘッドで、データを記録、再生するディスク装置では、ヘッドを記憶媒体の所望のトラックに位置決めし、そのトラックに、データをリード/ライトする。このようなディスク装置、例えば、磁気ディスク装置や光ディスク装置において、ヘッドを目標トラックに正確に位置決めすることが、記録密度向上のために極めて重要である。
この位置決めを阻害する要因の1つとして、ディスク上の同心円状のサーボ信号の中心が、モータの回転中心と異なることにより生じる偏心がある。この偏心を補正する技術として、オブザーバを利用した制御方法がある(例えば、特許文献1参照)。
偏心は、回転周波数の整数倍に同期した正弦波状の位置ゆれを発生させる。前記のオブザーバ制御方法は、このような正弦波状の位置揺れを抑圧し、目標トラックに正確に位置決めすることができる。しかしながら、このような偏心補正は、あらかじめ補正する周波数を事前に把握していなければならない。たとえば、回転数の整数倍、1倍や2倍でなければならない。
位置決めを阻害する2つ目の要因として、ディスク装置の外部から加わる振動がある。この振動はさまざまな波形があるが、ここでは、正弦波状の振動に対処する方法について検討する。前記の偏心補正制御を応用することで、回転数の整数倍以外の周波数にも対処することは可能になる。
前記の従来の構成は、外乱の周波数が既知であることを前提としている。ところが、外部振動は、どのような振動が加わるのかは、制御系の設計時点では未知であり、事前にその周波数を把握することはできない。それゆえ、なんらかの未知の周波数の検出手段が必要になり、周波数さえ検出できれば、前述の特許文献1に示したような制御方法を用いて、外部振動による位置ゆれを抑圧する(外部振動に適応追従する)ことが可能になる。
図21は、従来の外乱周波数を検出し、所定の周波数の正弦波状の外乱を抑圧し、位置追従するための制御系の構成図である。図21に示すように、目標位置rと現在位置yとの位置誤差eを演算ブロック120で演算し、制御ブロック(Cn)121で制御演算し、制御量Unを計算し、プラント122(例えば、ディスク装置のVCM)を駆動する。ディスク装置では、磁気ヘッドからのサーボ信号を、復調し、プラント122の現在位置yを計算し、演算ブロック120にフィードバックする。
周波数(ω)推定器124は、位置誤差eと外乱抑圧補償器123(Cd)の内部変数を用いて、外部振動の角周波数ωを推定する。補償用テーブル125は、各周波数ωに対応した外部振動抑圧用の補償器123(Cd)の定数を格納する。外乱抑圧補償器123(Cd)は、周波数推定器124の角周波数ωにより、補償用テーブル125から読み出された定数により内部定数を修正し、位置誤差eから外乱抑圧制御量Udを計算する。加算ブロック126は、制御量Unと外乱抑圧制御量Udとを加算して、プラント122に出力する。
このように、従来は、角周波数(外乱周波数)ωを推定し、角周波数ωの値に応じて、補償器Cdの内部定数を修正し、補償器Cdの動作を、広い周波数範囲にわたり、常に最適に保っていた(例えば、特許文献2参照)。
この従来の角周波数ωの推定のために、未知の外乱周波数に適応するため、推定した角周波数ωを逐次修正する。このための適応則は、アナログ制御系で、以下のように導出していた。即ち、周期性外乱を補償する補償器の回転ベクトルを、式(1)の連続系で表現する。
Figure 0005362062
式(1)において、z1、z2は、回転ベクトルのX軸成分、Y軸成分である。
式(1)のz1、z2の時間微分を求めると、下記(2)式が得られる。但し、ωは、時間に対して可変である時間関数である。
Figure 0005362062
この回転ベクトルの角度は、sin成分z1,cos成分z2のtangentであり、角周波数ωは、その微分値であるから、この回転ベクトルの角周波数ωは、次式(3)で求められる。
Figure 0005362062
ここで、補償器は、次の(4)式を利用する。尚、式(4)は、ωが定常値(constant)であることを仮定している。
Figure 0005362062
式(4)において、z1は、外乱のsin成分、z2は、外乱のcos成分、L4,L5は、入力ゲイン、eは、位置誤差、sは、ラプラス演算子である。
式(4)のアナログの補償器の状態方程式を展開し、z1、z2の微分式を求め、z1,z2の微分式を,式(3)に代入すると、次の式(5)が得られる。
Figure 0005362062
推定した未知外乱の角周波数が、正しければ、補償器123(Cd)は、適切に外乱を抑圧できる。結果として、位置誤差e又はオブザーバの推定位置誤差が、ゼロになる。即ち、式(5)において、補償器23(Cd)の対象とする角周波数ωと、推定した外乱の角周波数ωとが一致する条件は、式(5)のω‘、即ち、右辺の位置誤差eの項が、ゼロであれば、良い。このため、(5)式を、角周波数の時間微分式で表現し、次式(6)の適応則(積分補償則)を得る。
Figure 0005362062
この式を用いて、ωの値を逐次修正する。(6)式を、積分形式に直し、デジタル制御の式で表現して、次式(7)が得られる。
Figure 0005362062
尚、Kは、適応ゲインである。上式(7)は、加算形式で適応則を用いている。これを乗算形式で表現することもできる。この適応則を用いると、図22に示すように、外乱の振動周波数に対し、推定周波数ωは、リニアーな関係が得られる。
日本特許第3,460,795号公報 日本特許公開2007−004946号公報
一方、近年、このような制御系をデジタル制御、即ち、プロセッサのデータ処理で実行する方式が採用されている。前述の従来技術では、アナログの式を元に、アナログの適応則を導出し、これをデジタルの適応則に変換していた。このため、式(7)をデジタル制御に用いると、デジタルの外乱適応制御で、外乱を良好に抑圧できない(外乱に位置追従できない)という問題が生じる。即ち、推定角周波数ωを直接導出しているが、これは、アナログの式に基づくからである。
従って、本発明の目的は、デジタル処理に適した外乱適応制御を行うための位置制御装置及びディスク装置を提供することにある。
又、本発明の他の目的は、デジタル処理に適した外乱適応則を利用して、推定外乱周波数を高精度に推定し、外乱適応制御するための位置制御装置及びディスク装置を提供することにある。
本発明の更に他の目的は、オブザーバ制御に適した外乱適応制御を行い、より正確に外乱による位置ずれを抑圧するための位置制御装置及びディスク装置を提供することにある。
この目的の達成のため、実施形態は、対象物の位置に応じて、アクチュエータにより、前記対象物を位置制御する位置制御装置において、目標位置と前記対象物の現在位置との位置誤差に応じて、内部制御定数を使用して、外乱適応制御を含む位置制御を、所定のサンプル周期で実行するデジタル制御ブロックと、外乱の角周波数ωとし、前記サンプル周期をTとした場合に、sin(ωT)、又はcos(ωT)の値に応じた前記内部制御定数を格納するテーブルとを有し、前記デジタル制御ブロックは、前記内部制御定数を使用して、外乱適応制御値を計算する外乱適応制御ブロックと、前記位置誤差と前記外乱適応制御ブロックが使用する内部制御定数とから、適応則に従い、前記sin(ωT)、又はcos(ωT)の推定誤差の値を計算する周波数推定ブロックとを有し、前記周波数推定ブロックが計算した前記sin(ωT)の推定誤差にcosωTに比例した適応ゲインを乗算し、又は前記周波数推定ブロックが計算した前記cos(ωT)の推定誤差にsinωTに比例した適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)の値を更新し、前記更新した値で、前記テーブルから対応する前記内部制御定数を読み出し、前記外乱適応制御ブロックが使用する内部制御定数を更新して、前記外乱適応制御を含む位置制御を行う。
又、実施形態のディスク装置は、ディスクから情報を読み取るヘッドと、前記ヘッドを前記ディスクのトラック横断方向に移動するアクチュエータと、目標位置と前記ヘッドの現在位置との位置誤差に応じて、内部制御定数を使用して、外乱適応制御を含む位置制御を、所定のサンプル周期で実行するデジタル制御ブロックと、外乱の角周波数ωとし、前記サンプル周期をTとした場合に、sin(ωT)、又はcos(ωT)の値に応じた前記内部制御定数を格納するテーブルとを有し、前記デジタル制御ブロックは、前記内部制御定数を使用して、外乱適応制御値を計算する外乱適応制御ブロックと、前記位置誤差と前記外乱適応制御ブロックが使用する内部制御定数とから、適応則に従い、前記sin(ωT)、又はcos(ωT)の推定誤差の値を計算する周波数推定ブロックとを有し、前記周波数推定ブロックが計算した前記sin(ωT)の推定誤差にcosωTに比例した適応ゲインを乗算し、又は前記周波数推定ブロックが計算した前記cos(ωT)の推定誤差にsinωTに比例した適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)の値を更新し、前記更新した値で、前記テーブルから対応する前記内部制御定数を読み出し、前記外乱適応制御ブロックが使用する内部制御定数を更新して、前記外乱適応制御を含む位置制御を行う。
更に、実施形態では、好ましくは、前記デジタル制御ブロックは、オブザーバ制御により、前記外乱適応制御を含む位置制御を行う。
更に、実施形態では、好ましくは、前記デジタル制御ブロックは、前記オブザーバ制御のオブザーバの状態変数と、推定ゲインと、推定位置誤差とから推定誤差を計算し、前記適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)に加算して、前記sin(ωT)、又はcos(ωT)を逐次更新する。
更に、実施形態では、好ましくは、前記デジタル制御ブロックは、前記オブザーバ制御のオブザーバの現サンプルの状態変数と、次のサンプルの状態変数とから推定誤差を計算し、前記適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)に加算して、前記sin(ωT)、又はcos(ωT)を逐次更新する。
更に、実施形態では、好ましくは、前記デジタル制御ブロックは、前記計算した前記sin(ωT)、又はcos(ωT)の値を、所定の範囲に収めるためにクリップする。
更に、実施形態では、好ましくは、前記デジタル制御ブロックは、前記位置誤差に応じて、前記アクチュエータの制御値を演算するコントロールブロックと、前記適応則に従い、前記sin(ωT)、又はcos(ωT)に計算し、前記適応ゲインを乗算して、前記sin(ωT)、又はcos(ωT)を更新し、前記更新された値により、前記テーブルから読み出された内部制御定数を使用して、外乱適応制御値を計算する外乱適応制御ブロックとを有し、前記コントロールブロックの制御値と前記外乱適応制御値とで、前記アクチュエータを駆動する。
更に、実施形態では、好ましくは、前記テーブルは、前記計算した前記sin(ωT)、又はcos(ωT)の値に対応した前記オブザーバ制御のオブザーバの状態推定ゲインを格納し、前記デジタル制御ブロックは、前記内部制御定数として、前記オブザーバの状態推定ゲインを、前記テーブルから読み出された状態推定ゲインで更新する。
外乱の角周波数ωとし、前記サンプル周期をTとした場合に、sin(ωT)、又はcos(ωT)の推定誤差を計算し、角周波数ωに比例する適応ゲインを乗算して、sin(ωT)、又はcos(ωT)の値を更新し、外乱適応制御するので、デジタル制御において、外乱の周波数の推定精度を向上でき、外乱適応制御を精度よく実現できる。
本発明の一実施の形態のディスク記憶装置の構成図である。 図1の構成のディスクの位置信号の説明図である。 図2の位置信号の詳細説明図である。 図1のヘッドのシーク動作の説明図である。 本発明の第1の実施の形態の外乱抑圧補償器を付加した位置制御系のブロック図である。 図5のsin(ωT)推定の説明図である。 図5のcos(ωT)と振動周波数との関係図である。 図5のsin(ωT)と適応ゲインとの関係図である。 本発明の第2の実施の形態の外乱抑圧補償器を付加した位置制御系のブロック図である。 図9の構成におけるテーブルの構成図である。 図9の構成における他のsin(ωT)推定器の構成図である。 本発明の第3の実施の形態の外乱抑圧補償器を付加した位置制御系のブロック図である。 図12のsin(ωT/2)推定の説明図である。 図12のsin(ωT/2)と振動周波数との関係図である。 図12のsin(ωT/2)と適応ゲインとの関係図である。 本発明の第4の実施の形態の外乱抑圧補償器を付加した位置制御系のブロック図である。 図16の構成におけるテーブルの構成図である。 図16の構成における他のsin(ωT/2)推定器の構成図である。 本発明の第5の実施の形態の外乱抑圧補償器を付加した位置制御系のブロック図である。 本発明の第6の実施の形態の外乱抑圧補償器を付加した位置制御系のブロック図である。 従来の外乱適応制御を付加した位置制御系のブロック図である。 図21の従来の外乱周波数の推定の説明図である。
以下、本発明を図面に従い、ディスク装置、位置制御系の外乱周波数推定、適応制御、位置制御系の第1の実施の形態、位置制御系の第3の実施の形態、位置制御系の第4の実施の形態、位置制御系の第5の実施の形態、位置制御系の第6の実施の形態、他の実施の形態の順で説明するが、本発明は、下記実施の形態に限らず、種々の変形が可能である。
[ディスク装置]
図1は、本発明の一実施の形態のディスク装置の構成図、図2は、図1の磁気ディスクの位置信号の配置図、図3は、図1及び図2の磁気ディスクの位置信号の構成図、図4は、図1のヘッド位置制御の説明図である。
図1は、ディスク装置として、磁気ディスク装置を示す。図1に示すように、磁気記憶媒体である磁気ディスク4が、スピンドルモータ5の回転軸2に設けられている。スピンドルモータ5は、磁気ディスク4を回転する。アクチュエータ(VCM)1は、そのアーム先端に磁気ヘッド3を備え、磁気ヘッド3を磁気ディスク4の半径方向に移動する。
アクチュエータ1は、回転軸を中心に回転するボイスコイルモータ(VCM)で構成される。図では、磁気ディスク装置に、2枚の磁気ディスク4が搭載され、4つの磁気ヘッド3が、同一のアクチュエータ1で同時に駆動される。
磁気ヘッド3は、リード素子と、ライト素子とからなる。磁気ヘッド3は、スライダに、磁気抵抗(MR)素子を含むリード素子を積層し、その上にライトコイルを含むライト素子を積層して、構成される。
位置検出回路7は、磁気ヘッド3が読み取った位置信号(アナログ信号)をデジタル信号に変換する。リード/ライト(R/W)回路10は、磁気ヘッド3の読み取り及び書込みを制御する。スピンドルモータ(SPM)駆動回路8は、スピンドルモータ5を駆動する。ボイスコイルモータ(VCM)駆動回路6は、ボイスコイルモータ(VCM)1に駆動電流を供給し、VCM1を駆動する。
マイクロコントローラ(MCU)14は、位置検出回路7からのデジタル位置信号から現在位置を検出(復調)し、検出した現在位置と目標位置との誤差に従い、VCM駆動指令値を演算する。即ち、位置復調とサーボ制御を行う。リードオンリーメモリ(ROM)13は、MCU14の制御プログラム等を格納する。ランダムアクセスメモリ(RAM)12は、MCU14の処理のためのデータ等を格納する。
ハードディスクコントローラ(HDC)11は、サーボ信号のセクタ番号を基準にして,1周内の位置を判断し,データを記録・再生する。バッファ用ランダムアクセスメモリ(RAM)15は、リードデータやライトデータを一時格納する。HDC11は、USB,ATAやSCSI等のインターフェイスIFで、ホストと通信する。バス9は、これらを接続する。
図2に示すように、磁気ディスク4には、外周から内周に渡り、各トラックにサーボ信号(位置信号)16が、円周方向に等間隔に配置される。尚、各トラックは、複数のセクタで構成され、図2の実線は、サーボ信号16の記録位置を示す。図3に示すように、位置信号は,サーボマークServo Markと、トラック番号Gray Codeと、インデックスIndexと、オフセット情報(サーボバースト)PosA,PosB,PosC,PosDとからなる。尚、図3の点線は、トラックセンターを示す。
図3に示すトラック番号Gray Codeとオフセット情報PosA,PosB,PosC,PosDを使い,磁気ヘッドの半径方向の位置を検出する。さらに、インデックス信号Indexを元にして,磁気ヘッドの円周方向の位置を把握する。
例えば,インデックス信号を検出したときのセクタ番号を0番に設定し、サーボ信号を検出する毎に、カウントアップして、トラックの各セクタのセクタ番号を得る。このサーボ信号のセクタ番号は,データの記録再生を行うときの基準となる。尚、インデックス信号は、1周に1つである、又、インデックス信号の代わりに、セクタ番号を設けることもできる。
図4は、図1のMCU14が行うアクチュエータのシーク制御例である。図1の位置検出回路7を通じて、MCU14が、アクチュエータの位置を確認して,サーボ演算し、適切な電流をVCM1に供給する。図4では、あるトラック位置から目標トラック位置へヘッド3を移動するシーク開始時からの制御の遷移と、アクチュエータ1の電流、アクチュエータ(ヘッド)の速度、アクチュエータ(ヘッド)の位置を示す。
即ち、シーク制御は、コアース制御、整定制御及びフォローイング制御と遷移することで,目標位置まで移動させることができる。コアース制御は、基本的に速度制御であり、整定制御、フォローイング制御は、基本的に位置制御であり、いずれも、ヘッドの現在位置を検出する必要がある。
このような,位置を確認するためには,前述の図2のように、磁気ディスク上にサーボ信号を事前に記録しておく。即ち、図3に示したように、サーボ信号の開始位置を示すサーボマーク,トラック番号を表すグレイコード,インデックス信号,オフセットを示すPosA〜PosDといった信号が記録されている。この信号を磁気ヘッドで読み出し、このサーボ信号を、位置検出回路7が、デジタル値に変換する。
[位置制御系の第1の実施の形態]
図5は、本発明の位置制御系(サーボ制御系)の第1の実施の形態のブロック図、図6は、図5のsin(ωT)推定の説明図、図7は、振動周波数と推定値cos(ωT)との関係図、図8は、図5の適応ゲインの説明図である。
図5は、MCU14が実行するサーボ制御系の演算ブロック図である。即ち、目標位置rと現在位置yとの位置誤差eを演算ブロック20で演算し、制御ブロック(Cn)21に入力する。制御ブロック(Cn)21は、位置誤差eに従い、制御演算し、制御量Unを計算し、プラント22であるVCM1、3を駆動する。プラントの位置は、磁気ヘッド3からのサーボ信号を、復調し、現在位置yを計算し、演算ブロック20にフィードバックする。
周波数推定器24は、位置誤差eと外乱抑圧補償器23(Cd)の内部変数を用いて、外部振動の角周波数ωのsin(ωT)を推定する。補償用テーブル25は、角周波数ωのsin(ωT)に対応した外部振動抑圧用の補償器23(Cd)の定数を格納する。
外乱抑圧補償器23(Cd)は、周波数推定器24の角周波数ωのsin(ωT)により、補償用テーブル25から読み出された定数により内部定数を修正し、位置誤差eから外乱抑圧制御量Udを計算する。加算ブロック26は、制御量Unと外乱抑圧制御量Udとを加算して、プラント22に出力する。外乱抑圧制御量とは、外乱に対し、ディスクとヘッドとの位置関係がずれないように制御するための制御量であり、外乱が印加されると、通常ヘッドの位置ずれが生じるため、ヘッドを駆動するVCMの駆動値を適応制御する。
ここで、本発明では、周波数推定器24は、sin(ωT)を導出している。この理由を説明する。制御ブロック21、補償器23、周波数推定器24を、オブザーバで構成した制御系で説明する。先ず、予測オブザーバの適応則を説明する。
予測オブザーバでの補償器23は、下記式(8)で表される。尚、式(8)において、z1は、外乱のsin成分、z2は、外乱のcos成分、L4,L5は、入力ゲイン、eは、位置誤差である。
Figure 0005362062
ここで、外乱モデルが、正弦波の場合には、式(8)のA行列は、下記式(9)で表される。
Figure 0005362062
式(8)を展開すると、式(10)となる。
Figure 0005362062
式(2)のアナログの時間微分は、デジタルでは、引き算であるので、式(10)のZ2[k+1]の式から、Z2[k]を引き、Z1[k]を掛けると、式(11)が得られる。
Figure 0005362062
同様に、式(10)のZ1[k+1]の式から、Z1[k]を引き、Z2[k]を掛けると、式(1)が得られる。
Figure 0005362062
式(3)と同様に、アナログの微分は、デジタルの引き算であるから、式(11)と式(12)の差分を取ると、式(13)が得られる。
Figure 0005362062
又、外乱モデルが正弦波である時は、式(9)のように、a11=a22(=cos(ωT))、a12=−a22(=sin(ωT))であるから、式(13)は、下記式(14)に変形できる。
Figure 0005362062
式(14)において、z1とz2の二乗和で除算して、式(15)を得る。
Figure 0005362062
式(5)と比較すると、式(5)では、外乱として、ωを推定するのに対し、式(15)では、sin(ωT)を推定することを示す。即ち、デジタル制御においては、sinωTを推定する必要があり、適応則は、式(15)の右辺の第2項を「0」にするように、sinωTを推定することになる。
次に、現在オブザーバの適応則を説明する。現在オブザーバは、デジタル制御において、予測オブザーバより広く利用されている。
現在オブザーバでの補償器23は、下記式(16)で表される。尚、式(16)において、z1は、外乱のsin成分、z2は、外乱のcos成分、L4,L5は、入力ゲイン、eは、位置誤差である。
Figure 0005362062
式(16)の2つの式を纏めると、式(17)が得られる。
Figure 0005362062
ここで、外乱モデルが、正弦波の場合には、式(17)のA行列は、下記式(18)で表される。尚、式の簡略化のため、cos(ωT),sin(ωT)を、「c」、「s」で表すこととする。
Figure 0005362062
式(18)のA行列の逆行列は、次式(19)となる。
Figure 0005362062
式(17)を、式(18)のA行列で割り、式(19)のA行列の逆行列に置き換えると、式(20)が得られる。
Figure 0005362062
式(20)から、kサンプル時のz1、z2を、求めると、式(21)が得られる。
Figure 0005362062
式(21)のz2[k+1]を掛け、z2[k]に、z1[k+1]を掛けると、式(22)が得られる。この時、z2[k]に、左辺のマイナスを付与している。
Figure 0005362062
式(22)の上下の式の和をとると、式(23)が得られる。
Figure 0005362062
式(23)から、現在オブザーバの構成でも、sin(ωT)を推定すべきである。即ち、アナログの式のように、外乱周波数又は外乱角周波数ωを推定するのではなく、デジタル制御においては、直接推定すべきは、sin(ωT)である。式(23)から、sin(ωT)は、下記式(24)で得られる。
Figure 0005362062
又、現在オブザーバでは、sin(ωT)の代わりに、cos(ωT)を推定しても良い。即ち、式(21)のz1[k+1]を掛け、z2[k]に、z2[k+1]を掛けると、式(25)が得られる。
Figure 0005362062
式(25)の上下の式の和をとると、式(26)が得られる。
Figure 0005362062
式(26)から、アナログの式のように、外乱周波数又は外乱角周波数ωを推定するのではなく、デジタル制御においては、直接推定するのは、cos(ωT)である。式(26)から、cos(ωT)は、下記式(27)で得られる。
Figure 0005362062
図6は、振動周波数と推定値sin(ωT)との関係図である。推定値sin(ωT)は実線で、従来の推定値ωは、一点鎖線で示す。横軸の振動周波数に対し、従来の推定値ωは、直線状の特性を描くが、推定値sin(ωT)と比べると、振動周波数に対し、推定周波数のずれがあり、推定精度が低い。このため、デジタル制御では、推定値ωを推定しても、正確に振動周波数を推定できず、振動周波数に適応する位置制御が困難であった。
一方、本願は、振動周波数を、sin(ωT)で推定しているため、デジタル制御において、正確に振動周波数を推定でき、振動周波数成分に適応する位置制御が実現できる。
又、デジタル制御において、sin(ωT)を、振動周波数fの推定値に使用することは、デジタル制御のサンプリング周波数をFsとすると、次式(28)の周波数を推定することになる。
Figure 0005362062
このことは、図6に示したように、外乱周波数fとsin(ωT)とが、単調な関係を示す範囲は、0からFs/4の領域であり、Fs/4以上では、適応追従ができない。
又、図7は、振動周波数と推定値cos(ωT)との関係図である。図7に示すように、cos(ωT)を推定値に用いる場合には、0からFs/2の範囲で、単調減少の特性が得られる。従って、sin(ωT)の推定の場合に、生じていたFs/4の上限の制約はない。
一方、cos(ωT)を利用すると、低周波数領域では、カーブが平坦近くなり、周波数の推定精度が劣化する。例えば、12kHzのサンプル周波数の場合には、500Hz程度の低周波数領域までは、カーブが平坦であり、推定精度が低下する。
従って、低い周波数側の推定精度を重要視する場合には、sin(ωT)の推定式を使用し、高い周波数側の推定精度を重要視する場合には、cos(ωT)の推定を行うことが望ましい。
更に、ディスク装置の使用形態では、外部振動が、通常、低い周波数側で問題になることが多い。例えば、数100Hz程度の外部振動が、外部から加わることが多い。そのため、ディスク装置では、低い周波数の振動を精度よく推定できるsin(ωT)推定式を利用することが、都合が良い。
[外乱適応制御]
次に、図5のsin(ωT)(又は、cos(ωT))推定器24は、次のように、sin(ωT)又はcos(ωT)を推定して、適応制御する。
第1の適応制御は、正しく、推定できて、制御系が外乱周波数を抑圧できれば、式(24)又は式(27)のe[k]は、「0」になるので、式(24)、式(27)の右辺第2項は、「0」となるはずである。
そこで、sin(ωT)推定の場合には、式(24)の右辺第2項E[k]を,次式(29)で計算する。
Figure 0005362062
次に、式(29)のE[k]に適応ゲインKを掛け、次式(30)のように、sin(ωT)を更新する。
Figure 0005362062
又、cos(ωT)推定の場合には、式(27)の右辺第2項E[k]を,次式(31)で計算する。
Figure 0005362062
次に、式(31)のE[k]に適応ゲインKを掛け、次式(32)のように、cos(ωT)を更新する。
Figure 0005362062
上記のようにして、z1[k+1],z2[k+1],e[k],L4,L5の5つの値を利用して、sin(ωT)、cos(ωT)を、適応的に推定できる。
第2の適応制御の計算方法を説明する。固定小数点方式のプロセッサを使用する場合には、桁数が限られる。上記の、z1[k+1],z2[k+1],e[k],L4,L5の5つの値を利用する場合に、z1[k+1],z2[k+1]の値と,e[k],L4,L5の値との桁が相違する。そこで、限られた桁数を有効に利用するため、以下の手順で、計算する。
sin(ωT)推定の場合には、式(24)の右辺第1項G[k]を,次式(33)で計算する。
Figure 0005362062
次に、現在の設定値であるsin(ωT)と、式(33)のずれE[k]を、次式(34)で計算する。
Figure 0005362062
この式(34)のE[k]に適応ゲインKを掛け、次式(35)のように、sin(ωT)を更新する。
Figure 0005362062
又、cos(ωT)推定の場合には、式(27)の右辺第1項G[k]を,次式(36)で計算する。
Figure 0005362062
次に、現在の設定値であるcos(ωT)と、式(36)のずれE[k]を、次式(37)で計算する。
Figure 0005362062
次に、式(37)のE[k]に適応ゲインKを掛け、次式(38)のように、cos(ωT)を更新する。
Figure 0005362062
上記のようにして、z1[k+1],z1[k],z2[k+1],z[k]の4つの値を利用するだけで、sin(ωT)、cos(ωT)を、適応的に推定できる。
次に、式(30)、(32)、(35)、(38)の適応ゲインKによる誤差を解消する方法を説明する。アナログ制御で,外乱周波数または外乱角周波数を求める場合は,適応則は、式(6)であった。式(6)のエラー値には、外乱以外のノイズ成分(例えば、RRO(Repeatable Run Out)、NRRO(Non Repeatable Run Out))が含まれている。
外乱が、いかなる周波数においても、そのノイズの影響は同じ値を示す場合を考える。とすると,外乱周波数に追従している状態では,上記の一律の適応ゲインKを用いている場合には,外乱周波数が、いかなる値においても,推定した周波数の変動は、適応ゲインKとエラー値の変動で決まり,一定のばらつきを持つ。
一方、デジタル制御においては、式(30)、(32)、(35)、(38)に示したように、エラー値E[k]を求めた後、適応ゲインKをかけて,sinωTを更新する。これらの式において、適応ゲインは一定値として説明した。
このエラー値E[k]が、ノイズの影響で変動する場合、かつその変動は、外乱周波数が、いかなる周波数においても、同様の値を示す場合を考える。すると,外乱周波数が低い場合、すなわち、sinωTが「0」に近い場合と,外乱周波数が高い場合、すなわち、sinωTが「1」に近い場合とで、エラー値E[k]のばらつきが、ω[k]に与える影響には差があることになる。
図8に示すように、ωが高いとき,sinωTのω変化に対する変動は小さい。ωが小さい時、sinωTのω変化に対する変動は大きい。この変化幅は、下記式(39)で表される。即ち、sinωTを、ωで偏微分すると求めることができる。
Figure 0005362062
このように、変化幅が異なることは、デジタル制御における適応ゲインは、一律であっては、誤差への影響が大きくなる。従って、現在の推定外乱周波数に応じて、異なる値をとるべきである。その適応ゲインは、可変であり,周波数が低いと大きく,周波数が高いと低くすべきである。
即ち、sinωTを推定する方法においては、適応ゲインKaは、下記式(40)に示すように、cosωTに比例した値をとる。これにより、変化幅の相違による、誤差への影響を抑制できる。
Figure 0005362062
又、cosωTを推定する方法においては、適応ゲインKaは、式(40)と同様に、sinωTに比例した値をとる。
次に、図5で示した補償器23は、オブザーバで構成され、下記式(41)により、外乱抑圧制御量(電流)Udist(又は、Ud)を計算する。
Figure 0005362062
図5の制御定数テーブル25は、図10で説明するように、式(41)で使用するsin(ωT)又はcos(ωT)の値と、対応するL4、L5、cosωT又はsinωTの値のテーブルで構成される。
従って、サンプル毎に、sinωT(cosωT)演算器24で計算されたsinωT(cosωT)に対応するL4、L5、cosωT又はsinωTの値が、テーブル25から読み出され、補償器23にセットされる。補償器23は、セットされた制御定数と、位置誤差から、式(41)を計算し、外部抑圧制御量Udistを計算し、加算ブロック26に出力する。
[位置制御系の第2の実施の形態]
図9は、本発明の第2の実施の形態の位置制御系のブロック図、図10は、図9の制御定数テーブルの説明図である。図9は、コントローラ21、補償器23を、一体の現在オブザーバで構成した例である。又、sinωT演算部24を、第1の適応制御の計算方法を適用した例である。
図9の位置制御系は、外乱周波数を検出し、外乱を適応制御により、抑圧するため、下記式(42)、(43)、(44)で示される外乱抑圧を行う現在オブザーバである。
Figure 0005362062
Figure 0005362062
Figure 0005362062
尚、式(44)において、a11〜a22は、式(9)、式(18)で示したsin,cosの値である。
即ち、この実施の形態は、コントローラのモデルと外乱モデルを含むオブザーバによる位置制御系の例である。図9において、図5で示したものと同一のものは、同一の記号で示してある。
図9において、第1の演算ブロック20は、ヘッド3(図1参照)が読み取った前述のサーボ情報を復調して得た観測位置y[k]から目標位置rを差し引き、実位置誤差er[k]を演算する。
第2の演算ブロック32は、実位置誤差er[k]からオブザーバの推定位置x[k]を差し引き、推定位置誤差e[k]を演算する。状態推定ブロック34は、この推定位置誤差e[k]と、内部変数である式(42)の推定ゲインL(L1,L2、L3,L4,L5)を用いて、推定修正値(式(42)の右辺第2項)を、演算する。
そして、加算ブロック36は、この推定修正値と、遅延ブロック46から状態量(式(42)の右辺第1項)x[k],v[k]、b[k],z1[k],z2[k]とを加算し、式(42)のように、推定位置x[k],推定速度v[k]、推定バイアス値b[k],推定外乱抑圧値z1[k],z2[k]を得る。尚、式(44)では、推定位置誤差e[k]を、(y[k]−x[k])で表示する。
この推定値は、第4の演算ブロック38で、状態フィードバックゲイン(一Fa=F1,F2,F3,F4,F5)を乗算され、式(43)のように、アクチュエータ1の駆動値u[k]を得る。一方、加算ブロック36からの式(42)の推定値は、第5の演算ブロック42で、推定ゲインAa(式(44)の右辺第1項の行列)を乗じられる。
第4の演算ブロック38の駆動値u[k]は、第6の演算ブロック40で、推定ゲインB(式(44)の右辺第2項のu[k]に乗じる値)を乗じられる。両乗算結果は、加算ブロック44で、加算され、式(44)の次のサンプルの推定状態量x[k+1],v[k+1]、b[k+1],z1[k+1],z2[k+1]を得る。
この次のサンプルの推定状態量は、前述のように、遅延ブロック46に入力し、状態推定ブロック34で、推定修正値で、修正される。そして、加算ブロック36からの式(42)の推定値は、第7の演算ブロック48で、推定位置x[k]が取り出され、前述の第2の演算ブロック32に入力する。
この現在オブザーバに、周波数推定器24と、制御定数テーブル25とを付与する。周波数推定器24は、sin(ωT)の第1の適応則である式(29)、(30)を演算し、sin(ωT)を計算する。
即ち、周波数推定器24では、推定誤差(E[k])演算器24−1が、推定位置誤差e[k]、推定状態量z1[k+1],z2[k+1]、推定ゲインL4,L5を受け、式(29)を計算し、推定誤差E[k]を出力する。
ゲイン乗算器24−2は、推定誤差E[k]にゲインKaを乗算し、式(30)の右辺第2項を計算する。加算器24−5は、遅延ブロック24−3からの1サンプル前のsin(ω[k]T)と、ゲイン乗算器24−2の出力とを加算し、式(30)のsin(ω[k+1]T)を出力する。このsin(ω[k+1]T)は、遅延ブロック24−3で1サンプル遅延され、加算器24−4に入力する。
クリップブロック(飽和処理ブロック)24−4は、入力されたsinωTが、「0」より小さい場合は、「0」に、「1」より大きい場合は、「1」に制限する。このため、状態変数からsinωTを推定しても、図6の周波数範囲の外乱周波数成分を得ることができる。
前述のように、0〜Fs/4の周波数の範囲に対応するsinωTの値は、0〜1である。従って、推定したsinωTの値は、常に0から1の範囲に制限する必要がある。この実施の形態は、加算ブロック24−5の出力を、0から1の範囲に制限するクリップブロック24−4を設けたものである。
そして、ゲイン可変部24−6は、遅延ブロック24−3からのsin(ω[k]T)から、cos(ω[k]T)を計算し、式(40)に従い、ゲイン乗算部24−2のゲインKaを更新する。
周波数推定器24の出力sin(ω[k+1]T)は、制御定数テーブル25に入力する。図10に示すように、制御定数テーブル25は、推定値sinωTに対応する、推定ゲインL1、L2,L3,L4,L5、cosωTの値を格納する。sinωTは、図6で説明したように、0〜Fs/4までを使用するため、図10のテーブルは、33個のsinωTの値を、0〜Fs/4の範囲に割り振る。
そして、制御定数テーブル25は、推定値sinωTに対応する推定ゲインL、cosωTを、引き出し、且つブロック34,42に設定する。これにより、ブロック34の式(42)の推定ゲインL1〜L5、ブロック42の式(44)の制御定数a11〜a22(=cosωT又はsinωT)が更新され、オブザーバの外乱抑圧特性を、外乱周波数に応じて、変更する。
このように、現在オブザーバで構成すると、設計が容易であり、且つ外乱抑圧機能を容易に設定できる。又、周波数推定器24が、cosωTを推定する場合にも、同様の構成で実現できる。又、cosωTを推定する場合には、図7のように、クリップブロック24−4は、クリップ範囲を、「−1」〜「+1」に制限することにより、同様の作用効果を奏する。
図11は、図9の構成における他の周波数推定器24Aのブロック図である。図11において、図9で示したものと同一のものは、同一の記号で示してある。
図11において、周波数推定器24Aは、sinωTの第2の適応則である式(33)乃至式(35)を演算し、sin(ωT)を計算する。即ち、周波数推定器24Aでは、推定誤差(G[k])演算器24−7が、推定状態量z1[k],z1[k+1],z2[k],z2[k+1]を受け、式(33)を計算し、第1の推定誤差G[k]を出力する。
第1の演算ブロック24−8は、第1の推定誤差G[k]から、遅延ブロック24−3からの1サンプル前のsin(ω[k]T)を引き、式(34)の第2の推定誤差E[k]を出力する。
ゲイン乗算器24−2は、第2の推定誤差E[k]にゲインKaを乗算し、式(35)の右辺第2項を計算する。加算器24−5は、遅延ブロック24−3からの1サンプル前のsin(ω[k]T)と、ゲイン乗算器24−2の出力とを加算し、式(35)のsin(ω[k+1]T)を出力する。このsin(ω[k+1]T)は、遅延ブロック24−3で1サンプル遅延され、演算ブロック24−8、加算器24−5に入力する。
クリップブロック(飽和処理ブロック)24−4は、入力されたsinωTが、「0」より小さい場合は、「0」に、「1」より大きい場合は、「1」に制限する。
そして、ゲイン可変部24−6は、遅延ブロック24−3からのsin(ω[k]T)から、cos(ω[k]T)を計算し、式(40)に従い、ゲイン乗算部24−2のゲインKaを更新する。
周波数推定器24Aの出力sin(ω[k+1]T)は、図9のように、制御定数テーブル25に入力する。制御定数テーブル25は、図10で示したように、推定値sinωTに対応する推定ゲインL、cosωTを、引き出し、且つブロック34,42に設定する。これにより、ブロック34の式(40)の推定ゲインL1〜L5、ブロック42の式(42)の制御定数a11〜a22(=cosωT又はsinωT)が更新され、オブザーバの外乱抑圧特性を、外乱周波数に応じて、変更する。
このように、現在オブザーバで構成すると、設計が容易であり、且つ外乱抑圧機能を容易に設定できる。又、第2の適応式を用いているので、入力の桁数に差異がなく、固定小数点方式のプロセッサでも、精度良く、計算できる。更に、周波数推定器24Aが、cosωTを推定する場合にも、同様の構成で、式(36)〜式(38)を計算できる。
[位置制御系の第3の実施の形態]
前述の周波数推定では、sin(ωT)を推定した。一方、使用用途によっては、更に推定周波数範囲を拡大したいとの要望がある。例えば、ナイキスト周波数であるFs/2まで拡張したいとの要望がある。この周波数範囲の拡張方法を説明する。
図12は、本発明の第3の実施の形態のブロック図、図13は、図12のsin(ωT/2)推定の説明図、図14は、振動周波数と推定値sin(ωT/2)との関係図、図15は、図12の適応ゲインの説明図である。
図12において、図5で説明したものと同一のものは、同一の記号で示してある。周波数推定器27は、外乱周波数として、sin(ωT/2)を推定する。制御定数テーブル28は、図5と同様に、sin(ωT/2)の値に対応する制御定数を格納する。
現在オブザーバの適応則式(24)の導出で示した、z1[k+1],z2[k+1]は、あくまでも、推定値である。従って、この推定値z1[k+1],z2[k+1]を使って、0.5サンプル分戻した推定値z1[k+0.5],z2[k+0.5]を作成する。
z1[k+1],z2[k+1]は、振動周波数の回転ベクトルのsin,cos成分であるから、図13に示すように、k+1サンプル時点のz1[k+1],z2[k+1]を、0.5サンプル戻すこと、即ち、k+0.5サンプル時点の回転ベクトルz1[k+0.5],z2[k+0.5]を作成することは、回転ベクトルを、ωT/2戻せば良い。従って、z1[k+1],z2[k+1]から、下記式(45)により、0.5サンプル戻したz1[k+0.5],z2[k+0.5]を計算できる。
Figure 0005362062
この式(45)の左辺と右辺を入れ替えて、更に、z1[k+1],z2[k+1]が、単独で表されるように、変換すると、次式(46)が得られる。
Figure 0005362062
前述のz1[k+1」、z2[k+1]の式(17)に、式(46)を代入すると、式(47)が得られる。
Figure 0005362062
更に、式を整理するため、式(47)の左辺、右辺ともに、下記式(48)を掛ける。
Figure 0005362062
この時、cos,sinの行列間の掛け算では、下記式(49)が成立する。
Figure 0005362062
式(49)を利用して、式(47)の左辺、右辺に、式(48)を掛けると、式(50)が得られる。
Figure 0005362062
即ち、sinωTの式(17)と同様に、sin(ωT/2)の関係式が得られた。この式(50)を、sinωTの導出と同様に展開する。即ち、sin(ωT/2),cos(ωT/2)を、それぞれ、「s」、「c」と簡略化すると、式(50)は、式(51)に変換される。
Figure 0005362062
式(51)から、kサンプル時のz1[k]、z2[k]を、求めると、式(52)が得られる。
Figure 0005362062
式(52)の上側に、z2[k+0.5]を掛け、下側に、−z1[k+0.5]を掛けると、式(53)が得られる。この時、z2[k]に、左辺のマイナスを付与している。
Figure 0005362062
式(53)の上下の式の和をとると、式(54)が得られる。
Figure 0005362062
式(54)から、sin(ωT/2)は、下記式(55)で表される。これを適応則に利用する。
Figure 0005362062
式(55)から、デジタル制御においては、外乱周波数を直接推定するため、sin(ωT/2)を推定すればよい。
図14は、振動周波数と推定値sin(ωT/2)との関係図である。デジタル制御において、sin(ωT/2)を、振動周波数fの推定値に使用することは、デジタル制御のサンプリング周波数をFsとすると、次式(56)の周波数を推定することになる。
Figure 0005362062
このことは、図14に示したように、外乱周波数fとsin(ωT/2)とが、単調な関係を示す範囲は、0からFs/2の領域であり、ナイキスト周波数まで推定できる。又、Fs/2以上では、適応追従ができない。例えば、サンプリング周波数Fsを12KHzとすると、6KHzまで推定できる。
従って、低い周波数側の推定精度を高くして、且つ高い周波数まで、推定できる。又、ディスク装置の使用形態では、外部振動が、通常、低い周波数側で問題になることが多い。例えば、数100Hz程度の外部振動が、外部から加わることが多い。そのため、ディスク装置では、低い周波数の振動を精度よく推定できるsin(ωT/2)推定式を利用することが、都合が良い。
次に、図12のsin(ωT/2)推定器27は、次のように、sin(ωT/2)を推定して、適応制御する。
第1の適応制御は、正しく、推定できて、制御系が外乱周波数を抑圧できれば、式(55)のe[k]は、「0」になるので、式(55)の右辺第2項は、「0」となるはずである。
そこで、sin(ωT/2)推定の場合には、式(55)の右辺第2項E[k]を,次式(57)で計算する。
Figure 0005362062
次に、式(57)のE[k]に適応ゲインKを掛け、次式(58)のように、sin(ωT/2)を更新する。
Figure 0005362062
上記のようにして、z1[k+1],z2[k+1],e[k],L4,L5の5つの値を利用して、sin(ωT/2)を、適応的に推定できる。
第2の適応制御の計算方法を説明する。固定小数点方式のプロセッサを使用する場合には、桁数が限られる。上記の、z1[k+1],z2[k+1],e[k],L4,L5の5つの値を利用する場合に、z1[k+1],z2[k+1]の値と,e[k],L4,L5の値との桁が相違する。そこで、限られた桁数を有効に利用するため、以下の手順で、計算する。
sin(ωT)推定の場合には、式(55)の右辺第1項G[k]を,次式(59)で計算する。
Figure 0005362062
次に、現在の設定値であるsin(ωT/2)と、式(59)のずれE[k]を、次式(60)で計算する。
Figure 0005362062
この式(60)のE[k]に適応ゲインKを掛け、次式(61)のように、sin(ωT/2)を更新する。
Figure 0005362062
上記のようにして、z1[k+1],z1[k],z2[k+1],z[k]の4つの値を利用するだけで、sin(ωT/2)を、適応的に推定できる。
又、第1の実施の形態と同様に、これらの式において、適応ゲインは一定値として説明したが、sinωTの推定と同様に、図15に示すように、ωが高いとき,sinωT/2のω変化に対する変動は小さい。ωが小さい時、sinωT/2のω変化に対する変動は大きい。従って、現在の推定外乱周波数に応じて、異なる値をとるべきである。その適応ゲインは、可変であり,周波数が低いと大きく,周波数が高いと低くすべきである。
即ち、sinωT/2を推定する方法においても、適応ゲインKaは、下記式(62)に示すように、cosωT/2に比例した値をとる。これにより、変化幅の相違による、誤差への影響を抑制できる。
Figure 0005362062
次に、図12で示した補償器23は、オブザーバで構成され、前述の式(41)により、外乱抑圧制御量(電流)Udist(又は、Ud)を計算する。
図12の制御定数テーブル28は、図17で説明するように、sin(ωT/2)の値と、対応するL4、L5、cosωT、sinωTの値のテーブルで構成される。cosωT、sinωTの値は、式(41)のHの計算に使用する。
従って、サンプル毎に、sin(ωT/2)演算器27で計算されたsinωT/2に対応するL4、L5、cosωT,sinωTの値が、テーブル28から読み出され、補償器23にセットされる。補償器23は、セットされた制御定数と、位置誤差から、式(41)を計算し、外部抑圧制御量Udistを計算し、加算ブロック26に出力する。
このようにして、デジタル位置制御系において、外乱周波数に適応した位置制御を行う場合に、外乱周波数を精度良く推定し、外乱周波数に適応した位置制御が可能となる。
[位置制御系の第4の実施の形態]
図16は、本発明の第4の実施の形態の位置制御系のブロック図、図17は、図16の制御定数テーブルの説明図である。図16は、コントローラ21、補償器23を、一体の現在オブザーバで構成した例である。又、sinωT/2演算部27を、第1の適応制御の計算方法を適用した例である。
図16の位置制御系は、外乱周波数を検出し、外乱を適応制御により、抑圧するため、前述の式(42)、(43)、(44)で示される外乱抑圧を行う現在オブザーバである。即ち、この実施の形態は、コントローラのモデルと外乱モデルを含むオブザーバによる位置制御系の例である。図16において、図9、図12で示したものと同一のものは、同一の記号で示してある。
図16において、現在オブザーバ21,23,26の構成は、図9と同一のため、説明を省略する。この現在オブザーバに、周波数推定器27と、制御定数テーブル28とを付与する。周波数推定器27は、sin(ωT/2)の第1の適応則である式(57)、(58)を演算し、sin(ωT/2)を計算する。
即ち、周波数推定器27では、状態時点変換ブロック27−1は、式(45)に従い、z1[k+1],z2[k+1]を、z1[k+0.5],z2[k+0.5]に変換する。推定誤差(E[k])演算器27−2が、推定位置誤差e[k]、推定状態量z1[k+0.5],z2[k+0.5]、推定ゲインL4,L5を受け、式(57)を計算し、推定誤差E[k]を出力する。
ゲイン乗算器27−3は、推定誤差E[k]にゲインKを乗算し、式(58)の右辺第2項を計算する。加算器27−5は、遅延ブロック27−4からの1サンプル前のsin(ω[k]T/2)と、ゲイン乗算器27−3の出力とを加算し、式(58)のsin(ω[k+1]T/2)を出力する。このsin(ω[k+1]T/2)は、遅延ブロック27−4で1サンプル遅延され、加算器27−5に入力する。
クリップブロック(飽和処理ブロック)27−6は、入力されたsin(ωT/2)が、「0」より小さい場合は、「0」に、「1」より大きい場合は、「1」に制限する。
そして、ゲイン可変部27−7は、遅延ブロック24−4からのsin(ω[k]T/2)から、cos(ω[k]T/2)を計算し、式(62)に従い、ゲイン乗算部27−3のゲインKaを更新する。
周波数推定器27の出力sin(ω[k+1]T/2)は、制御定数テーブル28に入力する。図17に示すように、制御定数テーブル28は、推定値sinωT/2に対応する、推定ゲインL1、L2,L3,L4,L5、cosωT,sinωTの値を格納する。sinωT/2は、図14で説明したように、0〜Fs/2までを使用するため、図17のテーブルは、33個のsinωT/2の値を、0〜Fs/2の範囲に割り振る。
そして、制御定数テーブル28は、推定値sinωT/2に対応する推定ゲインL、cosωT、sinωTを、引き出し、且つブロック34,42に設定する。これにより、ブロック34の式(42)の推定ゲインL1〜L5、ブロック42の式(44)の制御定数a11〜a22(=cosωT又はsinωT)が更新され、オブザーバの外乱抑圧特性を、外乱周波数に応じて、変更する。
このように、現在オブザーバで構成すると、設計が容易であり、且つ外乱抑圧機能を容易に設定できる。
図18は、図16の周波数推定器27の他の実施の形態のブロック図である。図18において、図16で示したものと同一のものは、同一の記号で示してある。sin(ωT/2)演算部27Aに、第2の適応制御の計算方法を適用した例である。
図18において、周波数推定器27Aは、sin(ωT/2)の第2の適応則である式(59)乃至式(61)を演算し、sin(ωT/2)を計算する。
即ち、周波数推定器27Aでは、状態時点変換ブロック27−1は、式(45)に従い、z1[k+1],z2[k+1]を、z1[k+0.5],z2[k+0.5]に変換する。推定誤差(G[k])演算器27−8が、推定状態量z1[k],z1[k+0.5],z2[k],z2[k+0.5]を受け、式(59)を計算し、第1の推定誤差G[k]を出力する。
第1の演算ブロック27−9は、第1の推定誤差G[k]から、遅延ブロック27−4からの1サンプル前のsin(ω[k]T/2)を引き、式(60)の第2の推定誤差E[k]を出力する。
ゲイン乗算器27−3は、第2の推定誤差E[k]にゲインKを乗算し、式(61)の右辺第2項を計算する。加算器27−5は、遅延ブロック27−4からの1サンプル前のsin(ω[k]T/2)と、ゲイン乗算器27−3の出力とを加算し、式(61)のsin(ω[k+1]T/2)を出力する。このsin(ω[k+1]T/2)は、遅延ブロック27−4で1サンプル遅延され、演算ブロック27−9、加算器27−5に入力する。
図16と同様に、クリップブロック(飽和処理ブロック)27−6は、入力されたsin(ωT/2)が、「0」より小さい場合は、「0」に、「1」より大きい場合は、「1」に制限する。
そして、ゲイン可変部27−7は、遅延ブロック24−4からのsin(ω[k]T/2)から、cos(ω[k]T/2)を計算し、式(62)に従い、ゲイン乗算部27−3のゲインKaを更新する。
この周波数推定器27Aの出力sin(ω[k+1]T/2)は、制御定数テーブル28に入力する。制御定数テーブル28は、図17で示したものと同一であり、推定値sin(ωT/2)に対応する推定ゲインL、sinωT,cosωTを、引き出し、且つブロック34,42に設定する。これにより、ブロック34の式(42)の推定ゲインL1〜L5、ブロック42の式(44)の制御定数a11〜a22(=cosωT又はsinωT)が更新され、オブザーバの外乱抑圧特性を、外乱周波数に応じて、変更する。
このように、現在オブザーバで構成すると、設計が容易であり、且つ外乱抑圧機能を容易に設定できる。又、第2の適応式を用いているので、入力の桁数に差異がなく、固定小数点方式のプロセッサでも、精度良く、計算できる。
[位置制御系の第5の実施の形態]
図19は、本発明の第5の実施の形態の位置制御系のブロック図である。図19は、コントローラ21と、補償器23を、分離した現在オブザーバで構成した例である。又、sin(ωT)演算部24に、第1の適応制御の計算方法を適用した例である。
図19の位置制御系は、外乱周波数を検出し、外乱を適応制御により、抑圧するため、下記式(63)、(64)、(65)、(66)、(67)で示される外乱抑圧を行う現在オブザーバである。
Figure 0005362062
Figure 0005362062
Figure 0005362062
Figure 0005362062
Figure 0005362062
尚、式(67)において、a11〜a22は、式(9)、式(18)で示したsin,cosの値である。
即ち、この実施の形態は、コントローラのモデルと外乱モデルを含むオブザーバによる位置制御系の例である。図19において、図5、図9、図16で示したものと同一のものは、同一の記号で示してある。
図19において、第1の演算ブロック20は、ヘッド3(図1参照)が読み取った前述のサーボ情報を復調して得た観測位置y[k]から目標位置rを差し引き、実位置誤差er[k]を演算する。
第2の演算ブロック32は、実位置誤差er[k]からオブザーバの推定位置x[k]を差し引き、推定位置誤差e[k]を演算する。状態推定ブロック34−1は、この推定位置誤差e[k]と、内部変数である式(43)の推定ゲインL(L1,L2)を用いて、推定修正値(式(63)の右辺第2項)を、演算する。
そして、加算ブロック36−1は、この推定修正値と、遅延ブロック46−1から状態量(式(63)の右辺第1項)x[k],v[k]とを加算し、式(63)のように、推定位置x[k],推定速度v[k]を得る。尚、式(63)では、推定位置誤差e[k]を、(y[k]−x[k])で表示する。
この推定値は、第4の演算ブロック38−1で、状態フィードバックゲイン(一Fa=F1,F2)を乗算され、式(64)のように、アクチュエータ1の駆動値u[k]を得る。一方、加算ブロック36−1からの式(63)の推定値は、第5の演算ブロック42−1で、推定ゲインAa(式(66)の右辺第1項の行列)を乗じられる。
第4の演算ブロック38−1の駆動値u[k]は、第6の演算ブロック40で、推定ゲインB(式(66)の右辺第2項のu[k]に乗じる値)を乗じられる。両乗算結果は、加算ブロック44で、加算され、式(66)の次のサンプルの推定状態量x[k+1],v[k+1]を得る。
この次のサンプルの推定状態量は、前述のように、遅延ブロック46−1に入力し、状態推定ブロック34−1の推定修正値で、修正される。そして、加算ブロック36−1からの式(63)の推定値は、第5の演算ブロック48で、推定位置x[k]が取り出され、前述の第2の演算ブロック32に入力する。
同様に、外乱モデルにおいても、第2の状態推定ブロック34−2は、この推定位置誤差e[k]と、内部変数である式(63)の推定ゲインLd1(L3、L4,L5)を用いて、推定修正値(式(63)の右辺第2項)を、演算する。
そして、第2の加算ブロック36−2は、この推定修正値と、第2の遅延ブロック46−2から状態量(式(63)の右辺第1項)b[k],z1[k],z2[k]とを加算し、式(63)のように、推定バイアスb[k],推定外乱量z1[k],z2[k]を得る。
この推定値は、第6の演算ブロック38−2で、状態フィードバックゲイン(一Fd1=F3、F4,F5)を乗算され、式(65)のように、アクチュエータ1の外乱抑圧駆動値ud[k]を得る。一方、第2の加算ブロック36−2からの式(63)の推定値は、第7の演算ブロック42−2で、推定ゲインAd1(式(67)の右辺の行列)を乗じられる。
第8の演算ブロック50は、第5の演算ブロック38−2の駆動値ud[k]と、第4の演算ブロック38−1の駆動値u[k]とを加算し、アクチュエータの駆動値u[k]を出力する。
この例でも、この現在オブザーバに、周波数推定器24と、制御定数テーブル25とを付与する。周波数推定器24は、図9で説明したものである。又、制御定数テーブル25は、図10で説明したものである。
そして、制御定数テーブル25は、推定値sinωTに対応する推定ゲインL1、L2を、状態推定ブロック34−1に、推定ゲインL3,L4,L5,sinωT,cosωTを、ブロック34−2,42−2に設定する。これにより、ブロック34−1,34−2の式(63)の推定ゲインL1〜L5、ブロック42−2の式(67)の制御定数a11〜a22(=cosωT又はsinωT)が更新され、オブザーバの外乱抑圧特性を、外乱周波数に応じて、変更する。
このように、外乱モデルを分離した現在オブザーバで構成すると、外乱モデルの設計が容易であり、且つ外乱抑圧機能を容易に設定できる。
[位置制御系の第6の実施の形態]
図20は、本発明の第6の実施の形態の位置制御系のブロック図である。図20は、コントローラ21と、補償器23を、分離した現在オブザーバで構成した例である。又、sin(ωT)演算部24Aに、第2の適応制御の計算方法を適用した例である。
図20において、図19で示したものと同一のものは、同一の記号で示してある。図20の位置制御系は、外乱周波数を検出し、外乱を適応制御により、抑圧するため、前述の式(63)乃至(67)で示される外乱抑圧を行う現在オブザーバである。
即ち、この実施の形態は、図19と同様に、コントローラのモデルと外乱モデルを含むオブザーバによる位置制御系の例である。従って、オブザーバの説明は、省略する。
この例でも、この現在オブザーバに、周波数推定器24Aと、制御定数テーブル25とを付与する。周波数推定器24Aは、図11で説明したものである。又、制御定数テーブル25は、図10で説明したものである。
そして、制御定数テーブル28は、推定値sin(ωT/2)に対応する推定ゲインL1、L2を、状態推定ブロック34−1に、推定ゲインL3,L4,L5,sinωT,cosωTを、ブロック34−2,42−2に設定する。これにより、ブロック34−1,34−2の式(63)の推定ゲインL1〜L5、ブロック42−2の式(67)の制御定数a11〜a22(=cosωT又はsinωT)が更新され、オブザーバの外乱抑圧特性を、外乱周波数に応じて、変更する。
このように、外乱モデルを分離した現在オブザーバで構成すると、外乱モデルの設計が容易であり、且つ外乱抑圧機能を容易に設定できる。
[他の実施の形態]
図19、図20の説明では、周波数推定器に、sinωTを推定する推定器で説明したが、cosωTを推定する推定器や、sin(ωT/2)を推定する推定器を適用することもできる。
又、以上の説明では、補償器23に、オブザーバの構成で説明した。しかしながら、図5の補償器23にフィルタを使用する場合にも、適用できる。
更に、ヘッドの位置制御装置で、説明したが、他の位置制御装置にも適用できる。同様に、ディスク装置を磁気ディスク装置で説明したが、他のデータ記憶装置にも適用できる。
外乱の角周波数ωとし、前記サンプル周期をTとした場合に、sin(ωT),cos(ωT),sin(ωT/2)のいずれかの推定誤差を計算し、角周波数ωに比例する適応ゲインを乗算して、sin(ωT),cos(ωT),sin(ωT/2)のいずれかの値を更新し、外乱適応制御するので、デジタル制御において、外乱の周波数の推定精度を向上でき、外乱適応制御を精度よく実現できる。
1 アクチュエータ
2 スピンドルモータの回転軸
3 ヘッド
4 ディスク
5 スピンドルモータ
6 アクチュエータのVCM駆動回路
7 位置復調回路
8 スピンドルモータの駆動回路
9 バス
10 データの記録再生回路
11 ハードディスクコントローラ
12 MCUのRAM
13 MCUのROM
14 マイクロコントローラユニット(MCU)
15 ハードディスクコントローラのRAM
16 位置信号
20 位置誤差計算ブロック
21 コントローラ
22 プラント(ヘッド、アクチュエータ)
23 外乱抑圧補償器
24 sin(ωT)推定ブロック
27 sin(ωT/2)推定ブロック
25,28 テーブル(定数補正ブロック)
26 加算ブロック

Claims (14)

  1. 対象物の位置に応じて、アクチュエータにより、前記対象物を位置制御する位置制御装置において、
    目標位置と前記対象物の現在位置との位置誤差に応じて、内部制御定数を使用して、外乱適応制御を含む位置制御を、所定のサンプル周期で実行するデジタル制御ブロックと、
    外乱の角周波数ωとし、前記サンプル周期をTとした場合に、sin(ωT)、又はcos(ωT)の値に応じた前記内部制御定数を格納するテーブルとを有し、
    前記デジタル制御ブロックは、前記内部制御定数を使用して、外乱適応制御値を計算する外乱適応制御ブロックと、前記位置誤差と前記外乱適応制御ブロックが使用する内部制御定数とから、適応則に従い、前記sin(ωT)、又はcos(ωT)の推定誤差の値を計算する周波数推定ブロックとを有し、前記周波数推定ブロックが計算した前記sin(ωT)の推定誤差にcosωTに比例した適応ゲインを乗算し、又は前記周波数推定ブロックが計算した前記cos(ωT)の推定誤差にsinωTに比例した適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)の値を更新し、前記更新した値で、前記テーブルから対応する前記内部制御定数を読み出し、前記外乱適応制御ブロックが使用する内部制御定数を更新して、前記外乱適応制御を含む位置制御を行う
    位置制御装置。
  2. 前記デジタル制御ブロックは、オブザーバ制御により、前記外乱適応制御を含む位置制御を行う
    請求項1の位置制御装置。
  3. 前記デジタル制御ブロックは、前記オブザーバ制御におけるオブザーバの状態変数と、推定ゲインと、推定位置誤差とから推定誤差を計算し、前記適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)に加算して、前記sin(ωT)、又はcos(ωT)を逐次更新する
    請求項2の位置制御装置。
  4. 前記デジタル制御ブロックは、前記オブザーバ制御におけるオブザーバの現サンプルの状態変数と、次のサンプルの状態変数とから推定誤差を計算し、前記適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)に加算して、前記sin(ωT)、又はcos(ωT)を逐次更新する
    請求項2の位置制御装置。
  5. 前記デジタル制御ブロックは、前記計算した前記sin(ωT)、又はcos(ωT)の値を、所定の範囲に収めるためにクリップする
    請求項1の位置制御装置。
  6. 前記デジタル制御ブロックは、
    前記位置誤差に応じて、前記アクチュエータの制御値を演算するコントロールブロックを有し、
    前記コントロールブロックの制御値と前記外乱適応制御値とで、前記アクチュエータを駆動する
    請求項1の位置制御装置。
  7. 前記テーブルは、前記計算した前記sin(ωT)、又はcos(ωT)の値に対応した前記オブザーバ制御におけるオブザーバの状態推定ゲインを格納し、
    前記デジタル制御ブロックは、前記内部制御定数として、前記オブザーバの状態推定ゲインを、前記テーブルから読み出された状態推定ゲインで更新する
    請求項2の位置制御装置。
  8. ディスクから情報を読み取るヘッドと、
    前記ヘッドを前記ディスクのトラック横断方向に移動するアクチュエータと、
    目標位置と前記ヘッドの現在位置との位置誤差に応じて、内部制御定数を使用して、外乱適応制御を含む位置制御を、所定のサンプル周期で実行するデジタル制御ブロックと、
    外乱の角周波数ωとし、前記サンプル周期をTとした場合に、sin(ωT)、又はcos(ωT)の値に応じた前記内部制御定数を格納するテーブルとを有し、
    前記デジタル制御ブロックは、前記内部制御定数を使用して、外乱適応制御値を計算する外乱適応制御ブロックと、前記位置誤差と前記外乱適応制御ブロックが使用する内部制御定数とから、適応則に従い、前記sin(ωT)、又はcos(ωT)の推定誤差の値を計算する周波数推定ブロックとを有し、前記周波数推定ブロックが計算した前記sin(ωT)の推定誤差にcosωTに比例した適応ゲインを乗算し、又は前記周波数推定ブロックが計算した前記cos(ωT)の推定誤差にsinωTに比例した適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)の値を更新し、前記更新した値で、前記テーブルから対応する前記内部制御定数を読み出し、前記外乱適応制御ブロックが使用する内部制御定数を更新して、前記外乱適応制御を含む位置制御を行う
    ディスク装置。
  9. 前記デジタル制御ブロックは、オブザーバ制御により、前記外乱適応制御を含む位置制御を行う
    請求項8のディスク装置。
  10. 前記デジタル制御ブロックは、前記オブザーバ制御におけるオブザーバの状態変数と、推定ゲインと、推定位置誤差とから推定誤差を計算し、前記適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)に加算して、前記sin(ωT)、又はcos(ωT)を逐次更新する
    請求項9のディスク装置。
  11. 前記デジタル制御ブロックは、前記オブザーバ制御におけるオブザーバの現サンプルの状態変数と、次のサンプルの状態変数とから推定誤差を計算し、前記適応ゲインを乗算し、前記sin(ωT)、又はcos(ωT)に加算して、前記sin(ωT)、又はcos(ωT)を逐次更新する
    請求項9のディスク装置。
  12. 前記デジタル制御ブロックは、前記計算した前記sin(ωT)、又はcos(ωT)の値を、所定の範囲に収めるためにクリップする
    請求項8のディスク装置。
  13. 前記デジタル制御ブロックは、
    前記位置誤差に応じて、前記アクチュエータの制御値を演算するコントロールブロックを有し、
    前記コントロールブロックの制御値と前記外乱適応制御値とで、前記アクチュエータを駆動する
    請求項8のディスク装置。
  14. 前記テーブルは、前記計算した前記sin(ωT)、又はcos(ωT)の値に対応した前記オブザーバ制御におけるオブザーバの状態推定ゲインを格納し、
    前記デジタル制御ブロックは、前記内部制御定数として、前記オブザーバの状態推定ゲインを、前記テーブルから読み出された状態推定ゲインで更新する
    請求項9のディスク装置。
JP2012055984A 2012-03-13 2012-03-13 位置制御装置及びこれを用いたディスク装置 Expired - Fee Related JP5362062B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012055984A JP5362062B2 (ja) 2012-03-13 2012-03-13 位置制御装置及びこれを用いたディスク装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012055984A JP5362062B2 (ja) 2012-03-13 2012-03-13 位置制御装置及びこれを用いたディスク装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009513851A Division JPWO2008139505A1 (ja) 2007-04-27 2007-04-27 位置制御装置及びこれを用いたディスク装置

Publications (2)

Publication Number Publication Date
JP2012138164A JP2012138164A (ja) 2012-07-19
JP5362062B2 true JP5362062B2 (ja) 2013-12-11

Family

ID=46675447

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012055984A Expired - Fee Related JP5362062B2 (ja) 2012-03-13 2012-03-13 位置制御装置及びこれを用いたディスク装置

Country Status (1)

Country Link
JP (1) JP5362062B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4616276A (en) * 1985-07-16 1986-10-07 International Business Machines Corporation Disk file servo control system with fast reduction of repeatable head position error
KR100585166B1 (ko) * 2004-12-01 2006-06-01 삼성전자주식회사 비주기적 외란 보상 제어 장치 및 방법과 이를 이용한디스크 드라이브
JP4150032B2 (ja) * 2005-06-27 2008-09-17 富士通株式会社 ヘッド位置制御方法、ヘッド位置制御装置およびディスク装置

Also Published As

Publication number Publication date
JP2012138164A (ja) 2012-07-19

Similar Documents

Publication Publication Date Title
JP4783248B2 (ja) 外乱抑圧機能を持つ位置制御方法、位置制御装置および媒体記憶装置
JP4150032B2 (ja) ヘッド位置制御方法、ヘッド位置制御装置およびディスク装置
JP4802060B2 (ja) ヘッド位置決め制御方法、ヘッド位置決め制御装置およびディスク装置
JP4263727B2 (ja) 低周波外乱補償制御装置とそれを利用したディスクドライブ
JP4268164B2 (ja) 非周期的な外乱補償制御装置、その方法及びそれを利用したディスクドライブ
KR20030013403A (ko) 내장된 서보 디스크 드라이브에서 기입 에러 보상테이블의 압축 및 저장
JP4411428B2 (ja) ヘッド位置制御方法、ヘッド位置制御装置およびディスク装置
JP3693881B2 (ja) ディスク装置のヘッド位置制御方法及び制御装置
JP4807496B2 (ja) ハードディスクドライブのトラック探索制御方法,記録媒体,およびハードディスクドライブ
JPWO2008139505A1 (ja) 位置制御装置及びこれを用いたディスク装置
JP2008041147A (ja) ヘッド位置制御方法、ヘッド位置制御装置およびディスク装置
JPWO2008142726A1 (ja) 位置制御装置及びこれを用いたデイスク装置
JP4908586B2 (ja) 位置制御装置及びこれを用いたディスク装置
JP4907239B2 (ja) Rro算出方法、rro補償値の算出方法、及び記録媒体
KR100852644B1 (ko) 시크 제어 방법, 시크 제어 장치 및 디스크 장치
JP5362062B2 (ja) 位置制御装置及びこれを用いたディスク装置
JP2012109026A (ja) 位置制御装置及びこれを用いたデイスク装置
JPH1139814A (ja) 磁気ディスク装置
JP4976798B2 (ja) 二自由度位置制御方法、二自由度位置制御装置および媒体記憶装置
JP4294927B2 (ja) ディスク装置の位置復調方法及び回路
JP2008052794A (ja) 磁気ディスク装置
JP2010192112A (ja) ディスク装置、ヘッド位置制御装置およびヘッド位置制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130521

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130722

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130903

LAPS Cancellation because of no payment of annual fees