パフォーマンス マップを使用して結果を比較する

パフォーマンス表で提供されるデータを使用して、エコシステムのパフォーマンス マップのデータを入力します。パフォーマンス マップのデータを入力する際は、推奨されるデータの可視化入門ガイドをご覧ください。比較用に、DUT から取得したデータをパフォーマンス マップに一致させます。

パフォーマンス マップのデータを可視化する

効果 1 と効果 2 のパフォーマンス マップは、ピーク時間、ピーク振幅、シャープネスのメリットの数値(FOMS = PRR / ピーク時間)で描画されます。データをパフォーマンス マップに一致させる際には、X 軸(ピーク時間)、Y 軸(ピーク振幅)、バブルサイズ(FOMS)のデータをよく参照します。パフォーマンス マップは、価格帯(低、中、高)、アクチュエータの種類(X-LRA、Z-LRA、ERM)を含むいくつかのカテゴリで表されています。異なるカテゴリを表すために異なる色を使用します。

パフォーマンス マップは、(合格または不合格の判断ではなく)コンテキストの相対的な比較を使用して対象デバイスの評価を支援します。パフォーマンス マップと DUT 測定との比較結果を解釈する際には、そのスマートフォンが属するカテゴリに基づいて予想を立ててから、以下の質問を検討してください。

  • デバイスのパフォーマンス特性は、マップ上のどの位置にありますか?
  • 多くの条件(たとえば、価格帯やアクチュエータの種類)を考慮した場合、御社のデバイスは競合他社と比べてパフォーマンスが高いですか、同等ですか、低いですか?
  • その結果は期待に沿うものですか?そうでない場合、パフォーマンスが低いのはどの要素ですか?

たとえば、ERM を搭載した手頃な価格のスマートフォンのパフォーマンスがプレミアム X-LRA のスマートフォンと同等である場合、ERM を搭載した同様の手頃な価格のスマートフォンと比較して、その手頃な価格のスマートフォンは大変良い品質のハプティクスを備えています。

EFFECT_CLICK(効果 1)と createOneShot (効果 2)では、x 軸と y 軸はそれぞれピーク時間とピーク振幅を示しています。バブルのサイズは、シャープネス(FOMS = PRR / ピーク時間)のメリットの数値を示し、凡例のカラーコードは、さらなるセグメンテーションのためのカテゴリ(価格帯またはアクチュエータの種類)を表しています。たとえば、価格帯(低、中、高)でセグメント化されたパフォーマンス マップでは、各バブルの色が価格帯を表しています。バブルの色と御社のスマートフォンの価格帯を一致させることで、同じ価格帯の競合他社と御社のスマートフォンを比較できます。

図 1 の緑のバブルは、EFFECT_CLICK(効果 1)の高品質なハプティクスを示しています。一般的に、期間が短く、振幅が大きく、バブルサイズが大きい場合、効果はクリアで力があります。

図 1 の赤のバブルは、EFFECT_CLICK(効果 1)の低品質なハプティクスを示しています。一般的に、期間が長く、振幅が小さく、バブルサイズが小さい場合、効果はうるさく、安っぽく、力がありません。

赤い点線は振幅の最小しきい値を示しています。振幅が 0.1 g より弱い場合、ハプティックはユーザーの知覚で認識されません(失敗ケース F03-2)。

効果入門ガイド 1

図 1. 効果 1 入門ガイドのパフォーマンス マップ

効果入門ガイド 2

図 2. 効果 2 入門ガイドのパフォーマンス マップ

createOneShot(効果 2)からのデータの読み取りは、効果 1 のデータとほぼ同じプロセスですが、一つだけ例外があります。効果 2 の目標時間は 20 ミリ秒であるため、ピーク時間が 20 ミリ秒に近いほど最適なブレーキでの出力を表します。

createWaveform(効果 3)のデータは、振幅の制御機能に焦点を当てています。最初のアクセラレーション(アクセラレーション 1 = 振幅 50% = グループ化された棒グラフの左の棒)と 2 番目のアクセラレーション(アクセラレーション 2 = 振幅 100% = グループ化された棒グラフの右の棒)との目標比率は 2 です。

効果入門ガイド 3

図 3. 効果 3 入門ガイドのパフォーマンス マップ

パフォーマンス マップのデータとイラスト

このデータはパフォーマンス マップに適用されます。

  • テスト日: 2020 年 4 月 12 日
  • テストしたデバイスモデルの数: 28
  • テストしたデバイス メーカーの数: 10
  • デバイスのリリース期間: テスト日前の 18 か月
  • パフォーマンス マップで観察されたハプティクス効果:

    • VibrationEffect.EFFECT_CLICK(効果 1)
    • VibrationEffect.createOneShot(効果 2)
    • VibrationEffect.createWaveform(効果 3)
  • 価格帯のセグメンテーション

    • 高(600 米ドル以上)
    • 中(300 米ドル~600 米ドル)
    • 低(300 米ドル以下)
  • 失敗ケース

    • F01: ハプティクス定数が実装されていません。分析する信号がありません。
    • F02: 信号の振幅が、分析または人間の知覚で認識するには弱すぎます。MATLAB エラー。
    • F03-1: 信号の振幅が、分析または人間の知覚で認識するには弱すぎます。PRR 値が 0 より小さいです(< 0)。
    • F03-2: 信号の振幅が、分析または人間の知覚で認識するには弱すぎます。振幅の値が 0.1 より小さいです(< 0.1)。
    • F04: 最初のアクセラレーションのフェーズがありません。最初の半分の信号がありません。
    • F05: 2 つのフェーズの間にアクセラレーションの増加がありません。アクセラレーション 1 とアクセラレーション 2 の最大振幅がほぼ同じです。
  • ハードウェア評価に必要な Android のバージョン: Android 10.0(API レベル 29)以上。

  • パフォーマンス マップのデータ入力に使用される Android のバージョン: Android 8.0(API レベル 26)以上。効果 1 では、VibrationEffect.EFFECT_CLICK ではなく HapticFeedbackConstants.KEYBOARD_PRESS が使用されました。これは、データの取得がハプティクス実装チェックリスト導入の前に行われたためです。

EFFECT_CLICK(効果 1)のパフォーマンス マップ

EFFECT_CLICK(効果 1)のパフォーマンス マップについて
効果の定義(Java)
Vibrator vibrator = getSystemService(Vibrator.class);
vibrator.vibrate(VibrationEffect.createPredefined(EFFECT_CLICK));
効果の定義(Kotlin)
val vibrator = getSystemService(Vibrator::class.java)
vibrator.vibrate(VibrationEffect.createPredefined(EFFECT_CLICK))
パフォーマンス マップの読み取りに必要なデータ
  • ピーク時間(グラフの X 軸)
  • ピーク振幅(グラフの Y 軸)
  • FOMS を計算するための PRR
  • FOMS = PRR / ピーク振幅(グラフのバブルプロットのバブルサイズ)
  • 視覚的参照としての MATLAB の信号プロット
成功率
  • 85.7% のデバイスが効果 1 を生成
  • 14.3% が F01(ハプティクス定数が実装されていません)のために失敗
EFFECT_CLICK(効果 1)のパフォーマンス マップに入力するデータ
デバイス ID 価格帯 アクチュエータの種類 合格 / 不合格 ピーク時間(ミリ秒) ピーク振幅(g) PRR FOMS
#101 X-LRA 合格 167.33 0.53 20.91 0.12
#102 X-LRA 合格 20.63 1.07 20.09 0.97
#103 X-LRA 合格 19.98 0.98 21.75 1.09
#104 X-LRA 合格 22.67 1.16 20.02 0.88
#105 X-LRA 合格 10.96 1.30 23.62 2.16
#106 Z-LRA 合格 20.13 1.11 24.15 1.20
#107 Z-LRA 合格 49.31 0.79 20.06 0.41
#108 X-LRA 合格 120.71 0.24 14.93 0.12
#109 Z-LRA 合格 51.46 0.43 8.69 0.17
#110 X-LRA 合格 8.44 1.01 27.68 3.28
#111 ERM 不合格(F01) × × × ×
#112 Z-LRA 合格 25.85 0.51 21.94 0.85
#113 Z-LRA 合格 58.35 0.29 25.10 0.43
#114 Z-LRA 合格 34.46 0.28 20.91 0.61
#115 Z-LRA 合格 23.67 0.31 26.46 1.12
#116 X-LRA 合格 8.40 0.44 29.82 3.55
#117 Z-LRA 合格 31.35 1.13 23.65 0.75
#118 Z-LRA 合格 26.42 0.42 25.05 0.95
#119 Z-LRA 合格 30.65 0.48 19.69 0.64
#120 Z-LRA 合格 170.65 0.97 20.16 0.12
#121 Z-LRA 合格 51.69 0.55 17.14 0.33
#122 X-LRA 不合格(F01) × × × ×
#123 ERM 不合格(F01) × × × ×
#124 ERM 合格 68.33 0.93 7.40 0.11
#125 ERM 不合格(F01) × × × ×
#126 Z-LRA 合格 41.96 0.68 8.77 0.21
#127 Z-LRA 合格 9.63 0.43 4.55 0.47
#128 Z-LRA 合格 22.77 0.55 26.10 1.15

効果 1 パフォーマンス マップ 1

図 4. 効果 1 のパフォーマンス マップ(価格帯別)

効果 1 パフォーマンス マップ 2

図 5. 効果 1 のパフォーマンス マップ(アクチュエータの種類別)

createOneShot(効果 2)のパフォーマンス マップ

createOneShot(効果 2)のパフォーマンス マップについて
効果の定義(Java)
private static final long oneShotTiming = 20;
private static final int oneShotAmplitude = 255;

Vibrator vibrator = getSystemService(Vibrator.class); vibrator.vibrate(VibrationEffect.createOneShot(oneShotTiming, oneShotAmplitude));
効果の定義(Kotlin)
private val oneShotTiming: Long = 20
private val oneShotAmplitude = 255

val vibrator = getSystemService(Vibrator::class.java) vibrator.vibrate(VibrationEffect.createOneShot(oneShotTiming, oneShotAmplitude))
パフォーマンス マップの読み取りに必要なデータ
  • ピーク時間(グラフの X 軸)
  • ピーク振幅(グラフの Y 軸)
  • FOMS を計算するための PRR
  • FOMS = PRR / ピーク振幅(グラフのバブルプロットのバブルサイズ)
  • 視覚的参照としての MATLAB の信号プロット
成功率
  • 89.3% のデバイスが効果 2 を生成
  • 10.7% のデバイスが F02 または F03-2(分析または人間の知覚で認識するには信号振幅が弱すぎる)のために失敗
createOneShot(効果 2)のパフォーマンス表に入力するデータ
デバイス ID 価格帯 アクチュエータの種類 合格 / 不合格 ピーク時間(ミリ秒) ピーク振幅(g) PRR FOMS
#201 X-LRA 合格 168.81 0.98 20.62 0.12
#202 X-LRA 合格 28.35 2.29 28.95 1.02
#203 X-LRA 合格 77.25 0.78 21.01 0.27
#204 X-LRA 合格 70.48 1.42 21.85 0.31
#205 X-LRA 合格 67.92 1.19 22.61 0.33
#206 Z-LRA 合格 33.44 1.34 25.19 0.75
#207 Z-LRA 合格 73.90 1.36 23.13 0.31
#208 X-LRA 合格 102.02 0.71 20.12 0.20
#209 Z-LRA 合格 63.71 0.14 3.70 0.06
#210 X-LRA 合格 8.46 1.01 28.77 3.40
#211 ERM 不合格(F02、F03-1) × × × ×
#212 Z-LRA 合格 43.71 1.03 23.14 0.53
#213 Z-LRA 合格 27.42 0.23 22.85 0.83
#214 Z-LRA 合格 45.29 0.72 19.99 0.44
#215 Z-LRA 合格 23.71 0.41 27.30 1.15
#216 X-LRA 合格 8.31 0.43 27.58 3.32
#217 Z-LRA 合格 42.19 1.03 26.97 0.64
#218 Z-LRA 合格 26.38 0.42 24.74 0.94
#219 Z-LRA 合格 46.77 1.01 24.64 0.53
#220 Z-LRA 合格 166.33 0.97 20.61 0.12
#221 Z-LRA 合格 38.60 0.42 18.21 0.47
#222 X-LRA 合格 76.00 0.61 23.17 0.30
#223 ERM 不合格(F03-2) 55.27 0.08 1.95 0.04
#224 ERM 合格 39.29 0.30 7.04 0.18
#225 ERM 不合格(F03) × × × ×
#226 Z-LRA 合格 34.31 0.53 30.23 0.88
#227 Z-LRA 合格 5.42 0.37 12.23 2.26
#228 Z-LRA 合格 22.65 0.90 24.23 1.07

効果 2 パフォーマンス マップ 1

図 6. 効果 2 のパフォーマンス マップ(価格帯別)

効果 2 パフォーマンス マップ 1

図 7. 効果 2 のパフォーマンス マップ(アクチュエータの種類別)

createWaveform(効果 3)のパフォーマンス マップ

createWaveform(効果 3)のパフォーマンス マップについて
効果の定義(Java)
private static final long[] waveformTimings = {500, 500};
private static final int[] waveformAmplitudes = {128, 255};

Vibrator vibrator = getSystemService(Vibrator.class); vibrator.vibrate(VibrationEffect.createWaveform(waveformTimings, waveformAmplitudes, -1));
効果の定義(Kotlin)
private val waveformTimings = longArrayOf(500, 500)
private val waveformAmplitudes = intArrayOf(128, 255)

val vibrator = getSystemService(Vibrator::class.java) vibrator.vibrate(VibrationEffect.createWaveform(waveformTimings, waveformAmplitudes, -1))
パフォーマンス マップの読み取りに必要なデータ
  • アクセラレーション 1(グラフの左のグループ化されたバーの y 軸)
  • アクセラレーション 2(グラフの右のグループ化されたバーの Y 軸)
  • アクセラレーション 1(振幅 50%)とアクセラレーション 2(振幅 100%)のアクセラレーション比: ターゲット比は 2 です。
  • 視覚的参照としての MATLAB の信号プロット
成功率
  • 32.1% のデバイスが想定どおりに効果 3 を生成しました。
  • 67.9% のデバイスが F04(10.7%、アクセラレーション 1 の信号なし)または F05(57.1%、想定どおりアクセラレーション 1 とアクセラレーション 2 に違いがない)のために失敗しました。
createWaveform(効果 3)のパフォーマンス表に入力するデータ
デバイス ID 価格帯 アクチュエータの種類 合格 / 不合格 アクセラレーション 1(50%) アクセラレーション 2(100%) アクセラレーション比 デルタ
#301 X-LRA 合格 1.19 2.02 1.70 0.83
#302 X-LRA 合格 0.87 1.85 2.12 0.98
#303 X-LRA 合格 0.62 1.47 2.37 0.85
#304 X-LRA 合格 0.82 1.89 2.30 1.07
#305 X-LRA 合格 0.69 1.51 2.21 0.83
#306 Z-LRA 合格 1.02 1.50 1.46 0.47
#307 X-LRA 合格 0.59 1.37 2.32 0.78
#308 Z-LRA 合格 0.58 0.72 1.25 0.14
#309 Z-LRA 合格 0.39 1.43 3.66 1.04
#310 X-LRA 不合格(F04) 0.00 1.36 1.36 1.36
#311 X-LRA 不合格(F04) 0.00 0.56 0.56 0.56
#312 Z-LRA 不合格(F04) 0.00 0.71 0.71 0.71
#313 Z-LRA 不合格(F05) 0.60 0.61 1.02 0.01
#314 Z-LRA 不合格(F05) 0.64 0.65 1.01 0.01
#315 ERM 不合格(F05) 0.96 0.95 0.99 -0.01
#316 Z-LRA 不合格(F05) 0.40 0.40 1.00 0.00
#317 Z-LRA 不合格(F05) 0.60 0.58 0.98 -0.01
#318 Z-LRA 不合格(F05) 0.30 0.30 1.00 0.00
#319 Z-LRA 不合格(F05) 0.57 0.56 0.99 0.00
#320 Z-LRA 不合格(F05) 0.67 0.67 1.00 0.00
#321 Z-LRA 不合格(F05) 0.67 0.66 0.99 -0.01
#322 X-LRA 不合格(F05) 0.95 1.02 1.07 0.06
#323 ERM 不合格(F05) 0.86 0.88 1.01 0.01
#324 ERM 不合格(F05) 1.46 1.45 0.99 -0.01
#325 ERM 不合格(F05) 0.95 0.96 1.01 0.01
#326 Z-LRA 不合格(F05) 0.90 0.92 1.02 0.02
#327 Z-LRA 不合格(F05) 0.47 0.47 1.00 0.00
#328 Z-LRA 不合格(F05) 0.51 0.56 1.09 0.04

効果 1 パフォーマンス マップ 3

図 8. 効果 3 のパフォーマンス マップ(合格 / 不合格別)