前回までは光ディスクドライブにおけるフォーカスサーボの設計例を紹介した。

なにしろ光ディスクドライブはサーボの固まりで、いくつか例を挙げると、

1.レーザパワー制御
2.フォーカス制御
3.トラッキング制御
4.送り制御
5.モータ制御
6.データ PLL

などである。さらにそれらが絡み合って複雑なループを形成していることもある。
光ディスクドライブを全体的に一度設計してみるとサーボに関してたいていのことは身につくと言っていい、というと言い過ぎか。少なくとも基本的なものはやったことになるだろう。ないのは無駄時間要素ぐらいなものである(厳密に言うと PLL にある。「技術メモ」参照)

今回は位置制御サーボを構成した状態(フォーカスサーボもその一つ。目標がゼロなだけ)で、ステップ入力というか別の位置に位置決めしようとした場合どのように考えればいいかの例を説明する。

非常に単純に云うと、たとえばフォーカスサーボに対して目標ゼロから適当な目標を入力するというだけなのだが、少し現実的に起こりうる事情を鑑みたらどうなるかを考える。
フォーカスサーボならばレンズは軽いしアクチュエータ感度も高いので、レンズを移動させようとするのに必要なエネルギーがさほどでもなく、設定されたサーボ特性に従って応答する。しかし、重たい部品や供給電力という足かせがあったらどうだろうか。

そういった供給電力=印加可能な加速度に制限があった場合にもっとも早い位置移動制御として、Bang - Bang 制御というのがある。これはフル加速 - フル減速を同じ時間行わせることで、物体を移動させようというものである。
scilab - Xcos を使って表示させてみた。

イメージ 1
イメージ 2
3つのステップ信号を加算して、波形の一番上の信号作る。これは物体に対する加速度を表す。加速度は力に比例するので実際は一定電流を一定期間流して、物体に力を与える。これが習い覚えた f = ma の式を使って加速度に変わったものだ。
加速度を一階積分すると速度になる。さらに積分すると変位になる。これが上述の Xcos に表したものだ。
単位を一応確認しておく。
加速度は、加速 1 m / s^2 、減速 - 1 m / s^2 とする。これを加速 1 sec、減速 1 sec 積分したので、最大速度は 1 m / s、移動量は 1 m となる。理想的に動作すれば、2 sec 後に 1 m 移動する。

どうやって制御するかというと、たとえば加速度が安定に出ると分かっていれば、加速開始とともに時間を計り 1 秒後に減速に切り替える。あるいは位置をチェックしながら半分の距離に到達したら減速に切り替えるなどでだろう
まあ、多少誤差があってもいいや、という用途なら一番理想的な動きなのでこうしても良いかも知れない。だがほとんどのみなさんが感じられるように限りなく怪しい。平たく云うと「行ってこい!」制御である。そんな精度の加速度は与えられるのか、摩擦はどうする、物体の質量のばらつきはなどなど危ない理由はいくらでも出てくるだろう。直感的にももう少しこまめに状態を観測しながら制御する必要があるのではないかと思うだろう。
だがとにかく早く移動させるという点ではこういう加速度波形、速度波形、位置状態は理想である。従ってサーボを構成して制御しながら動作させたとしても波形はこれらに出来るだけ近づけるのが良い。

次回からいくつかのサーボ系を示しながら、この波形にどうやって近づけるか検討してみることにする。