Поделиться через


Как измерить задержку сдвига касания

В этом разделе приведены подробные инструкции по настройке и процедуры для измерения задержки сдвига касания в соответствии с сертификацией оборудования для Windows 8.1. Предполагается, что читатель знаком с сенсорными экранами, понимает концепцию задержки сенсорного экрана и имеет базовое представление о электротехнике и программном обеспечении.

Источники данных в Azure Monitor

Задержка — это мера задержки времени, которая испытывается в системе сенсорного дигитизатора. Задержка касания касания экрана — это время между пальцем или пером (актатором), касающимся экрана, и операционной системой узла, получающей контакт (обычно через отчет HID). Задержка сдвига немного сложнее, так как контакт перемещается вдоль непрерывного пути, но отчеты приходят в дискретные интервалы времени. Таким образом, задержка сдвига определяется только с точки зрения дискретных интервалов времени, для которых доступны данные касания. Затем измерение задержки сдвига уменьшается до того, чтобы узнать время задержки между фактическим касанием и когда операционная система получает событие касания.

Методологии

В этом разделе описываются процедуры настройки и процедуры для измерения задержки сдвига сенсорного оборудования с помощью шагового двигателя и фото-прерывания. Шаговый двигатель управляет механическим рукой, чтобы управлять актуатором, который имитирует человеческий палец. Актуатор рисует круг на тестируемом устройстве, а канал фото-прерывания обнаруживает, когда актуатор находится в определенной контрольной точке. Эти сведения отправляются на главный компьютер с помощью микроконтроллера, а тестовое приложение вычисляет задержку на основе того, когда устройство сообщает сенсорное событие и когда актуатор фактически делает контакт. На следующей схеме показана общая концепция.

measuring panning latency

Требования к оборудованию

В этом разделе описываются аппаратные компоненты, необходимые для измерения задержки сдвига.

Шаговый двигатель и фото-прерывание

Средство измерения состоит из шагового двигателя, фото-прерывания, вращающегося руки и актуатора, а также элемента управления, который отображается на фоне следующего рисунка.

measuring tool

В элементе управления есть три управляемых коммутатора и коммутатор питания.

  • Двигатель: Включить и отключить шаг моторной рукой.

  • Калибровка: не используется для задержки сдвига — отключите его. (Используется только для задержки касания.)

  • Режим: переключение между Tach (относится к фото-прерыванию, используемому для измерения задержки сдвига) и Микрофон (микрофон, используемый для измерения задержки касания).

ra interface

Для измерения задержки сдвига начальные параметры должны быть следующими:

Имя переключателя State

Power

Выключено

Двигателя

Выключено

Калибровки

Выключено

Режим

Тахометр

После подключения USB-устройства к компьютеру включено питание. Подключение через USB после питания в окне управления может привести к непредсказуемому состоянию микроконтроллера.

Параметры мотора stepper

Ступенчатый двигатель может быть запрограммирован для запуска различными способами. По умолчанию ступенчатый двигатель запрограммирован для запуска в автоматическом режиме калибровки. (Этот режим более подробно описан в разделе "Автоматический режим калибровки" далее в документе.) Автоматический режим калибровки предназначен для минимизации ошибок калибровки и вариантов задержки путем ручной калибровки.

Во время этапов приобретения и сбора двигатель работает на постоянной скорости 0,75 революции в секунду. Параметры шагового двигателя, используемые для этапов приобретения и сбора, приведены ниже.

  • AC (ускорение) = 0,167

  • DE (замедление) = 0,167

  • VE (скорость) = 0,75

С помощью этих параметров шаг двигатель окружает один раз каждые 1,33 секунды.

Длина руки

Угловая скорость отличается в зависимости от радиуса руки. Например, если радиус круга составляет около 5 см, скорость составляет ~25 см в секунду. Чтобы стандартизировать процедуру тестирования, длина руки должна иметь радиус 5 см, чтобы достичь скорости в 25 см в секунду. Допускается допустимость ±1: то есть от 24 до 26 см в секунду.

В случае меньшего размера планшета, размер диагонали которого составляет до 10'', рекомендуемый радиус составляет 3 см вместо 5 см.

Положение руки

В идеале следует охватывать как можно больше областей экрана, выполняя тест несколько раз в разных частях экрана. Ожидается, что задержка в любой части дигитайзера равна или ниже целевой задержки (15 мс).

  1. Тестирование устройства с помощью клавиатуры: если вы используете планшетное устройство, для выполнения процедур тестирования потребуется внешняя клавиатура.

  2. Поместите тестовое устройство на нескользящую поверхность: поместите тестовое устройство таким образом, чтобы он не перемещается во время тестирования. Для небольшого устройства простое решение заключается в том, чтобы поместить его на вершину нескользящей панели, как показано на рисунке ниже. Другой способ заключается в том, чтобы иметь фигурную скобку, чтобы держать устройство твердо на месте.

  3. Уровень тестового устройства: актатор предназначен для минимизации эффекта выравнивания, поэтому выравнивание не должно быть идеальным. Однако следует убедиться, что поверхность актатора (около 9 мм в диаметре) касается устройства равномерно и не стоит на одном краю.

  4. Закройте все ненужные процессы с тестового устройства: так как вы измеряете производительность системы, закройте все ненужные процессы с тестового устройства.

arm positioning

Требования к программному обеспечению

Необходимое программное обеспечение должно быть установлено и настроено контроллером логотипа и клиентом. Если он выполняется как автономный, скопируйте stepmotor.exe, wlklogannotation.dll и WTTLog.dll в локальную папку.

Процедура тестирования для средства Triex RA

Процедура тестирования состоит из трех этапов: калибровки, приобретения и сбора. Прежде чем приступить к тестированию, необходимо выровнить устройство. Точка выравнивания заключается в том, чтобы выровнять его с уровнем двигателя, вращающегося в кругах. Если он не выровнен должным образом, актатор не сделает хорошие контакты с дигитайзером и круги, нарисованные на шаге мотором, станут нерегулярными и значительно повлияют на числа задержки в конце. Методы проверки включаются для сбоя теста, если устройство неправильно выровнено или выровнено.

Калибровки

При запуске stepmotor.exe появится пустой экран. Нажмите клавишу ПРОБЕЛ, чтобы начать калибровку. Цель калибровки — найти сообщаемую позицию касания в допустимой оценке ошибки при сигнале фото-прерывания. Так как результаты калибровки могут значительно повлиять на числа задержки, важно тщательно выполнить калибровку.

Настройка

  1. Подключение микроконтроллер на компьютер.

  2. Включите переключатель Питания элемента управления.

    Имя переключателя State

    Power

    Вкл

    Двигателя

    Выключено

    Калибровки

    Выключено

    Режим

    Тахометр

  3. Убедитесь, что переключатель двигателя отключен.

  4. Убедитесь, что фото-прерывание не сигнализирует (свет фото-прерывания отключен). Слот диска должен располагаться примерно на 2–3 мм мимо сигнального сигнала фото-прерывания.

    Существует две причины для позиционирования. Во-первых, когда вы включите двигатель, рука двигателя будет немного сорить. Когда это делает, вы не хотите, чтобы он пересекает луч и, следовательно, сделать сигнал фото-прерывания. Во-вторых, при запуске скрипта автоматической калибровки это положение, в котором начинается цикл, и вы хотите убедиться, что конец цикла (при начале калибровки) выравнивается правильно, чтобы находиться под фото-прерыванием. Если вы вручную калибровки, это по-прежнему хорошая позиция, чтобы начать так, вы не должны ничего изменить.

    calibration slot

  5. Не двигайтесь или низайте руку, пока не войдете в этап калибровки.

  6. Запустите stepmotor.exe. Если программа выполняется с помощью контроллера Windows HLK, выберите компьютер и тест задержки сдвига, чтобы запустить тест.

  7. Появится следующее текстовое сообщение:

    Нажмите пробел, чтобы запустить процесс калибровки.

  8. Нажмите пробел. На экране появится слово CALIBRATION .

  9. Понизите актуатор на поверхность экрана.

Этапы тестирования (автоматизированные)

  1. Включите двигатель. Шаговой двигатель будет работать в режиме калибровки девять раз.

  2. В конце режима калибровки она остановится в течение пяти секунд. Следуйте инструкциям в разделе "Приобретение " этого раздела.

Этапы тестирования (вручную)

  1. Медленно повернуть руку в том же направлении, в котором двигатель будет двигаться, когда он включен.

  2. Уменьшите скорость почти до точки полной остановки, когда игла (или отверстие) проходит через фото-прерывание. (Обратите внимание, что максимальная скорость не должна превышать 1% скорости приобретения и сбора, то есть, если скорость приобретения/сбора составляет 25 см/с, скорость калибровки при прохождении слота через фото-прерывание должно быть меньше 0,25 см/с.)

  3. Тщательно повернуть руку, чтобы пройти через фото прерывание.

  4. Повторите шаги 1–2 по крайней мере шесть раз.

    Когда сигнал прерван, вы увидите, что фото-прерывание мигает, и окно теста сообщит о точном расположении экрана, где актуатор делает контакт. Ниже приведен пример результата.

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

Ожидаемые результаты

Если калибровка выполнена успешно, сообщения об ошибках не отображаются.

Приобретение

На этапе приобретения скорость шага и форма круга вычисляются.

Настройка

Убедитесь, что слот помещается как можно далеко от фото-прерывания.

Этапы тестирования

  1. Нажмите пробел и включите переключатель двигателя одновременно. Текст на экране должен измениться на ACQUISITION.

  2. Пусть устройство выполняется примерно на десять циклов.

  3. Снова нажмите пробел, чтобы перейти в режим COLLECTION.

Ожидаемые результаты

На экране отображается активный режим COLLECTION и отображаются данные о приобретении. В нем отображается список времени и скорости, вычисляемых для каждого цикла. Первые несколько циклов могут быть пропущены, если шаг двигателя сорвал и показал плохие результаты. Пример текста выглядит следующим образом:

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

Это говорит вам:

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

Коллекции

Сбор данных представляет собой последний шаг для теста.

Настройка

Убедитесь, что слово COLLECTION отображается в верхней части экрана. Если слово CALIBRATION остается после нажатия пробела, произошла ошибка. Вам потребуется снова запустить тест.

Этапы тестирования

  1. Пусть двигатель работает около десяти циклов.

  2. Нажмите пробел, чтобы завершить тест.

  3. Отключите переключатель двигателя.

Ожидаемые результаты

Вы увидите результаты передачи или сбоя.

collection results

Процедура тестирования для средства RA ДЛЯ ITRI

Процедура запуска средства задержки сенсорного сдвига на средстве RA ITRI немного отличается от выполнения теста с помощью средства Triex RA. Сам тест остается неизменным и содержит один и тот же набор шагов калибровки, приобретения и сбора. Ниже приведены действия по выполнению теста с ПОМОЩЬЮ ITRI.

  1. Шасси RA

    itri ra tool

    Обратите внимание, что в случае средства ITRI RA переключатель калибровки имеет три позиции: включено, выключение и дома, которое является положением центра.

  2. Чтобы начать, параметры должны быть следующими:

    Имя переключателя State

    Power

    Вкл

    Двигателя

    Выключено

    Калибровки

    Выкл. (вниз)

    Режим

    Панорамирование

  3. Ноль системы, изменив переключатели на следующие и позволяя мотору повернуть руку 45 градусов. После завершения включите двигатель в OFF.

    Имя переключателя State

    Power

    Вкл

    Двигателя

    Выключено

    Калибровки

    Главная (центр)

    Режим

    Сдвиг (верхний)

  4. Поместите палец теста вниз на устройство и нажмите пробел, чтобы перейти на этап калибровки. Теперь коммутаторы приведены следующим образом:

    Имя переключателя State

    Power

    Вкл

    Двигателя

    Вкл

    Калибровки

    В (верхний)

    Режим

    Сдвиг (верхний)

  5. Разрешите тесту выполняться мимо количества 17, а затем отключить двигатель и отключить переключатель Calibrate (наименьшая позиция):

    Имя переключателя State

    Power

    Вкл

    Двигателя

    Выключено

    Калибровки

    Выкл. (вниз)

    Режим

    Сдвиг (верхний)

  6. Нажмите пробел и включите двигатель обратно на этапе приобретения.

  7. После отображения значения счетчика более 1999 нажмите клавишу ПРОБЕЛ. На экране теста отображается время круга двигателя и скорость. Дождитесь сбора контактных данных на этапе сбора около десяти циклов, а затем нажмите пробел. На этом этапе система завершена. Снова нажмите пробел и отключите двигатель.

Анализ и отчет

Анализа

Если в отчете возникают сбои калибровки или приобретения, тест завершится ошибкой, и вы можете просмотреть сведения о сбое в отчете. Вы увидите сообщение об ошибке, например следующее:

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

Отчет

Передача или сбой передается через Windows HLK. Если тест выполняется вручную, можно открыть файл TabletDigitizerOPK.wtl в WTT или в Блокнот. Средняя задержка сдвига регистрируется в конце. Целевая задержка равна или меньше 15 миллисекундам.

Автоматический режим калибровки

Автоматический режим калибровки — это режим по умолчанию для средства RA. При запуске скрипта сначала убедитесь, что на шаговый двигатель установлен 20000 шагов на революцию в параметрах программиста Q. Эту конфигурацию можно задать с помощью средства ST Configurator. Перейдите к движениям и ввода-выводам, а затем пульс и управление направлением.

st configurator (1)

st configurator (2)

Убедитесь, что в параметре "Шаги/ред" отображается значение 20000.

st configurator (3)

Параметры на правой стороне также должны отображать шаги/ред в данный момент для двигателя шага.

st configurator (4)

Если параметры правильны, скрипт автоматизации будет выполняться в трех режимах последовательно:

  1. Режим калибровки: при первом включении двигателя это первый режим, который будет выполняться. Во время калибровки двигатель шага работает со скоростью 0,75 революций в секунду (около 1,33 секунды в цикле) на 339 градусов от начальной позиции. Затем он останавливается на 0,5 секунды, прежде чем он работает на скорости 0,0042 революции в секунду (наименьшая возможная скорость для шагового двигателя) на 21 градусов. Хотя шаговый двигатель работает на очень низкой скорости, программа тестирования (stepmotor.exe) сопоставляет позиции и метки времени от сообщаемых сенсорных контактов при прерывании луча фото-прерывания.

    В следующем примере показан снимок экрана о том, как будет выглядеть круг. Арка, где стрелка указывает на то, где шаговой двигатель работает в медленной скорости и где фото прерватель должен сигнализировать. Важно, чтобы оператор правильно выравнивал начальную позицию диска: то есть слот на диске должен быть около 2-3 мм после фото-прерывания.

    calibration mode circle

    В качестве ссылки ниже описывается, как эта арка калибровки разработана:

    Параметр VE в Q-Programmer 0.0042

    Средняя длина дуги сигнала калибровки

    1,85 см (на основе 31,26 см окружности)

    Средний угол сигнала калибровки

    0.37 радиан (21,20 градуса

    Среднее время сигнала калибровки

    12,50 секунд (включая 0,5 секунд ожидания при изменении скорости)

    Средняя скорость сигнала калибровки

  2. Пять секунд ожидания: после девяти циклов калибровки двигатель остановится на пять секунд. В течение этого времени оператор должен нажать пробел, чтобы войти в режим приобретения.

  3. Режим приобретения и сбора: через пять секунд ожидания двигатель будет работать с скоростью 0,75 революций в секунду (1,33 секунды за цикл) бесконечно.

Устранение неполадок

Калибровки

Во время калибровки тестовая программа не может вычислить точное расположение события касания при сигнале фото-прерывания. Поэтому важно не вводить задержку, закручивая руку слишком быстро. При возникновении ошибки на экране появится сообщение об ошибке. Например:

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

Остановите и изучите причину перед перезапуском теста. Существует несколько распространенных причин сбоя. Они происходят, так как тестовая программа не может сделать хорошие вычисления точки касания. Ниже приведены причины:

  • Вы переместили палец (актуатор) слишком быстро, когда фото прерыватель сигналировал.

  • Устройство было перемещено.

Устраните эти проблемы и повторите попытку, пока не получите хорошую калибровку. Следует учитывать следующие особенности:

  • Никогда не поворачивайте руку в другую сторону.

  • Переместите руку очень осторожно при передаче через фото-прерывание, чтобы свести к минимуму ошибку и задержку, которую вы можете ввести.

  • Всегда должно быть два сигнала при прерывании фото-прерывания. Первый сигнал возникает, когда свет проходит через слот в конце края. Второй сигнал возникает, когда свет блокируется после передачи через открытый слот. Число индексов — отсчитывается от нуля. После двух событий число должно быть нечетным. Если вы видите следующее сообщение, когда вы только что начали калибровку и даже не повернули руку, вероятно, повернул руку (поэтому диск) вокруг фото-прерывания по крайней мере один раз, вызвав его сигнал. Это приведет к сбою калибровки. Остановите тест немедленно и перезапустите его.

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

Приобретение

При сбое приобретения появится сообщение об ошибке, аналогичное одному из следующих:

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

Первый тип ошибки создается, когда среднее различие между временем цикла составляет более пяти миллисекунда. Второй тип ошибки возникает, когда круги не рисуются как идеальные круги и поэтому приводят к вариациям пикселей, превышающим пять пикселей. Ниже приведены распространенные причины этого поведения.

  • Неправильное выравнивание или неправильное калибровка устройства.

  • Устройство было перемещено.

  • Скорость шагового двигателя не согласована. (Это не вероятное объяснение, потому что это хорошо установленное, широко используемое устройство; тем не менее, возможно, что двигатель дефектен на конкретном устройстве.)

Коллекции

При прохождении шагов калибровки и приобретения во время сбора должно быть мало проблем. Большинство ошибок обусловлены внешними факторами, такими как перемещение устройства, некоторые другие процессы прерывания тестовой программы или само устройство завершается ошибкой. Операторы могут столкнуться со следующими тремя распространенными проблемами:

Проблема 1. Электромагнитное вмешательство поля

Ошибка может возникнуть из-за влияния электромагнитной силы, создаваемой ступенчатым двигателем. В зависимости от устройства это может проявляться различными способами: например, создаваемые фантомные точки касания. Решение проблемы заключается в том, чтобы обеспечить хорошую основу.

Проблема 2. Другие процессы прерывают тестовую программу

Когда другой процесс прерывает тестовый процесс, он обычно повреждает результат теста, отрицательно влияя на числа задержки.

Эту проблему можно диагностировать, сравнивая интервалы сигнала прерывания фотографий. Просмотрите файл csignal.txt, содержащий метки времени от фото-прерывания. Второй столбец показывает системные метки времени, а третий столбец — метки времени микроконтроллера. Например:

[ 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

Последняя запись в файле показывает индекс первой допустимой последовательности сигналов. Допустимая последовательность сигналов относится к началу последовательностей сигналов, когда система стала стабильной. Между приобретением и сбором тестовая программа записывает результаты приобретения в файлы журнала и в зависимости от производительности системы может потребоваться некоторое время, чтобы он стал стабильным. В приведенном выше примере первый сигнал был допустимым, чтобы можно было начать сравнение интервалов метки времени.

Интервалы меток времени можно занять, отметив разницу между двумя даже нумерованными метками времени; или пример, 0, 2, 4, 6 и т. д. Как показано в следующей таблице, сигналы 4 и 6 отличаются от других интервалов сигнала. Поэтому мы знаем, что еще один процесс прервал тест в течение этого времени. В обычных случаях вы должны увидеть менее 1% разницы.

Указатель Отметка времени Интервал

0

431506434557

2

431492585219

1731471

4

431494316516

603776

6

431496047748

1127364

8

431497779297

1731354

10

431499509508

1731388

12

431501240620

1731288

Проблема 3. Изменения частоты выборки

Если устройство изменяет частоту выборки, произойдет значительное отклонение результатов задержки. Эту проблему можно диагностировать, сравнивая показатели приобретения и сбора выборки.

Вы можете использовать внешние средства для измерения частоты выборки устройства до и после включения двигателя. Другим способом является анализ журналов, создаваемых stepmotor.exe.

  1. Откройте Файл Acquisition.txt.

  2. Возьмите метки времени первой и последней строки (последний столбец):

    581   660   709   602   199501901480
    581   805   512   602   199554132317
    
  3. Вычислите частоту выборки приобретения следующим образом:

    (Last timestamp - first timestamp) /number of samples (rows)
    
  4. Откройте Collection.txt.

  5. Возьмите метки времени первой и последней строки (последний столбец):

    581   822   423   602 [199554407006]
    581   288   164   602 [199594255626]
    
  6. Вычислите частоту выборки коллекции следующим образом:

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

Если вы видите более 2% разницы между этими двумя, данные сбора не являются надежными и следует исследовать причину.

Дополнительная поддержка

Если требуется дополнительная поддержка, обратитесь к одному из следующих сертифицированных поставщиков jig:

  • Triex Technologies, Inc.

    +1 (206) 940-0943

  • Научно-исследовательский институт промышленной технологии

    +886 (03) 5743887