(57)【要約】【課題】二自由度制御を行う現在オブザーバ制御による位置制御装置において、演算による出力遅延による位置精度劣化を防止する。【解決手段】オーバーラン防止のための二自由度制御系において、二自由度制御の出力の遅延（演算遅延及び駆動アンプ、Ｄ／Ａコンバータ等のハード遅延）を考慮して、サンプル時点から遅延分進んだＴｄの推定状態を演算し、この推定状態から出力を演算する。サンプル時点から、計算中に状態変化があっても、出力遅延の影響を防止し、精度の高い位置制御が可能となり、オーバーランを防止できる。【選択図】図５
2008077777.tif 000002
【特許請求の範囲】
【請求項１】
対象物を目標位置に、アクチュエータにより位置制御する位置制御方法において、
前記対象物の目標位置と前記対象物の現在位置とから位置誤差を演算するステップと、
前記位置誤差と現在オブザーバの現サンプルの推定位置との推定位置誤差により、現サンプルの推定位置を補正するステップと、
前記補正された推定位置と現サンプルの目標軌道との差を演算し、且つ１サンプル前の出力値と前記差とから前記サンプル時点から所定時間進んだ推定位置を演算するステップと、
前記進んだ推定位置から前記アクチュエータへの出力値を演算するステップと、
前記補正された推定位置と、前記現サンプルの出力値と、前記１サンプル前の出力値とから次の出力値演算のための推定位置を演算するステップとを有する
ことを特徴とする位置制御方法。
【請求項２】
前記次の出力値演算のための推定位置と（現サンプル＋０．５サンプル）時刻の目標軌道との差を演算し、且つ０．５サンプル前の出力値と前記現サンプルの出力値と前記差とから前記サンプル時点から０．５サンプル進んだ推定位置を演算するステップと、
前記進んだ推定位置から前記アクチュエータへの出力値を演算するステップと、
前記補正された推定位置と、前記現サンプルの出力値と、前記０．５サンプル前の出力値と、前記計算された出力値とから次のサンプルの推定位置を演算するステップとを更に有する
ことを特徴とする請求項１の位置制御方法。
【請求項３】
前記進んだ推定位置を演算するステップは、前記次の出力値演算のための推定位置を、前記推定位置誤差で補正するステップを有する
ことを特徴とする請求項２の位置制御方法。
【請求項４】
記憶媒体のデータを少なくとも読み取るヘッドと、
前記記憶媒体の所定位置に、前記ヘッドを位置決めするアクチュエータと、
前記ヘッドの目標位置と前記ヘッドから得た現在位置とから位置誤差を演算し、現在オブザーバ制御により前記アクチュエータを駆動する出力値を演算する制御ユニットとを有し、
前記制御ユニットは、前記位置誤差と前記現在オブザーバの現サンプルの推定位置との推定位置誤差により、現サンプルの推定位置を補正し、前記補正された推定位置と現サンプルの目標軌道との差を演算し、且つ１サンプル前の出力値と前記差とから前記サンプル時点から所定時間進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、且つ前記補正された推定位置と、前記現サンプルの出力値と、前記１サンプル前の出力値とから次の出力値演算のための推定位置を演算する
ことを特徴とする媒体記憶装置。
【請求項５】
前記制御ユニットは、
前記次の出力値演算のための推定位置と（現サンプル＋０．５サンプル）時刻の目標軌道との差を演算し、且つ０．５サンプル前の出力値と前記現サンプルの出力値と前記差とから前記サンプル時点から０．５サンプル進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、前記補正された推定位置と、前記現サンプルの出力値と、前記０．５サンプル前の出力値と、前記計算された出力値とから次のサンプルの推定位置を演算する
ことを特徴とする請求項４の媒体記憶装置。
【請求項６】
前記制御ユニットは、前記進んだ推定位置を演算するため、前記次の出力値演算のための推定位置を、前記推定位置誤差で補正する
ことを特徴とする請求項５の媒体記憶装置。
【請求項７】
前記制御ユニットは、前記目標位置から各サンプル時点と、このサンプル時点から０．５サンプル進んだ時点との目標軌道を生成する
ことを特徴とする請求項６の媒体記憶装置。
【請求項８】
対象物を目標位置に、アクチュエータにより位置制御する位置制御装置において、
前記対象物の目標位置と前記対象物の現在位置とから位置誤差を演算するブロックと、
前記位置誤差と現サンプルの推定位置との推定位置誤差により、現サンプルの推定位置を補正し、前記補正された推定位置と現サンプルの目標軌道との差を演算し、且つ１サンプル前の出力値と前記差とから前記サンプル時点から所定時間進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、且つ前記補正された推定位置と、前記現サンプルの出力値と、前記１サンプル前の出力値とから次の出力値演算のための推定位置を演算する現在オブザーバとを有する
ことを特徴とする位置制御装置。
【請求項９】
前記現在オブザーバは、
更に、前記次の出力値演算のための推定位置と（現サンプル＋０．５サンプル）時刻の目標軌道との差を演算し、且つ０．５サンプル前の出力値と前記現サンプルの出力値と前記差とから前記サンプル時点から０．５サンプル進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、前記補正された推定位置と、前記現サンプルの出力値と、前記０．５サンプル前の出力値と、前記計算された出力値とから次のサンプルの推定位置を演算する
ことを特徴とする請求項８の位置制御装置。
【請求項１０】
前記目標位置から各サンプル時点の目標軌道を生成する目標軌道生成ブロックを更に有する
ことを特徴とする請求項８の位置制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フィードバックとフィードフォワード併用した二自由度位置制御方法、二自由度位置制御装置及び媒体記憶装置に関し、特に、オブザーバ制御を用いて、二自由度制御するための２自由度位置制御方法、２自由度位置制御装置及び媒体記憶装置に関する。
【背景技術】
【０００２】
対象物を目標位置に位置制御する装置は、広く利用されている。例えば、磁気ディスク装置や光ディスク装置等のディスク装置の位置決め制御の１つである、ヘッドを目標トラックへ移動させるシーク制御に利用されている。
【０００３】
このシーク制御として、二自由度制御（Two Degree of Freedom Control）を用いる方法がある。この二自由度制御は、フィードバック・ループを構成しながら、目標位置を、フィルタを通して、与える。即ち、目標位置から観測位置までの伝達関数を、ローパスフィルタの形状にする。これにより、オーバーシュート（オーバーラン）を効果的に抑圧する方法である。
【０００４】
ディスク装置等で、一般的に利用されているオブザーバ制御系においても，二自由度制御系を構成することが可能である。この際には、制御系は、フィードバック極と同じ極を持つ２次ローパスフィルタ（以下，LPFと略す)の形になる。図１２は、従来の２自由度制御系の構成図である。
【０００５】
図１２に示すように、目標軌道生成部１００は、目標位置ｒから目標軌道ｒ（ｎ）を生成する。目標軌道ｒ（ｎ）は、サンプル毎に、サンプル間で移動する目標位置を示す。一方、位置誤差演算部１０２は、目標位置ｒとプラント１０６から観測した現在位置ｙとの誤差ｙ［ｎ］を演算する。コントローラ１０４は、目標軌道ｒ（ｎ）と位置誤差ｙ［ｎ］を受け、二自由度オブザーバの演算を行い、プラント１０６の駆動指令値を計算し、プラント１０６を駆動する。
【０００６】
このコントローラ１０４に使用されるオブザーバとして、図１３及び図１４に示す二自由度制御オブザーバが提案されている（例えば、非特許文献１）。図１３に示すように、コントローラ１０４にオブザーバ（エステメータ）１０４−１を使用する。このエステメータ１０４−１は、プラント１０６の現在位置ｙと、プラント１０６への出力とからの出力ｕ［ｎ］とを演算し、ゲイン乗算ブロック１０４−２で、開ループゲインＫを乗じて、フィードバックする。
【０００７】
一方、目標軌道ｒ［ｎ］に、係数Ｎを乗算ブロック１０４−４で乗じて、加算ブロック１０４−３に出力し、ゲイン乗算ブロック１０４−２の出力と加算して、プラント１０６への出力ｕ［ｎ］を計算する。
【０００８】
この２自由度制御のオブザーバを簡略化すると、図１４となり、次式（１）、（２）、（３）で表現される。
【０００９】
【数１】
2008077777.tif 000003
【００１０】
【数２】
2008077777.tif 000004
【００１１】
【数３】
2008077777.tif 000005
即ち、現サンプルｎでの観測位置ｙ（ｎ）と，前サンプルで推定した現サンプルの予測位置Ｃ・Ｘｂ（ｎ）との差分を、演算ブロック２０２で演算し，推定位置誤差ｅｒ［ｎ］を生成する。乗算ブロック２０４で、この推定位置誤差ｅｒ［ｎ］に，推定ゲインＬをかけて、補正値を作る。
【００１２】
加算ブロック２０６により、この補正値と，予測位置，予測速度などＸｂ［ｎ］と加算する。これにより，式（１）の現サンプルでの推定位置・推定速度などＸｈ（ｎ）を生成する。通常の状態フィードバックならば，この推定状態Ｘｈ（ｎ）の推定位置にゲインをかけ，推定速度にゲインをかけて，両者の和をとり，状態フィードバック電流を生成する。
【００１３】
前述の二自由度制御では、推定速度にゲインをかけた値を利用するのは同じであるが、推定位置Ｘｈ（ｎ）と目標位置軌道ｒ（ｎ）との差分値を加算ブロック２１０で演算し、乗算ブロック２１２で、それにフィードバックゲインＦをかけた値を、状態フィードバックに利用する。即ち、（２）式を演算する。
【００１４】
一方、次のサンプル（ｎ＋１）の推定状態Ｘｂ（ｎ＋１）を、現サンプルの推定状態Ｘｈ（ｎ）と出力値ｕ（ｎ）とから乗算ブロック２１４，２１６、加算ブロック２１８により、（３）式のように、計算する。
【００１５】
ここで、Ａ，Ｂ，Ｃ，Ｃ＾Ｔ，Ｌ，Ｆは、位置ｘ、速度ｖ、バイアス値ｂ、外乱値ｄ１，ｄ２に対する行列である。又、Ａ，Ｂ，Ｌは、状態推定ゲイン、Ｆは、フィードバックゲインであり、Ｃ，Ｃ＾Ｔ（Ｃの転置）は、下記式（４）、式（５）で示される。
【００１６】
【数４】
2008077777.tif 000006
【００１７】
【数５】
2008077777.tif 000007
この式（１）、式（２）、式（３）及び図１４で示される現在オブザーバは、通常の現在オブザーバに、目標軌道ｒ（ｎ）に、式（５）のＣ＾Ｔを乗じて、加算するだけで、二自由度制御を実現できる。
【非特許文献１】「Digital Control of Dynamic Systems」（著者  Gene F. Franklin 他２名、発行元  ADDISON-WESLEY, 発行年１９９８年）
【発明の開示】
【発明が解決しようとする課題】
【００１８】
前述の従来の二自由度制御の提案は、図１５に示すように、１サンプルで、駆動電流を１回変化する、所謂、シングルレート制御のものであった。即ち、図１５に示すように、現サンプルｎでの位置を観測し、１回二自由度制御演算を行い、駆動電流ｕ（ｎ）を出力するものである。
【００１９】
しかしながら、デジタル制御では、マイクロコントローラで計算処理するため、出力遅延時間が生じる。近年の高速移動及び高精度の位置決めの要請に伴い、従来の１サンプルで、１回状態推定し、駆動電流を変化する方法では、制御の遅延が顕著となってきた。
【００２０】
例えば、磁気ディスク装置では、ディスク１面に数万トラックという高密度に設定され、しかも移動速度も高速化が要求されているため、１サンプルで、１回状態推定し、駆動電流を１回変化しても、計算中に状態変化が大きくなり、出力遅延により、精度の高い位置制御が困難となり、オーバーランを生じやすくなっている。
【００２１】
従って、本発明の目的は、二自由度制御の出力遅延を防止するための二自由度位置制御方法、二自由度位置制御装置及び媒体記憶装置を提供することにある。
【００２２】
又、本発明の他の目的は、二自由度制御しても、高精度の位置制御を実現するための二自由度位置制御方法、二自由度位置制御装置及び媒体記憶装置を提供することにある。
【００２３】
更に、本発明の他の目的は、１サンプル中に複数回出力変化するための二自由度位置制御方法、二自由度位置制御装置及び媒体記憶装置を提供することにある。
【００２４】
更に、本発明の他の目的は、計算処理時間を短縮して、位相余裕の減少や応答劣化を防止するための二自由度位置制御方法、二自由度位置制御装置及び媒体記憶装置を提供することにある。
【課題を解決するための手段】
【００２５】
この目的の達成のため、本発明の対象物を目標位置に、アクチュエータにより位置制御する位置制御方法は、前記対象物の目標位置と前記対象物の現在位置とから位置誤差を演算するステップと、前記位置誤差と現在オブザーバの現サンプルの推定位置との推定位置誤差により、現サンプルの推定位置を補正するステップと、前記補正された推定位置と現サンプルの目標軌道との差を演算し、且つ１サンプル前の出力値と前記差とから前記サンプル時点から所定時間進んだ推定位置を演算するステップと、前記進んだ推定位置から前記アクチュエータへの出力値を演算するステップと、前記補正された推定位置と、前記現サンプルの出力値と、前記１サンプル前の出力値とから次の出力値演算のための推定位置を演算するステップとを有する。
【００２６】
又、本発明の媒体記憶装置は、ディスク記憶媒体のデータを少なくとも読み取るヘッドと、前記ディスク記憶媒体の所定位置に、前記ヘッドを位置決めするアクチュエータと、前記ヘッドの目標位置と前記ヘッドから得た現在位置とから位置誤差を演算し、現在オブザーバ制御により前記アクチュエータを駆動する出力値を演算する制御ユニットとを有し、前記制御ユニットは、前記位置誤差と前記現在オブザーバの現サンプルの推定位置との推定位置誤差により、現サンプルの推定位置を補正し、前記補正された推定位置と現サンプルの目標軌道との差を演算し、且つ１サンプル前の出力値と前記差とから前記サンプル時点から所定時間進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、且つ前記補正された推定位置と、前記現サンプルの出力値と、前記１サンプル前の出力値とから次の出力値演算のための推定位置を演算する。
【００２７】
又、本発明の位置制御装置は、対象物を目標位置に、アクチュエータにより位置制御する位置制御装置において、前記対象物の目標位置と前記対象物の現在位置とから位置誤差を演算するブロックと、前記位置誤差と現サンプルの推定位置との推定位置誤差により、現サンプルの推定位置を補正し、前記補正された推定位置と現サンプルの目標軌道との差を演算し、且つ１サンプル前の出力値と前記差とから前記サンプル時点から所定時間進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、且つ前記補正された推定位置と、前記現サンプルの出力値と、前記１サンプル前の出力値とから次の出力値演算のための推定位置を演算する現在オブザーバとを有する。
【００２８】
更に、本発明では、好ましくは、前記次の出力値演算のための推定位置と（現サンプル＋０．５サンプル）時刻の目標軌道との差を演算し、且つ０．５サンプル前の出力値と前記現サンプルの出力値と前記差とから前記サンプル時点から０．５サンプル進んだ推定位置を演算するステップと、前記進んだ推定位置から前記アクチュエータへの出力値を演算するステップと、前記補正された推定位置と、前記現サンプルの出力値と、前記０．５サンプル前の出力値と、前記計算された出力値とから次のサンプルの推定位置を演算するステップとを更に有する。
【００２９】
更に、本発明では、好ましくは、前記進んだ推定位置を演算するステップは、前記次の出力値演算のための推定位置を、前記推定位置誤差で補正するステップを有する。
【００３０】
更に、本発明では、好ましくは、前記目標位置から各サンプル時点の目標軌道を生成するステップを更に有する。
【００３１】
更に、本発明では、好ましくは、前記目標位置から各サンプル時点と、このサンプル時点から０．５サンプル進んだ時点との目標軌道を生成するステップを更に有する。
【００３２】
更に、本発明では、好ましくは、前記位置誤差を演算するステップは、記憶媒体のデータを少なくとも読み取るヘッドの出力から得た現在位置と、前記アクチュエータを駆動して前記ヘッドを前記記憶媒体の所定位置に移動するための目標位置との位置誤差を演算するステップからなる。
【発明の効果】
【００３３】
オーバーラン防止のための二自由度制御系において、二自由度制御の出力の遅延（演算遅延及び駆動アンプ、Ｄ／Ａコンバータ等のハード遅延）を考慮して、サンプル時点から遅延分進んだＴｄの推定状態を演算し、この推定状態から出力を演算するため、サンプル時点から、計算中に状態変化があっても、出力遅延の影響を防止し、精度の高い位置制御が可能となり、オーバーランを防止できる。
【００３４】
又、同一のサンプル時刻で、二自由度制御項を計算しているため、計算順序が複雑となることを防止でき、高速に演算できる。更に、状態推定順序が守ることができ、系全体の安定性を維持することができる。更に、電流波形が滑らかなとなり、媒体記憶装置のシーク時間短縮、オーバーラン防止に寄与する。
【発明を実施するための最良の形態】
【００３５】
以下、本発明の実施の形態を、媒体記憶装置、二自由度位置制御系の第１の実施の形態、第２の実施の形態、第３の実施の形態、他の実施の形態の順で説明するが、本発明は、この実施の形態に限られない。
【００３６】
（媒体記憶装置）
図１は、本発明の一実施の形態の媒体記憶装置の構成図、図２は、図１の磁気ディスクの位置信号の配置図、図３は、図１及び図２の磁気ディスクの位置信号の構成図、図４は、シーク制御の制御遷移図である。
【００３７】
図１は、媒体記憶装置として、磁気ディスク装置を示す。図１に示すように、磁気記憶媒体である磁気ディスク４が、スピンドルモータ５の回転軸２に設けられている。スピンドルモータ５は、磁気ディスク４を回転する。アクチュエータ（ＶＣＭ）１は、先端に磁気ヘッド３を備え、磁気ヘッド３を磁気ディスク４の半径方向に移動する。
【００３８】
アクチュエータ１は、回転軸を中心に回転するボイスコイルモータ（ＶＣＭ）で構成される。図では、磁気ディスク装置に、２枚の磁気ディスク４が搭載され、４つの磁気ヘッド３が、同一のアクチュエータ１で同時に駆動される。
磁気ヘッド３は、リード素子と、ライト素子とからなる。磁気ヘッド３は、スライダに、磁気抵抗（ＭＲ）素子を含むリード素子を積層し、その上にライトコイルを含むライト素子を積層して、構成される。
【００３９】
位置検出回路７は、磁気ヘッド３が読み取った位置信号（アナログ信号）をデジタル信号に変換する。リード／ライト（Ｒ／Ｗ）回路１０は、磁気ヘッド３の読み取り及び書込みを制御する。スピンドルモータ（ＳＰＭ）駆動回路８は、スピンドルモータ５を駆動する。ボイスコイルモータ（ＶＣＭ）駆動回路６は、ボイスコイルモータ（ＶＣＭ）１に駆動電流を供給し、ＶＣＭ１を駆動する。
【００４０】
マイクロコントローラ（ＭＣＵ）１４は、位置検出回路７からのデジタル位置信号から現在位置を検出（復調）し、検出した現在位置と目標位置との誤差に従い、ＶＣＭ駆動指令値を演算する。即ち、位置復調と図５以下で説明する外乱抑圧を含むサーボ制御（現在オブザーバ制御）を行う。リードオンリーメモリ（ＲＯＭ）１３は、ＭＣＵ１４の制御プログラム等を格納する。ランダムアクセスメモリ（ＲＡＭ）１２は、ＭＣＵ１４の処理のためのデータ等を格納する。
【００４１】
ハードディスクコントローラ（ＨＤＣ）１１は、サーボ信号のセクタ番号を基準にして，１周内の位置を判断し，データを記録・再生する。バッファ用ランダムアクセスメモリ（ＲＡＭ）１５は、リードデータやライトデータを一時格納する。ＨＤＣ１１は、ＵＳＢ(Universal Serial Bus)，ＡＴＡやＳＣＳＩ(Small Computer System Interface) 等のインターフェイスＩＦで、ホストと通信する。バス９は、これらを接続する。
【００４２】
図２に示すように、磁気ディスク４には、外周から内周に渡り、各トラックにサーボ信号（位置信号）１６が、円周方向に等間隔に配置される。尚、各トラックは、複数のセクタで構成され、図２の実線は、サーボ信号１６の記録位置を示す。図３に示すように、位置信号は，サーボマークＳｅｒｖｏ  Ｍａｒｋと、トラック番号Ｇｒａｙ  Ｃｏｄｅと、インデックスＩｎｄｅｘと、オフセット情報（サーボバースト）ＰｏｓＡ，ＰｏｓＢ，ＰｏｓＣ，ＰｏｓＤとからなる。尚、図３の点線は、トラックセンターを示す。
【００４３】
図３の位置信号をヘッド３で読み取り、トラック番号Ｇｒａｙ  Ｃｏｄｅとオフセット情報ＰｏｓＡ，ＰｏｓＢ，ＰｏｓＣ，ＰｏｓＤを使い，磁気ヘッドの半径方向の位置を検出する。さらに、インデックス信号Ｉｎｄｅｘを元にして，磁気ヘッドの円周方向の位置を把握する。
【００４４】
例えば，インデックス信号を検出したときのセクタ番号を０番に設定し、サーボ信号を検出する毎に、カウントアップして、トラックの各セクタのセクタ番号を得る。このサーボ信号のセクタ番号は，データの記録再生を行うときの基準となる。尚、インデックス信号は、１周に１つである、又、インデックス信号の代わりに、セクタ番号を設けることもできる。
【００４５】
図１のＭＣＵ１４は、位置検出回路７を通じて、アクチュエータ１の位置を確認して，サーボ演算し、適切な電流をＶＣＭ１に供給する。即ち、図４に示すように、シーク制御は、コアース制御、整定制御及びフォローイング制御と遷移することで，目標位置まで移動させることができる。いずれも、ヘッドの現在位置を検出する必要がある。
【００４６】
このような，位置を確認するためには，前述の図２のように、磁気ディスク上にサーボ信号を事前に記録しておく。即ち、図３に示したように、サーボ信号の開始位置を示すサーボマーク，トラック番号を表すグレイコード，インデックス信号，オフセットを示すＰｏｓＡ〜ＰｏｓＤといった信号が記録されている。この信号を磁気ヘッドで読み出し、このサーボ信号を、位置検出回路７が、デジタル値に変換する。
【００４７】
（二自由度位置制御系の第１の実施の形態）
図５は、本発明の位置制御系の第１の実施の形態のブロック図であり、図１のＭＣＵ１４が実行する外乱を抑圧する位置決め制御系のブロック図である。図６は、図５の変形例のブロック図、図７は、図５及び図６の制御シーケンスの説明図である。
【００４８】
図５は、図１のＭＣＵ４が実行する現在オブザーバを使用した二自由度位置制御系を示す。先ず、現在オブザーバを説明する。磁気ディスク装置のアクチュエータは、回転型である。しかし、次式（６）の形の直進型アクチュエータの状態方程式に変換して表現できる。尚、ｘは位置（ｍ）、ｖは速度（ｍ／ｓ），ｕは電流（Ａｍｐｅｒｅ）、Ｂｌは力定数（Ｎ／ｍ）、ｍは等価質量（ｋｇ）、ｕは出力、ｓはラプラス演算子である。
【００４９】
【数６】
2008077777.tif 000008
サンプリング周期をＴ（ｓ）、電流の最大値をＩｍａｘ（Ａｍｐｅｒｅ），トラック幅をＬｐ（ｍ／ｔｒａｃｋ）とおき、位置の単位をｔｒａｃｋ、速度の単位をｔｒａｃｋ／ｓａｍｐｌｅ、電流の単位を、Ｉｍａｘを「１」とする変換を行い、（６）式を、デジタルの状態方程式で表現すると、次式（７）を得る。
【００５０】
【数７】
2008077777.tif 000009
一方、定常バイアスを推定するため、定常バイアスを一定とした次式（８）を仮定する。尚、ｓはラプラス演算子である。
【００５１】
【数８】
2008077777.tif 000010
これをデジタル空間に変換すると、次式（９）を得る
【００５２】
【数９】
2008077777.tif 000011
又、外乱モデルとして、次式（１０）の２次式の特性を設定する。
【００５３】
【数１０】
2008077777.tif 000012
式（１０）の外乱モデルのアナログの状態方程式は、次式（１１）で表現される。
【００５４】
【数１１】
2008077777.tif 000013
この式（１１）をデジタル空間に変換すると、次式（１２）を得る。
【００５５】
【数１２】
2008077777.tif 000014
この式（７）、式（９）、式（１２）をまとめて、拡大モデルを構成すると、次式（１３）が得られる。ここでは、式（９）の定常バイアス、式（１２）の２次式で表現された外乱を２つ含めている。
【００５６】
【数１３】
2008077777.tif 000015
式（１３）のアクチュエータのモデルと１つ又は複数の外乱モデルを含む拡大モデルを、簡単化して、次式（１４）で表す。
【００５７】
【数１４】
2008077777.tif 000016
式（１４）は、式（１３）の行列を、Ｘ（ｎ＋１），Ｘ（ｎ）、Ａ，Ｂ、Ｃで表して、簡単化したものである。式（１４）から予測オブザーバは、次式（１５）で表される。
【００５８】
【数１５】
2008077777.tif 000017
この式は、アナログ制御のオブザーバの式をそのままデジタルの式に直したものであり、Ｌは、状態推定ゲインであり、位置、速度、バイアス、外乱の４つ（式（１３）に対応すると、外乱が２つのため、５つ）の状態推定ゲインからなる。又、Ｆは、フィードバックゲインであり、同様に、５つのフィードバックゲインからなる。
【００５９】
この式では、観測位置ｙ（ｎ）が、現サンプルの電流出力ｕ（ｎ）に反映されない。即ち、予測オブザーバの形式であるため、応答が１サンプル遅延する。１サンプルの遅延を補うため、一般には、現在オブザーバが利用される。現在オブザーバは、次式（１６）で表現される。但し、ｙ（ｎ）は、現サンプルでの観測位置である。
【００６０】
【数１６】
2008077777.tif 000018
このように、１サンプルで、１回の演算を行い、１回駆動電流を変化するための現在オブザーバを構成する。次に、この現在オブザーバから、出力遅延を考慮した現在オブザーバの構成を求める。図７に示すように、サンプル時刻ｎからＴｄだけ遅延した（進んだ）時間での状態変数Ｘは、式（１５）と同様に、求めると、次の式（１７）で表現できる。
【００６１】
【数１７】
2008077777.tif 000019
式（１７）を、式（７）と同様に、アクチュエータのモデルで表すと、式（１８）で表現できる。尚、式（１８）において、Ｔｄは、時間単位のため、サンプル数ｎに変換するため、サンプリング周期Ｔで、Ｔｄを割り、サンプル数単位に変換している。
【００６２】
【数１８】
2008077777.tif 000020
又、定常バイアスｂは、常に一定であるため、次式（１９）で表される。
【００６３】
【数１９】
2008077777.tif 000021
他の外乱モデルも、式（１２）に従い、式（１７）、式（１８）と同様に変換できる。変換は、ｚ変換を用いる。前述の現在オブザーバの式（１６）と、上記式を合わせれば、次式（２０）を構成できる。
【００６４】
【数２０】
2008077777.tif 000022
式（２０）において、Ｘｈ（ｎ）は、現サンプルｎでの推定状態、Ｘｈ（ｎ＋Ｔｄ／Ｔ）は、現サンプルｎからＴｄだけ進んだ時の推定状態である。
【００６５】
式（２０）は、現サンプルｎでの推定状態Ｘｈ（ｎ）を求め、次に、遅延を考慮した時間Ｔｄだけ進んだ状態Ｘｈ（ｎ＋Ｔｄ／Ｔ）を、現サンプルｎでの推定状態Ｘｈ（ｎ）と前サンプルの出力値ｕ（ｎ−１）から計算する。
【００６６】
ここで、一般に、次のサンプルの状態を推定するには、式（３）のように、現サンプルの出力ｕ（ｎ）を使用するが、この例では、シングルレート制御のため、１サンプルで、１回出力するから、サンプル時点では、ｕ（ｎ）が計算されていない。このため、既に計算された前サンプルの出力ｕ（ｎ−１）を使用して、時間Ｔｄだけ進んだ状態Ｘｈ（ｎ＋Ｔｄ／Ｔ）を計算する。そして、計算された時間Ｔｄだけ進んだ状態Ｘｈ（ｎ＋Ｔｄ／Ｔ）から、現サンプルｎでの出力ｕ（ｎ）を計算する。
【００６７】
次のサンプルの推定状態Ｘｂ（ｎ＋１）は、式（２０）では、式（１６）と異なり、ｕ（ｎ）とｕ（ｎ−１）とを使用する。ここで、式（２０）の推定状態Ｘｂ（ｎ＋１）の位置ｘ（ｎ＋１），速度ｖ（ｎ＋１）は、下記式（２１）で表される。
【００６８】
【数２１】
2008077777.tif 000023
この式（２１）のｕ（ｎ）の係数が、式（２０）のＢ１であり、ｕ（ｎ−１）の係数が、式（２０）のＢ２である。
【００６９】
式（２０）に二自由度制御のフィードフォワードを付与すると、式（２２）が得られる。
【００７０】
【数２２】
2008077777.tif 000024
即ち、式（２０）に比し、Ｘｈ（ｎ＋Ｔｄ／Ｔ）の計算に、フィードフォワード項である（Ｃ＾Ｔ・ｒ（ｎ））を加えている。
【００７１】
この場合に、従来の二自由度制御の式（２）に従うと、出力ｕ（ｎ）の計算式に、直接フィードフォワード項を加える。しかしながら、このようにすると、サンプル時点が異なるＸｈ（ｎ＋Ｔｄ／Ｔ）から（Ｃ＾Ｔ・ｒ（ｎ））を引くことになり、計算順序が複雑となり、高速に演算することが難しい。又、状態推定順序が変化し、系全体の安定性を維持するのが困難となるおそれがある。
【００７２】
このため、サンプル時点が同じであるＸｈ（ｎ）に対し、フィードフォワード項である（Ｃ＾Ｔ・ｒ（ｎ））を加えて、進んだ状態Ｘｈ（ｎ＋Ｔｄ／Ｔ）を計算する。
【００７３】
図５は、式（２２）をブロック化したブロック図である。図５に示すように、現サンプルｎでの観測位置（位置誤差）ｙ（ｎ）を取り込み，前サンプルで推定した現サンプルの予測位置Ｃ・Ｘｂ（ｎ）と観測位置ｙ（ｎ）の差分を、演算ブロック２２で演算し，推定位置誤差ｅｒ［ｎ］を生成する。乗算ブロック２４で、この推定位置誤差ｅｒ［ｎ］に，推定ゲインＬをかけて、補正値を作る。
【００７４】
加算ブロック２６により、この補正値と，予測位置，予測速度などの現サンプルでの推定状態Ｘｂ［ｎ］と加算する。これにより，式（２２）の現サンプルでの推定位置・推定速度など推定状態Ｘｈ（ｎ）を生成する。
【００７５】
そして二自由度制御では、推定状態（位置）Ｘｈ（ｎ）と目標位置軌道ｒ（ｎ）との差分値を加算ブロック３０で演算し、乗算ブロック３２で、それに係数行列Ａｄをかけた値を演算する。一方、出力ｕ（ｎ−１）に、乗算ブロック３６で、係数行列Ｂｄを乗じて、この結果と、乗算ブロック３２の結果を加算ブロック３８で加算し、Ｔｄだけ進んだ状態Ｘｈ（ｎ＋Ｔｄ／Ｔ）を演算する。即ち、（２２）式の２番目の式を演算する。
【００７６】
更に、乗算ブロック４０で、状態Ｘｈ（ｎ＋Ｔｄ／Ｔ）にフィードバックゲインＦを乗じて、式（２２）の３番目の式の出力値ｕ（ｎ）を得る。一方、次のサンプル（ｎ＋１）の推定状態Ｘｂ（ｎ＋１）を、現サンプルの推定状態Ｘｈ（ｎ）と、出力値ｕ（ｎ）と、遅延ブロック３４で遅延された前サンプルの出力値ｕ（ｎ−１）から乗算ブロック４２，４４，４６、加算ブロック４８により、（２２）式の４番目の式のように、計算する。
【００７７】
尚、遅延ブロック５０は、次のサンプル（ｎ＋１）の推定状態Ｘｂ（ｎ＋１）を遅延し、乗算ブロック２０は、遅延ブロック５０の出力に、Ｃを乗じて、現サンプルの推定位置ｘ（ｎ）を計算する。
【００７８】
このように、オーバーラン防止のための二自由度制御系において、二自由度制御の出力の遅延（演算遅延及び駆動アンプ、Ｄ／Ａコンバータ等のハード遅延）を考慮して、サンプル時点から遅延分進んだＴｄの推定状態を演算し、この推定状態から出力を演算するため、サンプル時点から、計算中に状態変化があっても、出力遅延の影響を防止し、精度の高い位置制御が可能となり、オーバーランを防止できる。
【００７９】
又、同一のサンプル時刻で、二自由度制御項を計算しているため、計算順序が複雑となることを防止でき、高速に演算できる。更に、状態推定順序が守ることができ、系全体の安定性を維持することができる。
【００８０】
図６は、図５の変形例のブロック図である。図６の構成は、式（２２）を簡単化し、次式（２３）を演算する現在オブザーバである。
【００８１】
【数２３】
2008077777.tif 000025
即ち、式（２３）は、式（２２）の第２式を、第３式に代入して、得たものである。
【００８２】
図６において、図５と同一のものは、同一の記号で示してあり、図５の３つの乗算ブロック３２，３６，４０を、２つの乗算ブロック５２，５４に纏めたものである。このように構成すると、式の簡素化が図れ、演算時間の短縮に有効である。
【００８３】
（二自由度位置制御系の第２の実施の形態）
図８は、本発明の二自由度位置制御系の第２の実施の形態のブロック図、図９は、その動作シーケンス図である。図８及び図９は、２倍のマルチレート制御を用いた二自由制御系の構成を示す。
【００８４】
マルチレート制御は、図８及び図９に示すように、１サンプルで、２回又は３回、電流を変化させるものである。２回変化するものを２倍のマルチレート構成、３回変化するものを３倍のマルチレート構成という。
【００８５】
図８の２倍のマルチレート構成に示すように、目標軌道生成部１１０は、目標位置ｒからサンプル毎に、ｎサンプルでの目標軌道ｒ（ｎ）と、（ｎ＋０．５）サンプルでの目標軌道ｒ（ｎ＋０．５）を生成し、コントローラ１１４に送る。一方、位置誤差演算部１１２は、目標位置ｒとプラント１０６から観測した現在位置ｙとの位置誤差（観測位置という）ｙ（ｎ）を演算する。
【００８６】
コントローラ１１４は、ｎサンプルでの目標軌道ｒ（ｎ）と位置誤差ｙ（ｎ）から、二自由度オブザーバの演算を行い、プラント１０６の駆動指令値ｕ（ｎ）を計算し、プラント１０６を駆動する。又、（ｎ＋０．５）サンプルでの目標軌道ｒ（ｎ＋０．５）と位置誤差ｙ［ｎ］から、二自由度オブザーバの演算を行い、プラント１０６の駆動指令値ｕ（ｎ＋０．５）を計算し、プラント１０６を駆動する。
【００８７】
図９に示すように、このマルチレート制御には、状態推定をシングルレートで行うシングルレート状態推定と、状態推定をマルチレートで行うマルチレート状態推定とがある。いずれも、１サンプルで、電流を、ｕ（ｎ），ｕ（ｎ＋０．５）と２回演算し、変化する。
【００８８】
先ず、シングルレート状態推定でのマルチレート制御を説明する。マルチレート制御では、１サンプルで、電流出力値をｕ（ｎ），ｕ（ｎ＋０．５）と出力する。そのため、基本的には、式（２２）を２回演算する。即ち、下記式（２４）、式（２５）を実行する。
【００８９】
【数２４】
2008077777.tif 000026
【００９０】
【数２５】
2008077777.tif 000027
即ち、先ず、出力ｕ（ｎ）と、次の状態Ｘｂ（ｎ＋０．５）を演算するため、式（２４）を演算する。この式（２４）は、基本的に、式（２２）と同一であるが、１サンプル中に２回電流が変化するため、Ｘｈ（ｎ＋Ｔｄ／Ｔ）とＸｂ（ｎ＋０．５）の演算には、ｕ（ｎ−１）と、ｕ（ｎ−０．５）とを使用する。
【００９１】
そして、式（２５）のように、（ｎ＋０．５）サンプルでの推定状態Ｘｈ（ｎ＋０．５）を、式（２４）の推定状態Ｘｂ（ｎ＋０．５）とした上で、目標軌道ｒ（ｎ＋０．５）を用いて、式（２４）と同様に、出力ｕ（ｎ＋０．５）と、次の状態Ｘｂ（ｎ＋１）を演算する。
【００９２】
ここで、式（２４）、式（２５）中の係数Ｂ１，Ｂ２，Ｂ３は、遅延を加味したＴｄが、Ｔ／２（＝ｎ＋０．５）との比較により変わり、Ｔｄ＜Ｔ／２の場合には、次式（２６）で決まる。
【００９３】
【数２６】
2008077777.tif 000028
一方、Ｔ／２＜Ｔｄ＜Ｔの場合は、次式（２７）で決まる。
【００９４】
【数２７】
2008077777.tif 000029
即ち、この式（２６）、（２７）のｕ（ｎ）の係数が、式（２４）、式（２５）のＢ１であり、ｕ（ｎ−０．５）の係数が、Ｂ２であり、ｕ（ｎ−１）の係数が、Ｂ３である。従って、Ｔｄ＜Ｔ／２の場合には、係数Ｂ３は、「０」、Ｔ／２＜Ｔｄの場合は、Ｂ１は、「０」となる。
【００９５】
次に、マルチレート状態推定でのマルチレート制御を説明する。同様に、マルチレート制御では、１サンプルで、電流出力値をｕ（ｎ），ｕ（ｎ＋０．５）と出力する。そのため、マルチレート状態推定でも、基本的には、式（２２）を２回演算する。即ち、下記式（２８）、式（２９）を実行する。
【００９６】
【数２８】
2008077777.tif 000030
【００９７】
【数２９】
2008077777.tif 000031
先ず、出力ｕ（ｎ）と、次の状態Ｘｂ（ｎ＋０．５）を演算するため、式（２８）を演算する。この式（２８）は、基本的に、式（２２）と同一であるが、１サンプル中に２回電流が変化するため、Ｘｈ（ｎ＋Ｔｄ／Ｔ）とＸｂ（ｎ＋０．５）の演算には、ｕ（ｎ−１）と、ｕ（ｎ−０．５）とを使用する。又、推定位置誤差ｅ（ｎ）を、（ｙ（ｎ）−Ｃ・Ｘｂ（ｎ））で、別に演算する。
【００９８】
そして、式（２９）のように、（ｎ＋０．５）サンプルでの推定状態Ｘｈ（ｎ＋０．５）を、式（２８）の推定状態Ｘｂ（ｎ＋０．５）に、式（２４）のｅ（ｎ）にＬ２を乗じた値で補正する。更に、目標軌道ｒ（ｎ＋０．５）を用いて、式（２８）と同様に、出力ｕ（ｎ＋０．５）と、次の状態Ｘｂ（ｎ＋１）を演算する。
【００９９】
ここで、式（２８）、式（２９）中の係数Ｂ１，Ｂ２，Ｂ３は、遅延を加味したＴｄが、Ｔ／２（＝ｎ＋０．５）との比較により変わり、Ｔｄ＜Ｔ／２の場合には、式（２６）、２／Ｔ＜Ｔｄの場合は、式（２７）で決まる。
【０１００】
式（２４）、式（２５）のシングルレート状態推定と比較すると、式（２９）のように、（ｎ＋０．５）サンプルでの推定状態Ｘｈ（ｎ＋０．５）を、式（２８）の推定状態Ｘｂ（ｎ＋０．５）に、式（２４）のｅ（ｎ）にＬ２を乗じた値で補正している点が相違する
このように、１回目と同様に、２回目の推定状態を、サンプル時刻に観測した位置誤差で補正することが、マルチレート状態推定である。
【０１０１】
式（２８）、式（２９）のＸｈ（ｎ＋Ｔｄ／Ｔ）とＸｈ（ｎ＋０．５＋Ｔｄ／Ｔ）を、式（２８）、式（２９）の他の式に代入すると、式（２８）、式（２９）は、次式（３０）に変形できる。
【０１０２】
【数３０】
2008077777.tif 000032
式（３０）は、式（２８）のＸｈ（ｎ＋Ｔｄ／Ｔ）を式（２９）のｕ（ｎ）の計算にまとめ、式（２９）のＸｈ（ｎ＋０．５＋Ｔｄ／Ｔ）を、式（２９）のｕ（ｎ＋０．５）に纏め、結合したものである。式が少なくなれば、当然、計算時間も短くなり、応答が速くなる。
【０１０３】
尚、式（３０）のＬ２を「０」とすると、式（２４）、式（２５）で説明したシングルレート状態推定式を示し、Ｌ２が「０」でないと、マルチレート状態推定式を示す。
【０１０４】
図１０は、式（３０）をブロック化したブロック図である。図１０の構成は、基本的に、図６の構成を２つ直列に連結したものである。図１０に示すように、現サンプルｎでの観測位置（位置誤差）ｙ（ｎ）を取り込み，前サンプルで推定した現サンプルの予測位置Ｃ・Ｘｂ（ｎ）と観測位置ｙ（ｎ）の差分を、演算ブロック２２−１で演算し，推定位置誤差ｅｒ［ｎ］を生成する。乗算ブロック２４−１で、この推定位置誤差ｅｒ［ｎ］に，推定ゲインＬ１をかけて、補正値を作る。
【０１０５】
加算ブロック２６−１により、この補正値と，予測位置，予測速度などの現サンプルでの推定状態Ｘｂ［ｎ］とを加算する。これにより，式（３０）の現サンプルでの推定位置・推定速度など推定状態Ｘｈ（ｎ）を生成する。
【０１０６】
そして二自由度制御では、推定状態（位置）Ｘｈ（ｎ）と目標位置軌道ｒ（ｎ）との差分値を加算ブロック３０−１で演算し、乗算ブロック５２−１で、それに係数行列−Ｆ・Ａｄをかけた値を演算する。一方、出力ｕ（ｎ−１）に、乗算ブロック５４−１ａで、係数行列−Ｆ・Ｂｄ２を乗じて、出力ｕ（ｎ−０．５）に、乗算ブロック５４−１ｂで、係数行列−Ｆ・Ｂｄ１を乗じる。３つの乗算ブロック５２−１，５４−１ａ，５４−１ｂの出力を加算ブロック５６−１で加算し、式（３０）の３番目の式の出力値ｕ（ｎ）を得る。
【０１０７】
一方、次の（ｎ＋０．５）の推定状態Ｘｂ（ｎ＋０．５）を、現サンプルの推定状態Ｘｈ（ｎ）に乗算ブロック４２−１で係数行列Ａを乗じた値と、乗算ブロック４６−１で、出力値ｕ（ｎ）に係数行列Ｂ１を乗じた値と、乗算ブロック４４−１ａで、出力値ｕ（ｎ−０．５）に係数行列Ｂ２を乗じた値と、遅延ブロック３４−１で遅延された前サンプルの出力値ｕ（ｎ−１）に乗算ブロック４４−１ｂで係数行列Ｂ３を乗じた値とを、加算ブロック４８−１により加算して、（３０）式の４番目の式のように、計算する。
【０１０８】
次に、演算ブロック２２−１で演算した推定位置誤差ｅｒ［ｎ］に、乗算ブロック２４−２で、推定ゲインＬ２をかけて、補正値を作る。加算ブロック２６−１により、この補正値と，予測位置，予測速度などの現サンプルでの推定状態Ｘｂ［ｎ＋０．５］とを加算する。これにより，式（３０）の現サンプルでの推定位置・推定速度など推定状態Ｘｈ（ｎ＋０．５）を生成する。
【０１０９】
そして、マルチレート制御では、推定状態（位置）Ｘｈ（ｎ＋０．５）と目標位置軌道ｒ（ｎ＋０．５）との差分値を加算ブロック３０−２で演算し、乗算ブロック５２−２で、それに係数行列−Ｆ・Ａｄをかけた値を演算する。
【０１１０】
一方、出力ｕ（ｎ−０．５）に、乗算ブロック５４−２ａで、係数行列−Ｆ・Ｂｄ２を乗じて、出力ｕ（ｎ）に、乗算ブロック５４−２ｂで、係数行列−Ｆ・Ｂｄ１を乗じる。３つの乗算ブロック５２−２，５４−２ａ，５４−２ｂの出力を加算ブロック５６−６で加算し、式（３０）の６番目の式の出力値ｕ（ｎ＋０．５）を得る。
【０１１１】
一方、次の（ｎ＋１）の推定状態Ｘｂ（ｎ＋１）を、現サンプルの推定状態Ｘｈ（ｎ＋０．５）に乗算ブロック４２−２で係数行列Ａを乗じた値と、乗算ブロック４６−２で、出力値ｕ（ｎ＋０．５）に係数行列Ｂ１を乗じた値と、乗算ブロック４４−２ａで、出力値ｕ（ｎ）に係数行列Ｂ２を乗じた値と、遅延ブロック３４−２で遅延された前サンプルの出力値ｕ（ｎ−０．５）に乗算ブロック４４−２ｂで係数行列Ｂ３を乗じた値とを、加算ブロック４８−２により加算して、（３０）式の７番目の式のように、計算する。
【０１１２】
尚、遅延ブロック５０は、次のサンプル（ｎ＋１）の推定状態Ｘｂ（ｎ＋１）を遅延し、乗算ブロック２０−１は、遅延ブロック５０の出力に、Ｃを乗じて、現サンプルの推定位置ｘ（ｎ）を計算する。
【０１１３】
このように、オーバーラン防止のための二自由度制御系において、二自由度制御の出力の遅延（演算遅延及び駆動アンプ、Ｄ／Ａコンバータ等のハード遅延）を考慮して、サンプル時点から遅延分進んだＴｄの推定状態を演算し、この推定状態から出力を演算するため、サンプル時点から、計算中に状態変化があっても、出力遅延の影響を防止し、精度の高い位置制御が可能となり、オーバーランを防止できる。
【０１１４】
又、同一のサンプル時刻で、二自由度制御項を計算しているため、このマルチレート制御では、特に、計算順序が複雑となることを防止でき、高速に演算できる。更に、状態推定順序が守ることができ、系全体の安定性を維持することができる。
【０１１５】
尚、図３０のブロックにおいて、乗算ブロック２４−２のＬ２を「０」に設定すると、シングルレート状態推定の構成となり、図３０の構成は、シングルレート、マルチレート状態推定にいずれにも使用できる。
【０１１６】
（二自由度制御系の第３の実施の形態）
次に、外乱モデルを分離した実施の形態を示す。現在オブザーバにおいて、アクチュエータモデルと外乱モデルを分離した例を説明する。外乱モデルを分離した構成を実現することにより、アクチュエータのモデルに影響を与えず、容易に、自由な外乱抑圧特性を持つ外乱モデルを付与できる。
【０１１７】
このため、外乱モデルを付与した現在オブザーバを容易に構成でき、又、既存の現在オブザーバに所望の外乱特性を持つ外乱モデルを容易に付加できる。
【０１１８】
式（２８）、式（２９）のマルチレート状態推定式を変形して、外乱モデルを分離した計算式を作成する。式（２８）において、式（２８）の状態Ｘｈ（ｎ），Ｘｈ（ｎ＋Ｔｄ／Ｔ）を、位置、速度のアクチュエータモデルの状態Ｘｈ（ｎ），Ｘｈ（ｎ＋Ｔｄ／Ｔ）と、外乱モデルの状態Ｄｈ（ｎ），Ｄｈ（ｎ＋Ｔｄ／Ｔ）とに分離する。これにより、次式（３１）を得る。
【０１１９】
【数３１】
2008077777.tif 000033
式（３１）に示すように、速度、位置の推定状態Ｘｈ（ｎ）を、式（２８）と同様に、計算する。ここで、Ｌ１は、位置と速度の推定ゲインである。又、分離された外乱（バイアスを含む）の推定状態Ｄｈ（ｎ）を同様に、計算する。ここで、Ｌｄ１は、バイアス、外乱の推定ゲインである。同様に、Ｔｄ進んだ状態も位置、速度Ｘｈ（ｎ＋Ｔｄ／Ｔ）と、外乱Ｄｈ（ｎ＋Ｔｄ／Ｔ）とで分離して計算する。
【０１２０】
これに伴い、出力値は、速度Ｘｈ（ｎ＋Ｔｄ／Ｔ）と、外乱Ｄｈ（ｎ＋Ｔｄ／Ｔ）とで分離して計算し、その差分を出力値ｕｏｕｔ（ｎ）とする。更に、次の（ｎ＋０．５）の状態も位置、速度Ｘｂ（ｎ＋０．５）と、外乱Ｄｂ（ｎ＋０．５）とで分離して計算する。
【０１２１】
又、同様にして、式（２９）の状態Ｘｈ（ｎ＋０．５），Ｘｈ（ｎ＋＋０．５＋Ｔｄ／Ｔ）を、位置、速度のアクチュエータモデルの状態Ｘｈ（ｎ＋０．５），Ｘｈ（ｎ＋０．５＋Ｔｄ／Ｔ）と、外乱モデルの状態Ｄｈ（ｎ＋０．５），Ｄｈ（ｎ＋０．５＋Ｔｄ／Ｔ）とに分離する。これにより、次式（３２）を得る。
【０１２２】
【数３２】
2008077777.tif 000034
式（３２）に示すように、速度、位置の推定状態Ｘｈ（ｎ＋０．５）を、式（２８）と同様に、計算する。ここで、Ｌ２は、位置と速度の推定ゲインである。又、分離された外乱（バイアスを含む）の推定状態Ｄｈ（ｎ＋０．５）を同様に、計算する。ここで、Ｌｄ２は、バイアス、外乱の推定ゲインである。
【０１２３】
同様に、Ｔｄ進んだ状態も位置、速度Ｘｈ（ｎ＋０．５＋Ｔｄ／Ｔ）と、外乱Ｄｈ（ｎ＋０．５＋Ｔｄ／Ｔ）とで分離して計算する。これに伴い、出力値は、速度Ｘｈ（ｎ＋０．５＋Ｔｄ／Ｔ）と、外乱Ｄｈ（ｎ＋０．５＋Ｔｄ／Ｔ）とで分離して計算し、その差分を出力値ｕｏｕｔ（ｎ）とする。更に、次の（ｎ＋１）の状態も位置、速度Ｘｂ（ｎ＋１）と、外乱Ｄｂ（ｎ＋１）とで分離して計算する。
【０１２４】
このようにして、外乱モデルを分離して、計算できる。尚、Ｌ２を「０」とすると、シングルレート状態推定式となる。この式（３１）、式（３２）は、冗長がある。計算時間を短縮して、位相余裕の減少を防止するため、式の簡略化を説明する。
【０１２５】
式（３１）において、出力遅延のための位置、速度Ｘｈ（ｎ＋Ｔｄ／Ｔ）を、ｕ（ｎ）の式に代入し、外乱Ｄｈ（ｎ＋Ｔｄ／Ｔ）を、ｕｏｕｔ（ｎ）に代入することにより、次式（３３）が得られる。
【０１２６】
【数３３】
2008077777.tif 000035
同様に、式（３２）において、出力遅延のための位置、速度Ｘｈ（ｎ＋０．５＋Ｔｄ／Ｔ）を、ｕ（ｎ＋０．５）の式に代入し、外乱Ｄｈ（ｎ＋０．５＋Ｔｄ／Ｔ）を、ｕｏｕｔ（ｎ＋０．５）に代入することにより、次式（３４）が得られる。
【０１２７】
【数３４】
2008077777.tif 000036
このように、計算式が少なくなり、計算時間を短縮できる。
【０１２８】
更に、式を統合する。即ち、式（３３）、式（３４）において、状態推定計算を、他の式に代入することにより、下記式（３５）が得られる。
【０１２９】
【数３５】
2008077777.tif 000037
即ち、式（３５）は、式（３３）のＸｈ（ｎ）を、ｕ（ｎ），Ｘｂ（ｎ＋０．５）に代入し、Ｄｈ（ｎ）を、ｕｏｕｔ（ｎ），Ｄｂ（ｎ＋０．５）に代入し、式（３４）のＸｈ（ｎ＋０．５）を、ｕ（ｎ＋０．５），Ｘｂ（ｎ＋１）に代入し、Ｄｈ（ｎ＋０．５）を、ｕｏｕｔ（ｎ＋０．５），Ｄｂ（ｎ＋１）に代入して、結合したものである。
【０１３０】
この形の式（３５）または式（３３）、式（３４）は，２倍や３倍といったマルチレート制御に都合が良い。即ち、出力がｕ（ｎ）〜Ｄｂ（ｎ＋０．５）までの式と，ｕ（ｎ＋０．５）〜Ｄｂ（ｎ＋１）までの式を比べた場合，右辺の各状態変数に掛かる行列が，同じとなる（但し、Ｌ１＝Ｌ２の場合）。その分だけ，行列を保持するメモリを減らすことが可能になる。
【０１３１】
図１１は、式（３５）をブロック化したブロック図である。図１１の構成は、基本的に、図６の構成を２回使用し、且つ外乱用のブロックを追加したものである。図１１に示すように、マルチレート切り替え信号Ｍｕｌｔｉでスイッチ７０、係数乗算ブロック２４−３，６０を切り替る。
【０１３２】
現サンプルｎでの観測位置（位置誤差）ｙ（ｎ）を取り込み，前サンプルで推定した現サンプルの予測位置Ｃ・Ｘｂ（ｎ）と観測位置ｙ（ｎ）の差分を、演算ブロック２２で演算し，推定位置誤差ｅｒ［ｎ］を生成する。乗算ブロック２４−３で、この推定位置誤差ｅｒ［ｎ］に，推定ゲインＬ１又はＬ２をかけて、補正値を作る。
【０１３３】
加算ブロック２６により、この補正値と，予測位置，予測速度などの現サンプルでの推定状態Ｘｂ［ｎ］とを加算する。これにより，式（３５）の現サンプルでの推定位置・推定速度など推定状態Ｘｈ（ｎ）を生成する。
【０１３４】
そして二自由度制御では、推定状態（位置）Ｘｈ（ｎ）と目標位置軌道ｒ（ｎ）との差分値を加算ブロック３０で演算し、乗算ブロック５２で、それに係数行列−Ｆ・Ａｄをかけた値を演算する。一方、出力ｕ（ｎ−１）に、乗算ブロック５４−１で、係数行列−Ｆ・Ｂｄ２を乗じて、出力ｕ（ｎ−０．５）に、乗算ブロック５４−２で、係数行列−Ｆ・Ｂｄ１を乗じる。３つの乗算ブロック５２，５４−１，５４−２の出力を加算ブロック５６−１で加算し、式（３５）の２番目の式の出力値ｕ（ｎ）を得る。
【０１３５】
一方、次の（ｎ＋０．５）の推定状態Ｘｂ（ｎ＋０．５）を、現サンプルの推定状態Ｘｈ（ｎ）に乗算ブロック４２で係数行列Ａを乗じた値と、乗算ブロック４６で、出力値ｕ（ｎ）に係数行列Ｂ１を乗じた値と、乗算ブロック４４−１で、出力値ｕ（ｎ−０．５）に係数行列Ｂ２を乗じた値と、遅延ブロック３４−１，３４−２で遅延された前サンプルの出力値ｕ（ｎ−１）に乗算ブロック４４−２で係数行列Ｂ３を乗じた値とを、加算ブロック４８により加算して、（３５）式の４番目の式のように、計算する。
【０１３６】
又、乗算ブロック６０で、この推定位置誤差ｅｒ［ｎ］に，外乱推定ゲインＬｄ１又はＬｄ２をかけて、補正値を作る。加算ブロック６４により、この補正値と，現サンプルでの外乱推定状態Ｄｂ［ｎ］とを加算する。これにより，式（３５）の現サンプルでの外乱推定状態Ｄｈ（ｎ）を生成する。そして、乗算ブロック６６で、係数行列−Ｆ・Ａｄ２をＤｈ（ｎ）に乗じて、加算ブロックで、ｕ（ｎ）からこの乗算値を差し引き、ｕｏｕｔ（ｎ）を得る。
【０１３７】
次に、２回目の演算では、マルチレート制御信号により、スイッチ７０、係数乗算ブロック２４−３，６０を切り替え、同様の動作を行う。
【０１３８】
このように、推定ゲインＬを、コントローラモデルと外乱モデルで分離し、且つフィードバックゲインＦを、コントローラモデルと外乱モデルで分離し、コントローラモデルと外乱モデルを分離して、設計することができる。
【０１３９】
更に式の統合が可能である。式（３５）では、９つの式を順々に計算するが、必要なのは、ｕｏｕｔ（ｎ），ｕｏｕｔ（ｎ＋０．５），Ｘｂ（ｎ＋１），Ｄｂ（ｎ＋１）である。他の状態変数は、これらの状態変数を求めるために必要なだけである。そこで、９つの式を代入、整理して、ｕｏｕｔ（ｎ），ｕｏｕｔ（ｎ＋０．５），Ｘｂ（ｎ＋１），Ｄｂ（ｎ＋１）を計算する次式（３６）に纏める。
【０１４０】
【数３６】
2008077777.tif 000038
式（３６）では、式（３５）のｅ（ｎ）を、ｕ（ｎ），ｕｏｕｔ（ｎ），Ｘｂ（ｎ＋０．５），Ｄｂ（ｎ＋０．５），ｕ（ｎ＋０．５），ｕｏｕｔ（ｎ＋０．５），Ｘｂ（ｎ＋１），Ｄｂ（ｎ＋１）に代入し、Ｘｂ（ｎ＋０．５），Ｄｂ（ｎ＋０．５）を、ｕ（ｎ＋０．５），ｕｏｕｔ（ｎ＋０．５），Ｘｂ（ｎ＋１），Ｄｂ（ｎ＋１）に代入し、６つの式とし、且つ係数を纏めて、記載したものである。
【０１４１】
このように、必要に応じて、計算式を纏めることができる。
【０１４２】
（他の実施の形態）
前述の実施の形態では、オブザーバ制御を、磁気ディスク装置のヘッド位置決め装置の適用の例で説明したが、光ディスク装置等の他のディスク装置にも適用できる。又、外乱モデルを考慮しているが、外乱モデルを考慮しない場合にも、採用できる。
【０１４３】
以上、本発明を、実施の形態で説明したが、本発明は、その趣旨の範囲内で種々の変形が可能であり、これを本発明の範囲から排除するものではない。
【０１４４】
（付記１）対象物を目標位置に、アクチュエータにより位置制御する位置制御方法において、前記対象物の目標位置と前記対象物の現在位置とから位置誤差を演算するステップと、前記位置誤差と現在オブザーバの現サンプルの推定位置との推定位置誤差により、現サンプルの推定位置を補正するステップと、前記補正された推定位置と現サンプルの目標軌道との差を演算し、且つ１サンプル前の出力値と前記差とから前記サンプル時点から所定時間進んだ推定位置を演算するステップと、前記進んだ推定位置から前記アクチュエータへの出力値を演算するステップと、前記補正された推定位置と、前記現サンプルの出力値と、前記１サンプル前の出力値とから次の出力値演算のための推定位置を演算するステップとを有することを特徴とする位置制御方法。
【０１４５】
（付記２）前記次の出力値演算のための推定位置と（現サンプル＋０．５サンプル）時刻の目標軌道との差を演算し、且つ０．５サンプル前の出力値と前記現サンプルの出力値と前記差とから前記サンプル時点から０．５サンプル進んだ推定位置を演算するステップと、前記進んだ推定位置から前記アクチュエータへの出力値を演算するステップと、前記補正された推定位置と、前記現サンプルの出力値と、前記０．５サンプル前の出力値と、前記計算された出力値とから次のサンプルの推定位置を演算するステップとを更に有することを特徴とする付記１の位置制御方法。
【０１４６】
（付記３）前記進んだ推定位置を演算するステップは、前記次の出力値演算のための推定位置を、前記推定位置誤差で補正するステップを有することを特徴とする付記２の位置制御方法。
【０１４７】
（付記４）前記目標位置から各サンプル時点の目標軌道を生成するステップを更に有することを特徴とする付記１の位置制御方法。
【０１４８】
（付記５）前記目標位置から各サンプル時点と、このサンプル時点から０．５サンプル進んだ時点との目標軌道を生成するステップを更に有することを特徴とする付記２の位置制御方法。
【０１４９】
（付記６）前記位置誤差を演算するステップは、記憶媒体のデータを少なくとも読み取るヘッドの出力から得た現在位置と、前記アクチュエータを駆動して前記ヘッドを前記記憶媒体の所定位置に移動するための目標位置との位置誤差を演算するステップからなることを特徴とする付記１の位置制御方法。
【０１５０】
（付記７）記憶媒体のデータを少なくとも読み取るヘッドと、前記記憶媒体の所定位置に、前記ヘッドを位置決めするアクチュエータと、前記ヘッドの目標位置と前記ヘッドから得た現在位置とから位置誤差を演算し、現在オブザーバ制御により前記アクチュエータを駆動する出力値を演算する制御ユニットとを有し、前記制御ユニットは、前記位置誤差と前記現在オブザーバの現サンプルの推定位置との推定位置誤差により、現サンプルの推定位置を補正し、前記補正された推定位置と現サンプルの目標軌道との差を演算し、且つ１サンプル前の出力値と前記差とから前記サンプル時点から所定時間進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、且つ前記補正された推定位置と、前記現サンプルの出力値と、前記１サンプル前の出力値とから次の出力値演算のための推定位置を演算することを特徴とする媒体記憶装置。
【０１５１】
（付記８）前記制御ユニットは、前記次の出力値演算のための推定位置と（現サンプル＋０．５サンプル）時刻の目標軌道との差を演算し、且つ０．５サンプル前の出力値と前記現サンプルの出力値と前記差とから前記サンプル時点から０．５サンプル進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、前記補正された推定位置と、前記現サンプルの出力値と、前記０．５サンプル前の出力値と、前記計算された出力値とから次のサンプルの推定位置を演算することを特徴とする付記７の媒体記憶装置。
【０１５２】
（付記９）前記制御ユニットは、前記進んだ推定位置を演算するため、前記次の出力値演算のための推定位置を、前記推定位置誤差で補正することを特徴とする付記８の媒体記憶装置。（６）
（付記１０）前記制御ユニットは、前記目標位置から各サンプル時点の目標軌道を生成することを特徴とする付記７の媒体記憶装置。
【０１５３】
（付記１１）前記制御ユニットは、前記目標位置から各サンプル時点と、このサンプル時点から０．５サンプル進んだ時点との目標軌道を生成することを特徴とする付記８の媒体記憶装置。
【０１５４】
（付記１２）前記記憶媒体である記憶ディスクを回転するスピンドルモータを更に有することを特徴とする付記８の媒体記憶装置。
【０１５５】
（付記１３）対象物を目標位置に、アクチュエータにより位置制御する位置制御装置において、前記対象物の目標位置と前記対象物の現在位置とから位置誤差を演算するブロックと、前記位置誤差と現サンプルの推定位置との推定位置誤差により、現サンプルの推定位置を補正し、前記補正された推定位置と現サンプルの目標軌道との差を演算し、且つ１サンプル前の出力値と前記差とから前記サンプル時点から所定時間進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、且つ前記補正された推定位置と、前記現サンプルの出力値と、前記１サンプル前の出力値とから次の出力値演算のための推定位置を演算する現在オブザーバとを有することを特徴とする位置制御装置。
【０１５６】
（付記１４）前記現在オブザーバは、更に、前記次の出力値演算のための推定位置と（現サンプル＋０．５サンプル）時刻の目標軌道との差を演算し、且つ０．５サンプル前の出力値と前記現サンプルの出力値と前記差とから前記サンプル時点から０．５サンプル進んだ推定位置を演算し、前記進んだ推定位置から前記アクチュエータへの出力値を演算し、前記補正された推定位置と、前記現サンプルの出力値と、前記０．５サンプル前の出力値と、前記計算された出力値とから次のサンプルの推定位置を演算することを特徴とする付記１３の位置制御装置。
【０１５７】
（付記１５）前記現在オブザーバは、前記進んだ推定位置を演算するため、前記次の出力値演算のための推定位置を、前記推定位置誤差で補正することを特徴とする付記１４の位置制御装置。
【０１５８】
（付記１６）前記目標位置から各サンプル時点の目標軌道を生成する目標軌道生成ブロックを更に有することを特徴とする付記１３の位置制御装置。
【０１５９】
（付記１７）前記目標位置から各サンプル時点と、このサンプル時点から０．５サンプル進んだ時点との目標軌道を生成する目標軌道生成ブロックを更に有することを特徴とする付記１４の位置制御装置。
【０１６０】
（付記１８）前記位置誤差を演算するブロックは、記憶媒体のデータを少なくとも読み取るヘッドの出力から得た現在位置と、前記アクチュエータを駆動して前記ヘッドを前記記憶媒体の所定位置に移動するための目標位置との位置誤差を演算するブロックからなることを特徴とする付記１３の位置制御装置。
【産業上の利用可能性】
【０１６１】
オーバーラン防止のための二自由度制御系において、二自由度制御の出力の遅延（演算遅延及び駆動アンプ、Ｄ／Ａコンバータ等のハード遅延）を考慮して、サンプル時点から遅延分進んだＴｄの推定状態を演算し、この推定状態から出力を演算するため、サンプル時点から、計算中に状態変化があっても、出力遅延の影響を防止し、精度の高い位置制御が可能となり、オーバーランを防止できる。
【０１６２】
又、同一のサンプル時刻で、二自由度制御項を計算しているため、計算順序が複雑となることを防止でき、高速に演算できる。更に、状態推定順序が守ることができ、系全体の安定性を維持することができる。更に、電流波形が滑らかなとなり、媒体記憶装置のシーク時間短縮、オーバーラン防止に寄与する。
【図面の簡単な説明】
【０１６３】
【図１】本発明の一実施形態を示す媒体記憶装置の構成図である。
【図２】図１のディスクの位置信号の説明図である。
【図３】図２の位置信号の詳細説明図である。
【図４】本発明の一実施の形態のシーク制御の遷移図である。
【図５】本発明の第１の実施の形態の現在オブザーバのブロック図である。
【図６】図６の変形例のブロック図である。
【図７】図５及び図６の動作シーケンスの説明図である。
【図８】本発明の第２の実施の形態の現在オブザーバのブロック図である。
【図９】図８の動作シーケンスの説明図である。
【図１０】図８の現在オブザーバのブロック図である。
【図１１】本発明の第３の実施の形態の現在オブザーバのブロック図である。
【図１２】従来の現在オブザーバのブロック図である。
【図１３】従来の二自由度制御のブロック図である。
【図１４】図１３の詳細ブロック図である。
【図１５】図１３の動作シーケンス図である。
【符号の説明】
【０１６４】
１  アクチュエータ
２  スピンドルモータの回転軸
３  ヘッド
４  ディスク
５  スピンドルモータ
６  アクチュエータのＶＣＭ駆動回路
７  位置復調回路
８  スピンドルモータの駆動回路
９  バス
１０  データの記録再生回路
１１  ハードディスクコントローラ
１２  ＭＣＵのＲＡＭ
１３  ＭＣＵのＲＯＭ
１４  マイクロコントローラユニット
１５  ハードディスクコントローラのＲＡＭ
１６  位置信号
【図１】
2008077777.tif 000039
【図２】
2008077777.tif 000040
【図３】
2008077777.tif 000041
【図４】
2008077777.tif 000042
【図５】
2008077777.tif 000043
【図６】
2008077777.tif 000044
【図７】
2008077777.tif 000045
【図８】
2008077777.tif 000046
【図９】
2008077777.tif 000047
【図１０】
2008077777.tif 000048
【図１１】
2008077777.tif 000049
【図１２】
2008077777.tif 000050
【図１３】
2008077777.tif 000051
【図１４】
2008077777.tif 000052
【図１５】
2008077777.tif 000053