2010-06-25 12 views

risposta

9

In base alla scheda tecnica dell'accelerometro LIS302DL, consuma ~ 0,75 mWatt di potenza a un tasso di aggiornamento di 100 Hz e 0,0025 mWatt di potenza quando in modalità stand-by (cioè, senza letture in atto).

Quindi, la risposta breve è "Sì", ma in cima alla mia testa, non posso mettere quei numeri in prospettiva per darti un'idea di, "quanti minuti di tempo" prosciugano dalla batteria.

La mia raccomandazione sarebbe di fare un po 'di test. Trova il tasso di aggiornamento più basso che fornisce risultati soddisfacenti.

1
+0

Ah, grazie. :) Sai quante volte al secondo si aggiorna di solito quando non si tocca il -setUpdateInterval: metodo? –

+0

Sto facendo una rapida ricerca su google per darti una risposta veloce. Tuttavia, non conosco il tasso di aggiornamento predefinito. Suggerirei di aggiornarlo alla stessa velocità del framerate. Perché penso che sarebbe saggio aggiornare lo schermo allo stesso tempo non appena si ottengono nuovi dati sull'accelerometro. – VOX

2

Dal Event Handling Guide for iPhone OS:

Quando si configura l'intervallo di aggiornamento per gli eventi di accelerazione, è meglio scegliere un intervallo che riduce al minimo il numero di eventi consegnati e ancora soddisfa le esigenze della vostra applicazione. Poche applicazioni richiedono accelerazione eventi consegnati 100 volte al secondo. L'uso di una frequenza più bassa impedisce che l'applicazione venga eseguita più spesso e pertanto può migliorare la durata della batteria.

Secondo questo, la parte più costosa di avere una frequenza di aggiornamento elevata può essere il fatto che l'applicazione deve elaborare ciascuno di tali eventi accelerometrici, piuttosto che al minimo per un periodo più lungo.

Inoltre, dal iPhone Application Programming Guide:

Se si utilizza la classe UIAccelerometer a ricevere regolarmente eventi accelerometro , disabilitare la consegna di tali eventi quando non hai bisogno di loro. Analogamente, impostare la frequenza della consegna dell'evento sul valore più piccolo che sia adatto alle proprie esigenze.

+1

Ulteriori informazioni su come "disabilitare la consegna di tali eventi" dalla Guida alla gestione degli eventi sopraindicata: "Per interrompere la consegna degli eventi di accelerazione, impostare su zero il delegato dell'oggetto UIAccelerometro condiviso. nil fa sapere al sistema che può spegnere l'hardware dell'accelerometro secondo necessità e quindi risparmiare la durata della batteria. " –

15

Dati i numeri nella risposta accettata, l'utilizzo di energia da parte dell'accelerometro reale è banale. Il tuo vero successo verrà dalla tua app che deve elaborare gli eventi e fare in modo che la CPU non dorma più spesso.

Il 3GS ha una batteria da 4,51 Watt. Scarico solo dell'accelerometro quando si esegue a 100 Hz uccidere la batteria in (circa) 6000 ore (supponendo che il valore 0,75 mW sia corretto)

(Inoltre, l'iPhone 4 ha una batteria da 5,25 Watt-ora, 4S 5,3 Whr e 5 5.45 Wh, se siete curiosi)

Problemi correlati