次の方法で共有


タッチ パン待機時間の測定方法

このトピックでは、Windows 8.1 のハードウェア認定に従ってタッチのパン待機時間を測定するセットアップと手順について詳しく説明します。 対象読者は、タッチ スクリーンに精通しており、タッチ スクリーンの待機時間の概念を理解しており、電気工学とソフトウェア エンジニアリングの基本的な知識を持っていることを前提としています。

概要

待機時間とは、タッチ デジタイザー システムで発生する待機時間の測定値です。 タッチ ダウン待機時間とは、指またはスタイラス (アクチュエータ) が画面に触れてから、(通常は HID レポートを介して) ホスト オペレーティング システムが接触を受信するまでの時間を指します。 パンの待機時間は、接触が連続したパスに沿って移動するため、少し複雑になりますが、レポートは個別の時間間隔で提供されます。 したがって、パンの待ち時間は、報告されたタッチのデータが利用可能な個別の時間間隔に関してのみの定義となります。 次に、パンの待ち時間の測定は、タッチが実際に発生してからオペレーティング システムがタッチ イベントを受信するまでの時間遅延を把握するために要約されます。

手法

このトピックでは、ステップ モーターとフォト インタラプタを使用してタッチのハードウェア デバイスのパンの待機時間を測定するためのセットアップと手順について説明します。 ステップ モーターは、機械式のアームを駆動して人間の指をシミュレートするアクチュエータを駆動します。 アクチュエータはテスト済みのデバイス上に円を描きます。アクチュエータが特定の制御点にくると、フォト インタラプタの回路がそれを検出します。 この情報は、マイクロ コントローラーを使用してホスト コンピューターに送信され、テスト アプリケーションは、デバイスがタッチ イベントを報告した時間と、アクチュエータが実際に接触した時間に基づいて待機時間を計算します。 次の図は、全体的な概念を説明するものです。

パンの待機時間の測定

ハードウェア要件

このセクションでは、パンの待機時間を測定するために必要なハードウェア コンポーネントについて説明します。

ステップ モーターとフォト インタラプタ

測定ツールは、ステップ モーター、フォト インタラプタ、回転式のアームとアクチュエータ、および次の図の背景に表示されているるコントロール ボックスで構成されます。

測定ツール

コントロール ボックスには、次の 3 つの制御スイッチと電源スイッチがあります。

  • モーター: ステップ モーターのアームのオンとオフを切り替えます。

  • 調整: パンの待機時間には使用されません。オフにします。 (タッチダウン待機時間にのみ使用されます。)

  • モード: (パンの待機時間の測定に使用されるフォトインタラプタを指す) Tach (タコ メーター) モード と (タッチダウン待機時間の測定に使用されるマイクロフォンを指す) Mic (マイク) モードを切り替えるスイッチです。

ra インターフェイス

パン待機時間の測定の場合の初期設定は次のとおりです。

スイッチ名 State

Power

オフ

運動

オフ

調整

オフ

モード

Tach (タコ メーター)

USB をコンピューターに接続した後にコントロール ボックスの電源をオンにします。 コントロール ボックスの電源を入れた後で USB に接続すると、マイクロ コントローラーが予測不能な状態になる場合があります。

ステッパモータの設定

ステッパ モータは、さまざまな方法で実行するようにプログラミングできます。 既定では、ステッパモータは自動調整モーで実行するようにプログラミングされています。 (このモードについては、ドキュメントの後半の「自動調整モード」セクションで詳しく説明します)。自動校正モードは、手動キャリブレーションによって校正エラーと待ち時間の変動を最小限に抑えるように設計されています。

取得と収集の段階では、モーターは毎秒 0.75 回転の一定速度で実行されます。 取得と収集の段階で使用されるステッパ モータの設定は次のとおりです。

  • AC (加速) = 0.167

  • DE (減速) = 0.167

  • VE (速度) = 0.75

これらの設定を使用すると、ステップ モータは 1.33 秒ごとに 1 回転します。

アームの長さ

角速度は、アームの届く範囲により異なります。 たとえば、描かれる円の半径が約 5 cm の場合、速度は約 25 cm/秒になります。 テストの手順を標準化するため、毎秒 25 cm の速度になるように、アームの半径は 5 cm に設定する必要があります。 許容範囲は ±1 とします。つまり、毎秒 24~26 cm となります。

小型タブレットの場合は、表示サイズが最大で 10 インチであるため、推奨される半径は 5 cm ではなく 3 cm となります。

アームの配置

画面のさまざまな部分で複数回テストを実行して、可能な限り多くの画面領域をカバーすることが理想的です。 デジタイザーの任意の部分の待機時間が、目標待機時間 (15 ミリ秒) 以下である必要があります。

  1. キーボードを使用したデバイスのテスト: 対象デバイスを使用している場合は、テスト手順を完了するために外部キーボードが必要になります。

  2. テストするデバイスを滑らない面に配置: テスト デバイスがテスト中に動かないように配置します。 小型のデバイスの場合、次の図に示すとおり、滑らないパッドの上に配置するのが、簡単な解決策です。 留め具を使用してデバイスをしっかりと配置する方法もあります。

  3. テストするデバイスのレベリング: アクチュエータは、レベリングの効果を最小限に抑えるように設計されているため、完璧にレベリングする必要はありません。 ただし、アクチュエータの面 (直径約 9 mm) デバイスと均一に接していて、片方の端だけに接触しているのではないことを確認する必要があります。

  4. テストするデバイスでの不要なプロセスの終了: システムのパフォーマンスを測定するテストであるため、テストするデバイスの不要なプロセスを終了します。

アームの位置決め

ソフトウェア要件

ロゴ コントローラーとクライアントによって必要なソフトウェアがインストールおよび構成されている必要があります。 スタンドアロンで実行されている場合は、stepmotor.exe、wlklogannotation.dll、および WTTLog.dll、をローカル フォルダーにコピーします。

Triex RA ツールのテスト手順

このテスト手順は、調整、取得、収集の 3 つのステップで構成されます。 ただし、テストを開始する前に、デバイスのレベリングを行う必要があります。 回転するモータのレベルに合わせてレベリングを行うことがポイントです。 適切にレベリングが行われていないと、アクチュエータとデジタイザーの接触が良好にならず、ステップ モータが描く円が不規則になり、最終的に待機時間に多大な影響を及ぼすことになります。 デバイスが適切にレベリングまたは位置調整されていないと、組み込まれている検証方法によりテストは失敗します。

調整

stepmotor.exe を開始すると、空の画面が表示されます。 調整を開始するには、スペース キーを押します。 フォト インタラプタが通知される際に、許容できる誤差推定内で報告されたタッチの位置を特定することが、調整の目的です。 調整の成果が待機時間の数値に及ぼす影響は多大であるため、慎重に調整を行うことが重要です。

セットアップ

  1. マイクロ コントローラーをコンピューターに接続します。

  2. コントロール ボックスの電源スイッチをオンにします。

    スイッチ名 State

    Power

    オン

    運動

    オフ

    調整

    オフ

    モード

    Tach (タコ メーター)

  3. モーター スイッチがオフであることを確認します。

  4. フォトインタラプタが通知されていない (インタラプタ ランプがオフである) ことを確認します。 ディスクのスロットは、フォト インタラプタの信号ビームから約 2、3 mm 離れた位置に配置する必要があります。

    この配置にする理由は 2 つあります。 まず、モーターをオンにすると、モータのアームがわずかに振動します。 この場合、アームがビームをさえぎり、フォト インタラプタが通知することがないようにする必要があります。 次に、自動調整スクリプトを実行する際には、この位置がループの開始位置となるため、(調整が開始されたときの) ループの終了位置が適切にインタラプタの下に配置されるようにする必要があります。 手動調整を行う場合でも、ここが適切な位置となるため、その他の変更は必要ありません。

    調整スロット

  5. 調整フェーズに進むまでは、アームを動かしたり下げたりしないでください。

  6. stepmotor.exe を実行します。 Windows HLK コントローラーを介してプログラムを実行している場合は、マシンとパン待機時間テストを選択してテストを開始します。

  7. 次のテキスト メッセージが表示されます。

    調整プロセスを開始するにはスペース バーを押しします。

  8. スペース バーを押します。 画面に 調整 の文字が表示されます。

  9. アクチュエータを画面の表面まで下げます。

テストのステップ (自動)

  1. モーターをオンにします。 ステッパ モータは、調整モードで 9 回実行されます。

  2. 調整モードが終了すると、5 秒間停止します。 このトピックの「取得」セクションに記載されている手順に従ってください。

テストのステップ (手動)

  1. オンになったときにモーターが移動する方向と同じ方向にアーム をゆっくり回します。

  2. 針 (または穴) がインタラプタを通過する際に、ほぼ完全に停止する速度まで減速します。 (最大速度を取得速度または収集速度の 1% を超過させないように注意します。たとえば、取得速度または収集速度が 25 cm/秒の場合、スロットがインタラプタを通過する際の調整速度は 0.25 cm/秒未満である必要があります。)

  3. フォト インタラプタを通過させるようにアーム を慎重に回します。

  4. 手順 1~2 を少なくとも 6 回繰り返します。

    信号が遮断されると、フォトインタラプタが点滅して、アクチュエータが接触している正確な画面の位置がテスト ウィンドウに報告されます。 次は結果のサンプルです。

    Touch Pointer Update count=0, x=508,y=110
    Touch Pointer Update count=1, x=512,y=113
    

予想される結果

調整が正常に実行されると、エラー メッセージは表示されません。

取得

取得のステップでは、ステップ モーターの速度と描く円の形状が計算されます。

セットアップ

スロットが可能な限りフォト インタラプタから離れた場所に配置されていることを確認します。

テストのステップ

  1. スペース バーを押すと同時にモーター スイッチをオンにします。 画面のテキストがACQUISITION (取得) に変わります。

  2. デバイスに 10 ループほど実行させます。

  3. COLLECTION (収集) モードに切り替えるには、もう一度スペース バーを押し`ます。

予想される結果

COLLECTION (収集) モードがアクティブであることが表示され、取得データが表示されます。 各ループについて算出された時間と速度の一覧が表示されます。 ステップ モーターが振動して良好な結果が得られなかった場合は、最初のいくつかのループがスキップされる場合があります。 次はテキストのサンプルです。

[4]: t: 1.333 [s] v: 25.456 [cm/s]

これにより、以下のことがわかります。

[loop number]: t:<loop time in seconds> [s] v:<velocity> [cm/s]

収集

データ収集は、テストの最後のステップを示します。

セットアップ

COLLECTION (収集) という文字が画面の上部に表示されることを確認します。 スペース バーを押した後も CALIBRATION (調整) の文字が表示されたままである場合は、エラーが発生しているため、 もう一度テストを実行する必要があります。

テストのステップ

  1. 約 10 回のモーターのループを実行します。

  2. テストを完了するには、スペース バーを押します。

  3. モーターのスイッチをオフにします。

予想される結果

成功または失敗の結果が表示されます。

コレクションの結果

ITRI RA ツールのテスト手順

ITRI RA ツールでタッチ パン待機時間ツールを実行する手順は、Triex RA ツールを使用するテストの実行方法とは若干異なります。 テスト自体は同じであり、調整、取得、および収集の手順のセットが含まれていることも同じです。 ITRI でテストを実行する手順は次のとおりです。

  1. RA シャーシ

    itri ra ツール

    ITRI RA ツールの場合、調整スイッチには、オン、オフ、そして中心位置にあるホームの 3 つの位置があることに注意してください。

  2. テストを始める際の各スイッチは次のとおりにする必要があります。

    スイッチ名 State

    Power

    オン

    運動

    オフ

    調整

    オフ (ダウン)

    モード

    パン

  3. スイッチを次のとおり変更し、アームを 45 度回転させてシステムをゼロに設定します。 完了したら、エンジンをオフに切り替えます。

    スイッチ名 State

    Power

    オン

    運動

    オフ

    調整

    ホーム (中央)

    モード

    パン (上部)

  4. テスト フィンガーをデバイスの上に置き、スペース バーを押して調整フェーズに入ります。 各スイッチは次のとおりとなります。

    スイッチ名 State

    Power

    オン

    運動

    オン

    調整

    オン (上部)

    モード

    パン (上部)

  5. テストのカウントが 17 回以上なるまで実行してから、モーター をオフにして、次のとおり調整スイッチをオフ (最も低い位置) に切り替えます。

    スイッチ名 State

    Power

    オン

    運動

    オフ

    調整

    オフ (下部)

    モード

    パン (上部)

  6. スペース バーを押して、取得フェーズに向けて電源をもう一度オンにします。

  7. 画面に表示されるカウント値が 1,999 回を超えたら、スペース バーを押します。 テスト ディスプレイには、モーター回転時間と速度が表示されます。 収集フェーズで約 10 ループの接触に関する情報が収集されるのを待ってから、スペース バーを押します。 この時点で、システムは終了します。 もう一度スペース バーを押して、モーターをオフにします。

分析とレポート

分析

調整または取得でエラーが発生した場合、そのテストは失敗となり、レポートでエラーの詳細を確認できます。 たとえば、次のとおりのエラーが表示されます。

Warning multiple touch devices present.
Calibration failed: x11err=3.71 y11err=1.14 x22err=9.14 y22err=1.71
Acquisition failed: Circles are showing variations in pixel= 9.70
[135] 581 451 739 602 [199556137598] > 18 48

レポート

成功または失敗は、Windows HLK を介して報告されます。 テストを手動で実行している場合は、WTT またはメモ帳で TabletDigitizerOPK.wtl ファイルを開けます。 平均パン待機時間は、ログの最後に記録されています。 目標待機時間は 15 ミリ秒以下です。

自動調整モード

自動調整モードは、RA ツールの既定のモードです。 スクリプトを実行する際、まず、Q-Programmer の設定でステップ モーターが 1 回転あたり 20,000 ステップに設定されていることを確認します。 この構成は ST Configurator ツールを使用して設定できます。 [Motion & I/O] (モーション I/O)、[Pulse & Direction Control] (パルス方向管理) に移動します。

st configurator (1)

st configurator (2)

[Steps/Rev] (ステップ数/回転) の設定が 20000 であることを確認します。

st configurator (3)

右側の設定には、ステップ モーターに現在設定されている Steps/Rev (ステップ数/回転) も表示されています。

st configurator (4)

この設定が適正であれば、自動スクリプトは次の 3 つのモードを順番に実行します。

  1. 調整モード: 最初にエンジンをオンにすると、最初に実行されるモードです。 調整モード中、ステップ モーターは、開始位置から 339 度で、毎秒 0.75 回転 (ループあたり約 1.33 秒) の速度で実行されます。 その後、0.5 秒間停止してから、21 度で毎秒 0.0042 回転の速度 (ステップ モーターの最低想定速度) で回転します。 ステップ モーターが非常に低速で実行されている間、テスト プログラム (stepmotor.exe) は、フォト インタラプタの光線が遮断されると、報告されたタッチ接触位置とタイムスタンプを相互に関連付けます。

    次は、円がどのように表示されるのかを説明するスクリーン ショットの例です。 円弧の矢印が指している場所は、ステップ モーター の回転が低速で動作し、フォト インタラプタが通知する必要がある位置を示しています。 オペレーターがディスクの開始位置を適切に調整することが重要です。ディスクのスロットがフォト インタラプタから約 2~3 mm 離れた場所にある必要があります。

    調整モードの円

    参考までに、この調整の円弧の設計方法を次に説明します。

    Q-Programmer の VE パラメーター 0.0042

    調整信号の平均円弧長

    1.85 cm (円周 31.26 cm に基づく)

    調整信号の平均角度

    0.37 ラジアン (21.20 度)

    調整信号の平均時間

    12.50 秒 (速度を変更する場合は 0.5 秒の待機時間を含む)

    調整信号の平均速度

  2. 5 秒の待機時間: 9 ループの調整の後、5 秒間、エンジンが停止します。 オペレーターはこの間にスペース バーを押して収集モードにする必要があります。

  3. 取得モードと収集モード: 5 秒間待機した後、モーターは 0.75 回転/秒 (ループあたり 1.33 秒) の速度で無限に実行されます。

トラブルシューティング

調整

調整中、フォト インタラプタの通知があると、テスト プログラムはタッチ イベントの正確な位置を計算できません。 そのため、アームを速く回転しすぎて待機時間を発生させないようにすることが重要です。 エラーが発生した場合は、画面にエラー メッセージが表示されます。 次に例を示します。

Calibration failed: x11err=3.71 y11err=1.14 x22err=9.14 y22err=1.71.

テストを再開する前に、停止させて原因を調査します。 一般的なエラーの原因はいくつかあり、 テスト プログラムがタッチ ポイントの適切な計算を実行できないために発生します。 この原因には、

  • フォト インタラプタが通知した際に、フィンガー (アクチュエータ) を速く動かし過ぎた場合。

  • デバイスが動いた場合。

これらの問題を解決して、良好な調整が行われるまでやり直します。 その他の注意事項は次のとおりです。

  • アームは決して逆方向に回さないでください。

  • 発生する可能性があるエラーと待機時間を最小限に抑えるために、フォト インタラプタを通過させるようにアームを慎重に回します。

  • フォト インタラプタが遮断された場合、常に 2 つの通知があります。 最初の通知は、ライトがエッジの端にあるスロットを通過する際に発生します。 2 番目の通知は、ライトがオープン スロットを通過した後にブロックされた場合に発生します。 インデックス カウントは 0 から始まります。 2 つのイベント発生後、カウントは奇数であるはずです。 調整を開始した直後、アームを回す前に、次のメッセージが表示される場合は、少なくとも 1 回はォト インタラプタの周辺でアーム (したがってディスク) を回して、通知が発生した可能性があります。 この場合、調整は自動的に失敗します。 すぐにテストを停止して、再起動します。

    Touch Pointer Update count=0, x=0, y=0
    

取得

取得に失敗した場合は、次のいずれかに類似したエラー メッセージが表示されます。

ERROR: Acquisition failed: Loop times not consistent > 6.3
ERROR: Acquisition failed: Circles are showing too many variations in pixels Rcm_error=0.5 xPixelErr=20 yPixelErr=20

最初のエラーの種類は、ループ時間の平均差が 5 ミリ秒を超える場合に生成されます。 2 番目のエラーの種類は、描かれる円が完全な円でないため、5 ピクセルを超えるピクセルの変動が発生します。 この動作のよくある原因は、次のとおりです。

  • 適切なレベリングが行われていないか、デバイスの調整が不適切である場合。

  • デバイスが動いた場合。

  • ステップ モーターの速度が一貫していない場合。 (実証済みで広く使用されているデバイスであるため、これは可能性が高い説明ではありません。それでも、特定のデバイスでモーターに欠陥がある場合があります。)

収集

調整と取得の手順に成功した場合、収集中に問題が発生する可能性はほとんどありません。 ほとんどのエラーは、デバイスの移動、その他のプロセスによるテスト プログラムの中断、デバイス自体の障害などの外部要因を原因としています。 オペレーターが直面する可能性があるよくある問題には、次の 3 つがあります。

問題 1: 電磁界干渉

ステップ モーターが生成する電磁力の影響により発生する可能性があるエラーです。 デバイスによって、さまざまな仕方でエラーが現れる場合があります。たとえば、ゴースト タッチ ポイントが生成されることがあります。 この問題の解決策は、適切な設置場所を提供することです。

問題 2: その他のプロセスによるテスト プログラムの中断

別のプロセスがテスト プロセスを中断すると、通常、待機時間の値に悪影響を与え、テスト結果を損ねます。

この問題は、フォト インタラプタの通知間隔を比較することで診断できます。 フォト インタラプタからのタイムスタンプが含まれている csignal.txt を確認します。 2 番目の列にはシステム タイムスタンプが表示され、3 番目の列にはマイクロ コントローラーのタイムスタンプが表示されています。 次に例を示します。

[ 0:       0] 431506434557 538485264317
[ 1:      10] 431506447610 538485343495
[ 2:    1333] 431508166028 538495929302
[ 3:    1343] 431508178968 538496008565
[ 4:    1797] 431508769804 538499651185
[ 5:    1803] 431508776386 538499652266
[ 6:    2665] 431509897168 538506594116
[ 7:    2675] 431509910127 538506673294
[ 8:    3998] 431511628522 538517258922
[ 9:    4008] 431511641481 538517338232
[10:    5331] 431513359910 538527923775
[11:    5342] 431513372973 538528003038
sfirst =  0

ファイルの最後のエントリには、最初の有効な通知シーケンスのインデックスが表示されます。 「valid signal sequence」(有効な通知シーケンス) は、システムが安定した際の通知シーケンスの開始を示しています。 取得と収集の間に、テスト プログラムは取得結果をログ ファイルに書き込みます。システムのパフォーマンスによっては、安定するまでに時間がかかる場合があります。 上記の例では、最初の通知が有効であり、タイムスタンプ間の比較を開始できます。

2 つの偶数番号や、たとえば、0、2、4、6 などのタイム スタンプの差を確認することで、タイム スタンプの間隔を測ることができます。次の表に示すとおり、通知 4 と 6 の間隔はその他の通知の間隔とは非常に異なっています。 そのため、通知 4 と 6 の間に別のプロセスによってテストが中断されたことが分かります。 通常の場合、違いは 1% 未満であるはずです。

インデックス タイム スタンプ Interval

0

431506434557

2

431492585219

1731471

4

431494316516

603776

6

431496047748

1127364

8

431497779297

1731354

10

431499509508

1731388

12

431501240620

1731288

問題 3: サンプリング レートの変化

デバイスのサンプリング レートが変化する場合、待機時間の結果に大きな差異が生じる可能性があります。 この問題を診断するには、取得と収集のサンプリング レートを比較します。

外部ツールを使用して、モーターがオンになる前と後のデバイスのサンプリング レートを測定できます。 stepmotor.exe が生成するログを分析するという方法もあります。

  1. Acquisition.txt を開きます。

  2. 最初と最後の行のタイムスタンプ (最後の列) を次のとおり確認します。

    581   660   709   602   199501901480
    581   805   512   602   199554132317
    
  3. 取得のサンプリング レートを次のとおり計算します。

    (Last timestamp - first timestamp) /number of samples (rows)
    
  4. Collection.txt を開きます。

  5. 最初と最後の行のタイムスタンプ (最後の列) を次のとおり確認します。

    581   822   423   602 [199554407006]
    581   288   164   602 [199594255626]
    
  6. 取得のサンプリング レートを次のとおり計算します。

    (Last timestamp - first timestamp) /number of samples (rows)
    

2 つの数字間の差が 2% を超える場合、回収 データの信頼性が低いため、原因を調査する必要があります。

追加のサポート

追加のサポートが必要な場合は、次の認定ジグ ベンダーのいずれかにお問い合わせください。

  • Triex Technologies, Inc.

    +1 (206) 940-0943

  • Industrial Technology Research Institute

    +886 (03) 5743887