Общие сведения об измерении задержки оборудования Touch Down
Задержка — это мера временной задержки в системе дигитайзера сенсорного ввода. Присущая системе задержка является одним из наиболее важных параметров сенсорного устройства и всегда представляет собой компромисс между несколькими важными характеристиками: уровнем шума (SNR), чувствительностью, энергопотреблением, дрожанием и т. д.
Отправной точкой для измерения задержки является четко определенный стандарт; это момент, когда палец или перо (привод) впервые касается экрана в заданном контакте. Конечная точка для аппаратной задержки приземлиния — это момент, когда операционной системе узла (например, Windows 8) становится известно сообщение от целевого дигитайзера касания (для USB-устройств это момент, когда на выделенном USB-контроллере обнаруживается запрос на прерывание для сенсорных дигитайзеров; обычно этот запрос указывает на входящий отчет HID с начальными контактными данными). Для всех практических целей эта конечная точка идентична конечной точке WndProc, которая является моментом, когда ведущему приложению впервые становится известно о контакте (например, через WM_INPUT и WM_POINTER сообщения для собственных приложений или через Windows::UI::Input::P ointerPoint для приложений Microsoft Store).
Методологии
Эта процедура зависит от акустической или механической волны, создаваемой пальцем, касающимся дигитайзера, для измерения этой задержки. Стоит отметить, что даже при малейшем касании на поверхности дигитайзера будет производиться существенная акустическая/механическая волна, которая может четко и однозначно (то есть с чрезвычайно высоким SNR, практически нулевым ложным срабатыванием и почти без ложноотрицательных результатов) быть обнаружена с помощью даже самых простых готовых микрофонов.
Методология основывается на том, что испыумыватель вручную прикасается к сенсорному экрану несколько раз. Это связано с тем, что задержка является вероятностной по своей природе - из-за неопределенности, присущей функции сканирования. Это позволяет нам создать эмпирическую интегральную функцию распределения. Для этой функции существуют прогнозируемые ожидания, позволяющие оценить качество общего измерения. С помощью этих данных можно извлечь основные параметры для распределения.
Каждое измерение выполняется довольно просто: испытуемый касается дигитайзера пальцем, создавая акустическую или механическую волну. Небольшая, но измеримая задержка между фактическим контактом и моментом, когда волна достигает микрофона дигитайзера. Затем волна обнаруживается микрофоном, усиливается и пороговое значение соответствующим образом, поэтому она преобразуется в логический уровень 0 или 1). Это логическое значение передается на плату микроконтроллера (например, AT90USBKEY2), которая принимает это изменение с низкой задержкой (~мкс) и передает его на тестируемое устройство с задержкой не более 1 мс с помощью отчета USB HID (1 мс — это минимальный период опроса для полноскоростных USB-устройств, таких как AT90USBKEY2).
На стороне узла (т. е. тестируемого устройства) ожидаются два события. Первый — получение отчета HID с платы микроконтроллера, указывающего на то, что физический контакт произошел. Второй — это отчет HID от дигитайзера сенсорного ввода. Разница во времени между двумя отчетами представляет собой задержку приземлиния.
В этом измерении есть две неопределенности; был разработан метод для уменьшения и того, и другого. Первая неопределенность заключается в том, что между фактическим контактом и временем, когда волна достигает микрофона (или, если быть более точным, между фактическим контактом и временем получения логического 1 на микроконтроллере). Это компенсируется добавлением дополнительного шага к методологии — калибровки. Перед началом измерений задержки измеряется время, необходимое для распространения волны из самой дальней позиции дигитайзера на микрофон (микроконтроллер). Эти сведения используются для получения абсолютной оценки ошибок для каждого отдельного измерения позже. В большинстве случаев это менее 2 мс (в зависимости от размера экрана и материалов, используемых для поверхности дигитайзера).
Вторая неопределенность — это задержка, вызванная USB-каналом между микроконтроллером и главным компьютером (тестируемым устройством). Для этого необходимо ввести 48-разрядную метку времени для каждого отчета HID из микроконтроллера. Эта метка времени задается при обнаружении логического 1 на входном порте микроконтроллера (с задержкой ~мкс между этим событием и созданием значения метки времени). Затем часы на хосте (тестируемом компьютере) и целевой стороне (микроконтроллер) можно синхронизировать, чтобы получить наиболее точные результаты.
Эта методология может быть полностью автоматизирована и полностью воспроизводима; робота можно использовать для того, чтобы вызвать прикосновение, а не человека-участника. Вместо этого рекомендуется более простое решение, опирающееся на участника-человека и естественное измерение, с более простой и удобной настройкой. Наблюдаемые результаты указывают на согласованность точности, которая указывает на то, что был достигнут баланс между сложностью настройки и точностью измерения.
Требования к оборудованию
В этом разделе подробно описаны необходимые аппаратные компоненты. Назначение оборудования описано, но фактические номера деталей здесь не указаны (они будут представлены далее в этом документе.
Микрофон — для обнаружения акустических волн на сенсорном дигитайзере. Рекомендуется использовать небольшой плоский пьезоэлектрический микрофон, который можно легко коснуться сенсорного экрана.
Акустический усилитель — для усиления сигнала от микрофона.
Пороговая схема — для отличия сенсорного звука от шума окружающей среды.
Плата микроконтроллера с возможностью USB HID и возможностью опроса по крайней мере на двух входных портах с задержкой ~мкс.
Схема калибровки — для измерения распространения акустической волны, то есть времени между касанием и получением логического 1 на микроконтроллере.
В следующем разделе рассматривается реализация настройки измерения задержки при касания.
Подробные инструкции
Аппаратное устройство для выполнения измерений представлено на следующем рисунке. В коробке есть три отверстия: вход с микрофоном, входные данные калибровки металлической пластины и микроконтроллерный микро USB-выход.
На следующем изображении показана схема для микрофона, акустического усилителя и порогового значения. Для применения порогового значения можно использовать компаратор микроконтроллеров.
Подключение к микрофону показано на следующем рисунке. Обратите внимание, что в этой установке используется очень простой готовый микрофон, достаточный для надежного и точного различения кранов и шума окружающей среды.
Входные данные калибровочной пластины походят в другое отверстие, как показано на следующем рисунке.
Используемая плата микроконтроллера — AT90USBKEY2.
Как описано в методологии, эта плата микроконтроллера используется для обнаружения изменений на выходе пороговой цепи, а именно логических 0 и 1 (то же самое для калибровки и металлической пластины). При обнаружении звукового сигнала с величиной, превышающей пороговое значение, это изменение обнаруживается и на узел отправляется отчет HID для каждого такого события. По мере колебания звуковой волны пороговое значение будет превышено несколько раз; Чтобы избежать отправки события изменения при каждом превышении порогового значения, логика контроллера должна игнорировать звуковой сигнал в течение некоторого периода времени после каждого события изменения. Этот интервал времени должен быть достаточно длинным, чтобы конечный результат был только одним событием изменения для каждого касания пальцем. Обычно работают продолжительность более 500 мс. Кроме того, можно использовать моно-стабильный мультивибратор или дополнительный логический канал, размещенный после звукового усилителя и ввода MCU. Для повторного использования рекомендуемой настройки (встроенное ПО и программное обеспечение) необходимо передать выходные данные звукового порогового канала во входной контакт C0, а выход цепи металлической пластины — на вход C1. Плата микроконтроллера и пороговая цепь должны иметь общую основу (основания должны быть подключены). Размещение контактов C0 и C1, а также земли показано на следующих двух изображениях.
На следующем рисунке показана выделенная красным прямоугольником область (порт C платы AT90USBKEY) на предыдущем изображении с соответствующими метками C0, C1 и заземлением.
Дополнительные сведения об этой плате см. на веб-сайте производителя и в руководстве пользователя по оборудованию для платы.