てこ機構部分が取り付けられたのでセンサが安定するまで定点サンプルを行います。
10000回読み出しに約4時間かかります。(画像はクリックで拡大)
最初のカウント:
センサ1:107891.5
センサ2:106348.1
センサ3:100895.0
取り付けてから4時間くらいは接着剤が乾いたりで緩やかにカウント値(測長値)が変化しています。
カウント−即長値のcalibration や環境要素との関係はこれからの課題です。
さらに1週間サンプルを続けました。
最初のカウント:
センサ1:107954.6
センサ2:106497.4
センサ3:100803.9
補正したやつ
最初のカウント:
センサ1:107974.9
センサ2:106748.6
センサ3: 99705.3
圧力、湿度、気温はそれぞれ次の通り。
センサ3の調子が悪いので、ヘッドを交換して試験(その間に諸々の作業あり)。
最初のカウント:
センサ1:106224.0
センサ2:103931.4
センサ3:103266.8
補正したやつ
最初のカウント:
センサ1:106068.1
センサ2:103854.3
センサ3:102028.8
圧力、湿度、気温はそれぞれ次の通り。
センサ3の調子は改善されない。ヘッドが原因かの判別の為、CH2とCH3の読み出し口を交換して試験。
最初のカウント:
センサ1:106274.3
センサ2:103980.8 但し読出しはCH3
センサ3:103436.8 但し読出しはCH2
センサ3の調子が悪いので、原因はヘッドにある。
ヘッドの問題か取り付け方の問題か(センサのある位置など)を判別する為に、CH2とCH3のセンサを付ける位置を交換して試験。
最初のカウント:
センサ1:105878.9
センサ2:108107.9 元センサ3
センサ3:107079.7 元センサ2
元センサ3の調子は良くなり、元センサ2の調子が悪くなった。それでも元センサ3の調子は少し悪い?原因は取り付ける位置にあるようです。ヘッドについているケーブルに負担がかからないように固定するのですが、その向きや位置に注意しなくてはいけないようです。
アクチュエータには個性があるので全て同じパルス数で補正できるとは限らず、結局は、try and error になってしまいました。
補正は100パルスごとの、ストローク200,000パルスで往復時にずれが生じないように行います。また、補正は5パルス単位で行っています(後にフィードバック制御をするので1パルス単位の補正は重要でない??)
補正前の様子は次の通り。左からアクチュエータ1、2、3。
補正後の様子は次の通り。左からアクチュエータ1、2、3。
アクチュエータ1の補正は5パルス単位では完全には出来ていません。それぞれの補正数は以下の様になりました。
アクチュエータ1 | アクチュエータ2 | アクチュエータ3 | |
---|---|---|---|
上り | +35 | +35 | +30 |
下り | +25 | +30 | +25 |
両端100,000パルスずつ程度除いて、アクチュエータ1、2、3のフルストロークを取るとそれぞれ次の通りのようになります。これが試験に用いるパルス-カウント値/位置関係になります。
上昇時:左からアクチュエータ1、2、3、レーザー変位計。
下降時:左からアクチュエータ1、2、3、レーザー変位計。
(プログラムの大幅書き換えを行ったら思いがけず時間がかかりました。)
試しに必要パルス数の50%でアクチュエータを動かしてみると次のようになりました(左から1回目、2回目……)。動かすのは10回までとしています。また、目的位置からの誤差は1[um]としています。
赤色:センサ1、緑色:センサ2、青色:センサ1、紫色:レーザー変位計(右の軸)とし、水平の線はそれぞれのセンサの目標位置になります。上下の薄い線は誤差範囲。
目的位置からの誤差が0.1[um]というのは始めから厳しいので、5[um]にして試験を行います。また、この試行から
(ちょっとプログラムのミスを修正した)
必要パルス数の50%で駆動していくと以下のような結果になりました。
lkg: 101.130[um]移動 lkg: 97.601[um]移動 lkg: 94.183[um]移動 lkg: 94.910[um]移動 lkg: 95.526[um]移動
収束するのに5〜6回動かす必要がありました。
1回に動かす量を必要パルス数の70%にすると次のような結果になりました。
lkg: 99.092[um]移動 lkg: 99.044[um]移動 lkg: 95.483[um]移動 lkg: 95.375[um]移動 lkg: 95.759[um]移動
収束するのに3〜4回動かす必要がありました。
1回に動かす量を必要パルス数の80%にすると次のような結果になりました。
lkg: 102.744[um]移動 lkg: 100.843[um]移動 lkg: 97.247[um]移動 lkg: 92.901[um]移動 lkg: 98.156[um]移動
収束するのに2〜3回動かす必要がありました。
1回に動かす量を必要パルス数の95%にすると次のような結果になりました。
lkg: 103.421[um]移動 lkg: 100.524[um]移動 lkg: 97.463[um]移動 lkg: 97.281[um]移動 lkg: 98.448[um]移動
収束するのに2回動かす必要がありました。
=>ここまでの結果:100[um]を5%の精度(±5[um])で動かすのは必要駆動量の95%で動かしていけばよい。
続いて、制度を1%に、つまり±1%の精度で動かせるように調整します。
1回に動かす量を必要パルス数の97%にすると次のような結果になりました。
lkg: 105.042[um]移動 lkg: 101.693[um]移動 lkg: 97.685[um]移動 lkg: 97.620[um]移動 lkg: 99.005[um]移動
4回目、5回目のみ2回で収束し、1回目、3回目は超過、2回目は未到達となりました。
1回に動かす量を必要パルス数の96%にすると次のような結果になりました。
lkg: 105.347[um]移動 lkg: 102.634[um]移動 lkg: 99.160[um]移動 lkg: 97.241[um]移動 lkg: 98.315[um]移動
2回目、4回目、5回目は2回で収束し、1回目、3回目は超過となりました。
95%では2回で±1[um]の範囲には到達していない様子から、常に同じ駆動では2回で目的位置に到達することが出来なさそうです。
また、レーザー変位計の読み出し値から、デジタルセンサの駆動量のばらつきが伺えます(デジタルセンサで収束していてもレーザー変位計で収束していなかったり、逆もある。つまり、傾きが異なっているから)。この為、センサごとに駆動量を変える必要があります。
=>ここまでの結果:100[um]を1%の精度(±1[um])で動かすのは単純な駆動では不可能。
解決策としては、
最初は全て同じパルス数として必要パルス数の96%、それ以降はそれぞれのセンサから求めた必要パルス数の80%で駆動すると次のような結果になりました。
lkg: 103.312[um]移動 lkg: 100.506[um]移動 lkg: 97.730[um]移動 lkg: 97.853[um]移動 lkg: 99.096[um]移動
収束するのに3〜4回動かしました。
最初は全て同じパルス数として必要パルス数の98%、それ以降はそれぞれのセンサから求めた必要パルス数の80%で駆動すると次のような結果になりました。
lkg: 103.650[um]移動 lkg: 100.629[um]移動 lkg: 97.962[um]移動 lkg: 96.998[um]移動 lkg: 99.068[um]移動
収束するのに2〜3回動かしました。
最初は全て同じパルス数として必要パルス数の98%、それ以降はそれぞれのセンサから求めた必要パルス数の90%で駆動すると次のような結果になりました。
lkg: 102.631[um]移動 lkg: 100.552[um]移動 lkg: 97.429[um]移動 lkg: 97.797[um]移動 lkg: 98.664[um]移動
収束するのに2〜3回動かしました。
大体2回程度で誤差範囲内に収束してきたので、誤差を0.1%(±0.1[um])として試験していきます。
※但し、デジタルセンサでで収束しているのにレーザー変位計での誤差は反映されていない件については保留(試験時間は1回2、3分程度なので変位系のドリフトとは考えにくい)。
最初は全て同じパルス数として必要パルス数の98%、それ以降はそれぞれのセンサから求めた必要パルス数の90%で駆動すると次のような結果になりました。
図は、誤差範囲が見にくい為、0回目(スタート地点)のデータを省いています。
lkg: 102.850[um]移動 lkg: 99.665[um]移動 lkg: 98.460[um]移動 lkg: 99.534[um]移動 lkg: 98.992[um]移動
収束するのに3〜4回動かしました。
最初は全て同じパルス数として必要パルス数の98%、それ以降はそれぞれのセンサから求めた必要パルス数の92%で駆動すると次のような結果になりました。
lkg: 103.662[um]移動 lkg: 100.914[um]移動 lkg: 97.899[um]移動 lkg: 98.034[um]移動 lkg: 100.637[um]移動
収束するのに3〜4回動かしました。
最初は全て同じパルス数として必要パルス数の99%、それ以降はそれぞれのセンサから求めた必要パルス数の92%で駆動すると次のような結果になりました。
lkg: 103.059[um]移動 lkg: 99.508[um]移動 lkg: 97.695[um]移動 lkg: 98.531[um]移動 lkg: 99.131[um]移動
収束するのに3〜4回動かしました。
ここまで、全体を同じ割合で動かしてきていますが、収束具合はあまり変わりません
以降、1)もっと割合を変える、2)センサによって動かす割合を変える
の2点に関して試験を行います。
1)、2)どちらに関しても収束が早くなることはないようです(図は煩雑になるので割愛)。
結局、100umと大きく動かすときは、1%の精度が限界のようです。
最初に動かすときの量が大きいので、細かい調整が難しいようです。また、センサのふら付きの影響も小さくはないので、もっと精度を上げる為には、センサの読み出し回数にも工夫が必要です。
2009.06.22
ここまでの結果:
引越し作業の為2週間くらい中断。
センサ3が駄目になったので、交換して、再度インダクタンスセンサのパルス-カウント値関係を求め、上昇運動の様子を確認。
作り直した図は以下の様になった。
上昇時:左からアクチュエータ1、2、3、レーザー変位計。
下降時:左からアクチュエータ1、2、3、レーザー変位計。
CH1のアクチュエータについて、カウント値65000付近で段差が生じている。再現性があるので、センサのとびと言うよりは機械的なものか。
大きく駆動する場合は以前と同じで1回目99%、2回目95%で、±1[um]の精度に収まることを確認。
小さく駆動する場合は調整中
※CH1のセンサ(orアクチュエータ)は移動した後に落ち着くまで時間がかかる(惰性で10nm程度(10カウント@64000)動く)次の読み出しまで動いているようなので40秒くらいは動く。