실적 지도를 사용하여 결과 비교

실적 표에 제공된 데이터를 사용하여 생태계의 실적 지도를 채웁니다. 성능 맵을 채울 때는 권장 데이터 시각화 안내 가이드를 따르세요. 비교를 위해 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.1g보다 작으면 사용자가 햅틱을 인식하지 못합니다 (실패 사례 F03-2).

효과 안내 가이드 1

그림 1. 효과 1의 성능 맵 안내 가이드

효과 안내 가이드 2

그림 2. Effect 2 실적 지도 관련 안내 가이드

createOneShot (효과 2)에서 데이터를 읽는 것은 한 가지 예외를 제외하고는 효과 1 데이터와 거의 동일한 프로세스입니다. 효과 2의 목표 지속 시간이 20ms이므로 20ms에 가까운 최대 지속 시간은 제동이 잘 된 출력을 나타냅니다.

createWaveform(효과 3)의 데이터는 진폭 제어 기능에 중점을 둡니다. 첫 번째 가속도 (가속 1 = 그룹 막대 그래프의 가속 1 = 50% 진폭 = 왼쪽 막대)와 두 번째 가속 (가속도 2 = 100% 진폭 = 그룹화된 막대 그래프의 오른쪽 막대) 사이의 목표 비율은 2입니다.

효과 안내 가이드 3

그림 3. Effect 3 실적 지도 관련 안내 가이드

실적 맵 데이터 및 삽화

이 데이터는 다음과 같은 실적 지도에 적용됩니다.

  • 테스트 날짜: 2020년 4월 12일
  • 테스트된 기기 모델 수: 28
  • 테스트 대상 기기 제조업체 수: 10개
  • 기기 출시 기간: 테스트 날짜로부터 최대 18개월 전
  • 성능 지도에서 관찰된 햅틱 효과는 다음과 같습니다.

    • VibrationEffect.EFFECT_CLICK(효과 1)
    • VibrationEffect.createOneShot(효과 2)
    • VibrationEffect.createWaveform(효과 3)
  • 가격 등급 세분화

    • 높음(600달러(USD) 이상)
    • 보통 (300~600달러)
    • 저렴(최대 300달러(USD))
  • 실패 사례

    • F01: 햅틱 상수가 구현되지 않았습니다. 분석할 신호가 없습니다.
    • F02: 신호 진폭이 너무 작아서 분석하거나 인간이 인식할 수 없습니다. MATLAB 오류입니다.
    • F03-1: 신호 진폭이 너무 약하여 사람이 분석하거나 인식할 수 없습니다. PRR 값이 0보다 작습니다(< 0).
    • F03-2: 신호 진폭이 너무 약하여 사람이 분석하거나 인식할 수 없습니다. 진폭 값이 0.1보다 작습니다(< 0.1).
    • F04: 첫 번째 가속 단계가 누락되었습니다. 전반부에는 신호가 없습니다.
    • F05: 두 단계 간에 가속도가 증가하지 않습니다. 가속도 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
  • F01로 인해 14.3% 의 기기가 실패함 (햅틱 상수가 구현되지 않음)
EFFECT_CLICK(효과 1)의 실적 지도를 채우는 데이터
기기 ID 가격 등급 액추에이터 유형 통과/실패 피크 기간 (밀리초) 최대 진폭 (g) PRR FOM
기초 높음 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.980 0.98 21.75 1월 9일
#104 높음 X-LRA 통과 22.67 1.16 2020년 2월 0.88
#105 높음 X-LRA 통과 10.96 1.30 23:62 2.16
#106 높음 Z-LRA 통과 2013년 3월 1.11 24.15 1:20
#107 높음 Z-LRA 통과 49:31 0.79 6월 20일 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월 1일 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 2016년 16월 0.12
#121 보통 Z-LRA 통과 51.69 0.55 2014년 17월 0.33
#122 보통 X-LRA Fail (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
  • F02 또는 F03-2로 인해 10.7% 의 기기 실패 (신호 진폭이 너무 약해 사람이 분석하거나 인지할 수 없음)
createOneShot 성능 테이블을 채울 데이터 (효과 2)
기기 ID 가격 등급 액추에이터 유형 통과/실패 피크 기간 (밀리초) 최대 진폭 (g) PRR FOM
#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 : ERM 실패(F02, F03-1) 해당 사항 없음 해당 없음 해당 없음 해당 사항 없음
#212 높음 Z-LRA 통과 43.71 1월 3일 2014년 4월 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월 3일 26.97 0.64
#218 보통 Z-LRA 통과 26.38 0.42 24:74 0.94
#219 보통 Z-LRA 통과 46.77 1월 1일 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 2023년 17월 0.30
#223 낮음 ERM Fail (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을 생성했습니다.
  • F04 (10.7%, 가속 1에 관한 신호 없음) 또는 F05 (57.1%, 가속 1과 가속 2 간에 예상 차이 없음)로 인해 67.9% 기기가 실패함
createWaveform의 성능 테이블을 채울 데이터 (효과 3)
기기 ID 가격 등급 액추에이터 유형 통과/실패 가속화 1 (50%) 가속 2 (100%) 가속 비율 델타
#301 높음 X-LRA 통과 1월 19일 2월 2일 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월 7일
#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 Fail (F04) 0.00 1.36 1.36 1.36
#311 높음 X-LRA Fail (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 Fail (F05) 0.64 0.65 1.01 0.01
#315 높음 ERM : ERM Fail (F05) 0.96 0.95 0.99 -0.01
#316 높음 Z-LRA Fail (F05) 0.40 0.40 1.00 0.00
#317 높음 Z-LRA 실패(F05) 0.60 0.58 0.98 -0.01
#318 높음 Z-LRA Fail (F05) 0.30 0.30 1.00 0.00
#319 높음 Z-LRA Fail (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 Fail (F05) 0.95 1월 2일 1.07 0.06
#323 낮음 ERM Fail (F05) 0.86 0.88 1월 1일 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월 2일 0.02
#327 낮음 Z-LRA Fail (F05) 0.47 0.47 1.00 0.00
#328 낮음 Z-LRA Fail (F05) 0.51 0.56 1.09 0.04

효과 1 실적 맵 3

그림 8. 효과 3의 실적 지도(통과/실패 기준)