Idioma: HTML | XAML

Escolhendo os sensores corretos a serem usados (HTML)

Applies to Windows and Windows Phone

Os sensores permitem ao seu aplicativo identificar a relação entre um dispositivo e o mundo físico ao redor dele. Os sensores podem informar ao aplicativo a direção, a orientação e o movimento do dispositivo. Esses sensores podem ajudar a melhorar a utilidade e a interatividade de jogos, aplicativos de realidade aumentada e aplicativos utilitários, fornecendo uma forma exclusiva de entrada – por exemplo, uso do movimento do dispositivo para organizar os caracteres na tela ou para simular que o usuário está em uma cabine e usando o dispositivo como o volante.

Como regra geral, decida desde o princípio se o seu aplicativo irá depender exclusivamente dos sensores ou se os sensores apenas oferecerão um mecanismo de controle adicional ao aplicativo. Por exemplo, um jogo de corrida usando um dispositivo como um volante virtual pode, alternativamente, ser controlado pela GUI na tela. Desse modo, o aplicativo funciona independentemente de os sensores estarem disponíveis no sistema. Por outro lado, um jogo do tipo marble tilt maze pode ser codificado para funcionar somente em sistemas que tenham os sensores apropriados. Você precisa decidir estrategicamente se irá depender dos sensores. Observe que um esquema de controle de mouse/toque lida com imersão para proporcionar um controle maior.

Acelerômetro

O sensor Accelerometer mede os valores da força G nos eixos X, Y e Z do dispositivo e é excelente para aplicativos simples baseados em movimento. Observe que os valores de força G incluem aceleração devido à gravidade. Se o dispositivo tiver SimpleOrientation de FaceUp em uma tabela, o acelerômetro lerá -1 G no eixo Z. Portanto, os acelerômetros não necessariamente medem apenas a aceleração coordenada – a taxa de alteração de velocidade. Ao usar um acelerômetro, lembre-se de diferenciar o vetor gravitacional da gravidade e o vetor de aceleração linear do movimento. Observe que o vetor gravitacional deve normalizar em 1 para um dispositivo imóvel.

O diagrama a seguir ilustra:

  • V1 = Vetor 1 = Força devido a gravidade
  • V2 = Vetor 2 = Eixo -Z do chassi do dispositivo (pontos da parte traseira da tela)
  • Θi = Ângulo de inclinação = ângulo entre o eixo –Z axis do chassi do dispositivo e o vetor de gravidade.

AcelerômetroMedição do acelerômetro

Os aplicativos que possivelmente usem um acelerômetro incluem um jogo em que uma bola de gude rola na tela, na direção em que o dispositivo é inclinado (vetor gravitacional). Esse tipo de funcionalidade espelha bastante bem a funcionalidade do Inclinometer e também pode ser usadas com esse sensor, por meio de uma combinação de rotação e rolagem. O uso do vetor de gravidade do acelerômetro simplifica um pouco isso ao fornecer um vetor manipulado matemática e facilmente para a inclinação do dispositivo. Outro exemplo é um aplicativo que faz um som de estalo de chicote quando o usuário sacode o dispositivo no ar (vetor de aceleração linear).

Girômetro

O sensor Gyrometer mede as velocidades angulares ao longo dos eixos X, Y e Z. Eles são muito úteis em aplicativos baseados em movimento simples que não levam em consideração a orientação do dispositivo, e sim a rotação do dispositivo em diferentes velocidades. Os girômetros podem ser afetados por ruídos nos dados ou por uma tendência constante ao longo de um ou mais eixos. Você deve consultar o acelerômetro para verificar se o dispositivo está se movimentando e assim determinar se o girômetro é afetado por uma tendência; então, faça a devida compensação no aplicativo.

Girômetro com rotação sobre o eixo x, rolagem e rotação sobre o eixo vertical

Um exemplo de aplicativo que poderia usar o sensor girômetro é um jogo que gira uma roleta com base em uma rápida sacudida rotacional do dispositivo.

Bússola

O sensor Compass retorna uma direção 2D em relação ao Norte magnético, baseado no plano horizontal da terra. O sensor da bússola não deve ser usado para determinar a orientação específica do dispositivo ou para fazer representações no espaço 3D. Os recursos geográficos podem causar declinação na direção, então alguns sistemas dão suporte para ambos HeadingMagneticNorth e HeadingTrueNorth. Pense em qual é a preferencial para o seu aplicativo, mas lembre-se de que nem todos os sistemas irão reportar o valor de Norte verdadeiro. Os sensores do girômetro e o magnetômetro (um dispositivo que mede a amplitude da força magnética) combina seus dados para produzir a direção da bússola, que tem um efeito líquido de estabilização dos dados (a força do campo magnético é muito instável, devido aos componentes do sistema elétrico).

As leituras da bússola com relação ao Polo Norte magnético.

Os aplicativos que devem exibir uma bússola ou navegar em um mapa geralmente usam um sensor de bússola.

Inclinômetro

O sensor Inclinometer especifica que os valores de rotação sobre o eixo vertical, rolagem e rotação sobre o eixo x de um dispositivo e funciona melhor com aplicativos que levam em consideração como o dispositivo está situado no espaço. A rotação sobre o eixo x e a rolagem são derivadas ao se tomar o vetor de gravidade do acelerômetro e ao integrar os dados do girômetro. A rotação sobre o eixo vertical é estabelecida a partir dos dados do magnetômetro e do girômetro (semelhante à direção da bússola). Os inclinômetros oferecem dados de orientação avançados de uma maneira fácil e compreensível. Usar inclinômetros quando precisar da orientação do dispositivo, mas não precisar manipular os dados do sensor.

Inclinômetro com rotação sobre o eixo x, rolagem e rotação sobre o eixo vertical

Os aplicativos que alteram sua exibição para corresponder à orientação do dispositivo podem usar o sensor do inclinômetro. Além disso, um aplicativo que exbe um avião que corresponde à rotação sobre o eixo x, rotação sobre o eixo vertical e rolagem do dispositivo devem usar também as leituras do inclinômetro.

Sensor de orientação

A orientação do dispositivo é expressa através das matrizes de quaternião e rotação. O OrientationSensor oferece um alto grau de precisão na determinação de como o dispositivo está situado no espaço com relação à direção absoluta. Os dados de OrientationSensor são derivados do acelerômetro, girômetro e magnetômetro. Assim, ambos os sensores de bússola e inclinômetro podem ser derivados dos valores de quaternião. As matrizes de quaternião e rotação se prestam muito bem à manipulação matemática avançada e são frequentemente usados na programação gráfica. Aplicativos que usam manipulação complexa devem se beneficiar do sensor de orientação, pois muitas transformações são extraídas das matrizes de quaternião e rotação.

Dados do sensor de orientação

O sensor de orientação é geralmente usado nos aplicativos de realidade aumentada que criam uma sobreposição no ambiente ao redor, com base na direção apontada pela parte traseira do dispositivo.

Orientação simples

O SimpleOrientationSensor detecta a orientação quadrante atual do dispositivo especificado ou seu enquadramento de frente ou enquadramento para baixo. Há seis possíveis estados do SimpleOrientation (NotRotated, Rotated90, Rotated180, Rotated270, FaceUp, FaceDown).

Um aplicativo de leitura que altera sua exibição com base no dispositivo sendo segurado em paralelo ou perpendicular ao chão usará os valores de SimpleOrientationSensor para determinar como o dispositivo está sendo segurado.

Tópicos relacionados

Dados do sensor e orientação de exibição

 

 

Mostrar:
© 2014 Microsoft