Partilhar via


Como medir a latência de movimento panorâmico de toque

Este tópico fornece instruções detalhadas de instalação e procedimentos para medir a latência de movimento panorâmico por toque de acordo com a Certificação de Hardware para Windows 8.1. Ele pressupõe que o leitor esteja familiarizado com telas sensíveis ao toque, entenda o conceito de latência de tela sensível ao toque e tenha compreensão básica da engenharia elétrica e de software.

Visão geral

Latência é uma medida de atraso de tempo que é experimentada no sistema de digitalizador de toque. A latência de retoque é o tempo entre o dedo ou a caneta (atuador) tocando na tela e o sistema operacional host recebendo o contato (geralmente por meio de um relatório HID). A latência de movimento panorâmico é um pouco mais complicada porque o contato está se movendo em um caminho contínuo, mas os relatórios chegam em intervalos de tempo discretos. Portanto, a latência de movimento panorâmico é definida apenas em termos de intervalos de tempo discretos para os quais os dados de toque relatados estão disponíveis. Medir a latência de movimento panorâmico é reduzido para saber o atraso de tempo entre quando o toque realmente ocorre e quando o sistema operacional recebe o evento de toque.

Metodologia

Este tópico descreve a configuração e os procedimentos para medir a latência de movimento panorâmico de um dispositivo de hardware touch usando um motor de etapa e um interrompidor de fotos. O motor de etapa conduz um braço mecânico para conduzir um atuador que simula um dedo humano. O atuador desenha um círculo no dispositivo testado e o circuito de interrupção de foto detecta quando o atuador está em um determinado ponto de controle. Essas informações são enviadas para o computador host usando um microcontrolador e o aplicativo de teste calcula a latência com base em quando o dispositivo relata um evento de toque e quando o atuador realmente faz contato. O diagrama a seguir mostra o conceito geral.

medindo a latência de movimento panorâmico

Requisitos de hardware

Esta seção descreve os componentes de hardware necessários para medir a latência de movimento panorâmico.

Motor de etapa e interrupção de foto

A ferramenta de medição consiste em um motor de etapa, um interrompidor de fotos, um braço giratório e um atuador e uma caixa de controle, que é visível na tela de fundo da figura a seguir.

ferramenta de medição

A caixa de controle tem três comutadores de controle e um comutador de energia.

  • Motor: para ativar e desativar o braço do motor de etapa.

  • Calibrar: não usado para latência de movimento panorâmico – desative-o. (Usado apenas para latência de retoque.)

  • Modo: alterne entre Tach (refere-se ao interrompidor de fotos usado para medição de latência de movimento panorâmico) e Microfone (microfone usado para medir a latência de retoque).

interface ra

Para medição de latência de movimento panorâmico, as configurações iniciais devem ser as seguintes:

Nome da opção Estado

Energia

Desativado

Motora

Desativado

Calibrar

Desativado

Mode

Taq

Ligue a caixa de controle depois de conectar o USB ao computador. Conectar USB após ligar a caixa de controle pode resultar em um estado imprevisível do microcontrolador.

Configurações do motor de estepe

O motor de estepe pode ser programado para ser executado de várias maneiras. Por padrão, o motor de estepe é programado para ser executado em um modo de calibragem automatizado. (Esse modo é explicado com mais detalhes na seção "Modo de calibragem automatizado" posteriormente no documento.) O modo de calibragem automatizado foi projetado para minimizar erros de calibragem e variações de latência por calibragem manual.

Durante as fases de aquisição e coleta, o motor é executado a uma velocidade constante de 0,75 revoluções por segundo. As configurações do motor de estepe usadas para aquisição e fases de coleção são as seguintes:

  • AC (aceleração) = 0,167

  • DE (desaceleração) = 0,167

  • VE (velocidade) = 0,75

Usando essas configurações, o motor de etapa circula uma vez a cada 1,33 segundos.

Comprimento do braço

A velocidade angular difere, dependendo do raio do braço. Por exemplo, se o raio do círculo for de cerca de 5 cm, a velocidade será de ~25 cm por segundo. Para padronizar o procedimento de teste, o comprimento do braço deve ter um raio de 5 cm para atingir a velocidade de 25 cm por segundo. Uma tolerância de ±1 é permitida: ou seja, de 24 a 26 cm por segundo.

No caso de tablet menor, que tem até 10'' tamanho de exibição diagonal, o raio recomendado é de 3 cm em vez de 5 cm.

Posicionamento do braço

O ideal é abranger o maior número possível de áreas da tela executando o teste várias vezes em diferentes partes da tela. Espera-se que a latência em qualquer parte do digitalizador seja igual ou inferior à latência de destino (15 ms).

  1. Testar dispositivo com um teclado: se você estiver usando um dispositivo tablet, precisará de um teclado externo para concluir os procedimentos de teste.

  2. Coloque o dispositivo de teste em uma superfície sem deslizamento: coloque o dispositivo de teste de forma que ele não se mova durante o teste. Para um dispositivo pequeno, uma solução simples é colocá-lo sobre um bloco não deslizante, conforme mostrado na figura abaixo. Outra maneira é ter uma chave para manter o dispositivo firmemente no lugar.

  3. Nivelar o dispositivo de teste: o atuador foi projetado para minimizar o efeito do nivelamento para que o nivelamento não precise ser perfeito. No entanto, você deve garantir que a superfície do atuador (aproximadamente 9 mm de diâmetro) esteja tocando o dispositivo uniformemente e não esteja em uma borda.

  4. Feche todos os processos desnecessários do dispositivo de teste: como você está medindo o desempenho do sistema, feche todos os processos desnecessários do dispositivo de teste.

posicionamento do braço

Requisitos de software

O software necessário deve ser instalado e configurado pelo controlador de logotipo e pelo cliente. Se ele estiver em execução como autônomo, copie stepmotor.exe, wlklogannotation.dll e WTTLog.dll para uma pasta local.

Procedimento de teste para a ferramenta de RA triex

O procedimento de teste consiste em três etapas: calibragem, aquisição e coleta. No entanto, antes de iniciar o teste, você precisa nivelar o dispositivo. O ponto de nivelamento é alinhá-lo com o nível do motor girando em círculos. Se não estiver nivelado corretamente, o atuador não fará bons contatos com o digitalizador e os círculos desenhados pelo motor de etapa se tornarão irregulares e afetarão muito os números de latência no final. Os métodos de verificação serão incluídos para falhar no teste se o dispositivo não estiver nivelado ou alinhado corretamente.

Calibração

Ao iniciar stepmotor.exe, você verá uma tela em branco. Pressione a tecla de espaço para iniciar a calibragem. A finalidade da calibragem é localizar a posição relatada de um toque dentro de uma estimativa de erro tolerável quando o interrompidor de foto é sinalizado. Como os resultados da calibragem podem afetar muito os números de latência, é importante calibrar cuidadosamente.

Instalação

  1. Conecte o microcontrolador ao computador.

  2. Ative o comutador De energia da caixa de controle.

    Nome da opção Estado

    Energia

    Ativado

    Motora

    Desativado

    Calibrar

    Desativado

    Mode

    Taq

  3. Verifique se a opção Motor está desativada.

  4. Verifique se o interrompidor de fotos não está sinalizando (a luz do interrompidor de fotos está desligada). O slot do disco deve ser posicionado cerca de 2 a 3 mm após o feixe de sinal de interrupção de foto.

    Há duas razões para o posicionamento. Primeiro, quando você ligar o motor, o braço do motor tremerá ligeiramente. Quando isso acontecer, você não deseja que ele cruze o feixe e, portanto, faça o sinal de interrupção de foto. Em segundo lugar, quando você estiver executando um script de calibragem automatizado, essa é a posição em que o loop é iniciado e você deseja garantir que o final do loop (quando a calibragem começa) se alinhe corretamente para estar sob o interrompidor de foto. Se você estiver calibrando manualmente, essa ainda é uma boa posição para começar, portanto, você não precisa alterar nada.

    slot de calibragem

  5. Não mova ou baixe o braço até entrar na fase de calibragem.

  6. Execute stepmotor.exe. Se você estiver executando o programa por meio do Controlador HLK do Windows, selecione o computador e o teste de latência de movimento panorâmico para iniciar o teste.

  7. A seguinte mensagem de texto é exibida:

    Pressione a barra de espaço para iniciar o processo de calibragem.

  8. Pressione a barra de espaço. A palavra CALIBRAÇÃO aparece na tela.

  9. Baixe o atuador na superfície da tela.

Etapas de teste (automatizadas)

  1. Ligue o motor. O motor de estepe será executado em um modo de calibragem nove vezes.

  2. No final do modo de calibragem, ele será interrompido por cinco segundos. Siga as instruções na seção Aquisição deste tópico.

Etapas de teste (manual)

  1. Gire lentamente o braço na mesma direção em que o motor estará se movendo quando estiver ligado.

  2. Diminua a velocidade quase até o ponto de uma parada completa quando a agulha (ou o orifício) passa pelo interrompidor de fotos. (Observe que a velocidade máxima não deve exceder 1% da velocidade de aquisição/coleta; ou seja, se a velocidade de aquisição/coleta for de 25 cm/s, a velocidade de calibragem quando o slot passar pelo foto-interruptor deverá ser menor que 0,25 cm/s.)

  3. Gire cuidadosamente o braço para passar pelo interrompidor de fotos.

  4. Repita as etapas de 1 a 2 pelo menos seis vezes.

    Quando o sinal for interrompido, você deverá ver a foto-interrupção piscando e a janela de teste relatará o local exato da tela em que o atuador está fazendo um contato. Veja a seguir um resultado de exemplo:

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

Resultados esperados

Se a calibragem for executada com êxito, você não verá nenhuma mensagem de erro.

Aquisição

Durante a etapa de aquisição, a velocidade do motor de etapa e a forma do círculo são calculadas.

Instalação

Certifique-se de que o slot seja colocado o mais longe possível do interrompidor de fotos.

Etapas de teste

  1. Pressione a barra de espaço e ative o comutador motor ao mesmo tempo. O texto na tela deve ser alterado para AQUISIÇÃO.

  2. Deixe o dispositivo ser executado por aproximadamente dez loops.

  3. Pressione a barra de espaço novamente para entrar no modo COLEÇÃO.

Resultados esperados

A tela exibirá que o modo COLLECTION está ativo e mostrará os dados de aquisição. Ele mostra uma lista de tempo e velocidade calculadas para cada loop. Os primeiros loops poderão ser ignorados se o motor da etapa tremulasse e mostrasse resultados ruins. Um texto de exemplo é o seguinte:

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

Isso informa:

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

Coleção

A coleta de dados representa a etapa final do teste.

Instalação

Verifique se a palavra COLEÇÃO aparece na parte superior da tela. Se a palavra CALIBRAÇÃO permanecer depois que você pressionar a barra de espaço, ocorrerá um erro. Você precisará executar o teste novamente.

Etapas de teste

  1. Deixe o motor correr cerca de dez loops.

  2. Pressione a barra de espaço para concluir o teste.

  3. Desative o comutador motor.

Resultados esperados

Você verá resultados aprovados ou com falha.

resultados da coleção

Procedimento de teste para a ferramenta DE RA de ITRI

O procedimento para executar a ferramenta de Latência de Movimento Panorâmico de Toque na ferramenta DE RA itri é ligeiramente diferente da execução do teste com a ferramenta ra triex. O teste em si permanece o mesmo e contém o mesmo conjunto de etapas de Calibragem, Aquisição e Coleção. As etapas para executar o teste com ITRI são as seguintes:

  1. Chassi de RA

    ferramenta itri ra

    Observe que, no caso da ferramenta ITRI RA, o comutador calibrado tem três posições: ativado, desativado e home, que é a posição central.

  2. Para começar, as opções devem ser as seguintes:

    Nome da opção Estado

    Energia

    Ativado

    Motora

    Desativado

    Calibrar

    Desativado (para baixo)

    Mode

    Movimento panorâmico

  3. Zero o sistema alterando os comutadores para o seguinte e permitindo que o motor gire o braço 45 graus. Quando concluído, desative o motor.

    Nome da opção Estado

    Energia

    Ativado

    Motora

    Desativado

    Calibrar

    Página Inicial (centro)

    Mode

    Movimento panorâmico (superior)

  4. Coloque o dedo de teste para baixo no dispositivo e pressione a barra de espaço para entrar na fase Calibragem. As opções agora são as seguintes:

    Nome da opção Estado

    Energia

    Ativado

    Motora

    Ativado

    Calibrar

    Em (superior)

    Mode

    Movimento panorâmico (superior)

  5. Permita que o teste seja executado após a contagem de 17, desative Motor e desative a opção Calibrar (posição mais baixa):

    Nome da opção Estado

    Energia

    Ativado

    Motora

    Desativado

    Calibrar

    Desativado (inferior)

    Mode

    Movimento panorâmico (superior)

  6. Pressione a barra de espaço e ligue o motor novamente para a fase aquisição.

  7. Depois que a tela mostrar um valor de contagem acima de 1999, pressione a barra de espaço. A exibição de teste mostrará o tempo do círculo do motor e a velocidade. Aguarde até que as informações de contato sejam coletadas na fase Coleção para aproximadamente dez loops e pressione a barra de espaço. Neste ponto, o sistema está concluído. Pressione a barra de espaço novamente e desligue o motor.

Análise e relatório

Análise

Se houver falhas na calibragem ou aquisição, o teste falhará e você poderá exibir detalhes da falha no relatório. Você verá um erro como o seguinte:

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

Relatório

A passagem ou falha é relatada por meio do HLK do Windows. Se você estiver executando o teste manualmente, poderá abrir o arquivo TabletDigitizerOPK.wtl no WTT ou no Bloco de Notas. A latência média de movimento panorâmico é registrada no final. A latência de destino é igual ou menor que 15 milissegundos.

Modo de calibragem automatizado

O modo de calibragem automatizado é o modo padrão para a ferramenta de RA. Ao executar o script, primeiro verifique se o motor de etapa está definido como 20000 etapas por revolução nas configurações do programador Q. Essa configuração pode ser definida usando a ferramenta configurador st. Vá para E/S de Movimento & e, em seguida, Controle de Direção do Pulso & .

st configurator (1)

st configurator (2)

Verifique se a configuração Etapas/Rev mostra 20000.

st configurator (3)

As configurações no lado direito também devem mostrar Etapas/Rev atualmente definidas para o motor de etapa.

st configurator (4)

Se as configurações estiverem corretas, o script de automação será executado em três modos em ordem sequencial:

  1. Modo de calibragem: quando você ativa o motor pela primeira vez, esse é o primeiro modo que ele será executado. Durante o modo de calibragem, o motor de etapa é executado a uma velocidade de 0,75 revoluções por segundo (cerca de 1,33 segundos por loop) por 339 graus a partir da posição inicial. Em seguida, ele para por 0,5 segundo antes de ser executado a uma velocidade de 0,0042 revoluções por segundo (menor velocidade possível para motor de estepe) para 21 graus. Enquanto o motor de estepe está em execução em uma velocidade muito baixa, o programa de teste (stepmotor.exe) correlaciona as posições e carimbos de data/hora dos contatos de toque relatados quando o feixe de interrupção de foto é interrompido.

    O exemplo a seguir é uma captura de tela da aparência do círculo. A parte do arco em que a seta está apontando é onde o motor de estepe é executado em uma velocidade lenta e onde o interrompidor de fotos deve estar sinalizando. É importante que o operador alinhe corretamente a posição inicial do disco: ou seja, o slot no disco deve estar cerca de 2 a 3 mm após o interrupção de foto.

    círculo do modo de calibragem

    Como referência, o seguinte descreve como esse arco de calibragem foi projetado:

    Parâmetro VE no Q-Programmer 0.0042

    Comprimento médio do arco do sinal de calibragem

    1,85 cm (com base na circunferência de 31,26 cm)

    Ângulo médio do sinal de calibragem

    0,37 radian (21,20 graus

    Tempo médio de sinal de calibragem

    12,50 segundos (incluindo 0,5 segundos de tempo de espera ao alterar a velocidade)

    Velocidade média do sinal de calibragem

  2. Cinco segundos de espera: após nove loops de calibragem, o motor parará por cinco segundos. Durante esse tempo, o operador deve pressionar a barra de espaço para entrar no modo aquisição.

  3. Modo de aquisição/coleta: após cinco segundos de espera, o motor será executado a uma velocidade de 0,75 revoluções por segundo (1,33 segundos por loop) infinitamente.

Solução de problemas

Calibração

Durante a calibragem, o programa de teste não pode calcular o local exato de um evento de toque quando o interrompidor de fotos é sinalizado. Portanto, é importante que você não introduza latência girando o braço muito rápido. Se houver um erro, você verá uma mensagem de erro na tela. Por exemplo:

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

Pare e investigue a causa antes de reiniciar o teste. Há alguns motivos comuns para a falha. Elas ocorrem porque o programa de teste não pode fazer bons cálculos do ponto de toque. Os erros são causados pelos seguintes motivos:

  • Você moveu o dedo (atuador) muito rápido quando o interrompidor de foto sinalizou.

  • O dispositivo foi movido.

Resolva esses problemas e tente novamente até obter uma boa calibragem. Outras coisas a ter em mente são:

  • Nunca vire o braço para o outro lado.

  • Mova o braço com muito cuidado ao passar pelo interrompidor de fotos, para minimizar o erro e a latência que você pode estar introduzindo.

  • Deve haver sempre dois sinais quando o interrompidor de fotos for interrompido. O primeiro sinal ocorre quando a luz passa pelo slot no final de uma borda. O segundo sinal ocorre quando a luz é bloqueada depois de passar pelo slot aberto. A contagem de índices é baseada em zero. Após a ocorrência de dois eventos, a contagem deve ser um número ímpar. Se você vir a mensagem a seguir quando tiver iniciado a calibragem e nem mesmo virou o braço, provavelmente virou o braço (portanto, o disco) ao redor do interrompidor de fotos pelo menos uma vez, fazendo com que ele sinalizasse. Isso fará com que a calibragem falhe automaticamente. Interrompa o teste imediatamente e reinicie.

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

Aquisição

Se a aquisição falhar, você verá uma mensagem de erro semelhante a uma das seguintes opções:

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

O primeiro tipo de erro é gerado quando a diferença média entre os tempos de loop é de mais de cinco milissegundos. O segundo tipo de erro ocorre quando os círculos não são desenhados como círculos perfeitos e, portanto, resultam em variações de pixel maiores que cinco pixels. As causas comuns para esse comportamento incluem o seguinte:

  • Um dispositivo mal nivelado ou calibrado incorretamente.

  • O dispositivo foi movido.

  • A velocidade do motor de etapa não é consistente. (Essa não é uma explicação provável porque é um dispositivo bem estabelecido e amplamente utilizado; no entanto, é possível que o motor esteja com defeito em seu dispositivo específico.)

Coleção

Deve haver poucos problemas durante a coleta se as etapas de calibragem e aquisição forem aprovadas. A maioria dos erros ocorre devido a fatores externos, como o dispositivo que está sendo movido, alguns outros processos interrompendo o programa de teste ou o próprio dispositivo falhando. Os operadores podem encontrar os três problemas comuns a seguir:

Problema 1: interferência de campo eletromagnético

Um erro pode resultar do efeito da força eletromagnética gerada pelo motor de estepe. Dependendo do dispositivo, isso pode ser manifestado de várias maneiras: por exemplo, pontos de toque fantasma sendo gerados. A solução para o problema é fornecer um bom terreno.

Problema 2: outros processos interrompem o programa de teste

Quando outro processo interrompe o processo de teste, ele geralmente corrompe o resultado do teste afetando negativamente os números de latência.

Você pode diagnosticar esse problema comparando intervalos de sinal do interrompidor de fotos. Examine o arquivo de csignal.txt, que contém os carimbos de data/hora do interrompidor de fotos. A segunda coluna mostra os carimbos de data/hora do sistema e a terceira coluna mostra os carimbos de data/hora do microcontrolador. Por exemplo:

[ 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

A última entrada no arquivo mostra o índice da primeira sequência de sinal válida. Uma "sequência de sinal válida" refere-se ao início das sequências de sinal quando o sistema se tornou estável. Entre aquisição e coleta, o programa de teste grava os resultados da aquisição em arquivos de log e, dependendo do desempenho do sistema, pode levar algum tempo para que ele se torne estável. No exemplo acima, o primeiro sinal era válido para que você pudesse começar a comparar os intervalos de carimbo de data/hora.

Você pode fazer intervalos de carimbo de data/hora observando a diferença entre os dois carimbos de data/hora numerados uniformes; ou exemplo, 0, 2, 4, 6 etc. Conforme mostrado na tabela a seguir, os sinais 4 e 6 são bem diferentes de outros intervalos de sinal. Portanto, sabemos que outro processo interrompeu o teste durante esse tempo. Em casos normais, você deve ver menos de 1% de diferença.

Índice Carimbo de data/hora Intervalo

0

431506434557

2

431492585219

1731471

4

431494316516

603776

6

431496047748

1127364

8

431497779297

1731354

10

431499509508

1731388

12

431501240620

1731288

Problema 3: Alterações na taxa de amostragem

Se um dispositivo alterar sua taxa de amostragem, ocorrerá uma variação significativa nos resultados de latência. Você pode diagnosticar esse problema comparando as taxas de amostragem de coleta e aquisição.

Você pode usar ferramentas externas para medir a taxa de amostragem de um dispositivo antes e depois que o motor foi ativado. Outro método é analisar os logs gerados por stepmotor.exe.

  1. Abra Acquisition.txt.

  2. Pegue os carimbos de data/hora da primeira e última linha (última coluna):

    581   660   709   602   199501901480
    581   805   512   602   199554132317
    
  3. Calcule a taxa de amostragem da aquisição da seguinte maneira:

    (Last timestamp - first timestamp) /number of samples (rows)
    
  4. Abra Collection.txt.

  5. Pegue os carimbos de data/hora da primeira e última linha (última coluna):

    581   822   423   602 [199554407006]
    581   288   164   602 [199594255626]
    
  6. Calcule a taxa de amostragem da coleção da seguinte maneira:

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

Se você vir mais de 2% de diferença entre os dois, os dados de coleta não serão confiáveis e você deverá investigar a causa.

Suporte adicional

Se for necessário suporte adicional, entre em contato com um dos seguintes fornecedores de jig certificados:

  • Triex Technologies, Inc.

    +1 (206) 940-0943

  • Instituto de Pesquisa em Tecnologia Industrial

    +886 (03) 5743887