Датчики присутствия (близость человека)
В следующем разделе подробно описаны рекомендации для изготовителей оборудования, которые выбирают компоненты, такие как датчики присутствия, для поддержки описанных выше возможностей устройств для папки "Входящие". В нем рассматриваются как общие требования ко всем датчикам, так и конкретные рекомендации для конкретных устройств. Датчики присутствия — это датчики близкого взаимодействия типа "Человек". Прежде чем читать этот раздел, ознакомьтесь с интерфейсом устройства и условиями для датчика присутствия .
В этом разделе содержатся рекомендации для изготовителей оборудования, которые хотят установить оборудование датчика присутствия в системе. Эти рекомендации представляют собой минимальную жизнеспособную настройку датчика. Корпорация Майкрософт рекомендует устанавливать оборудование, которое превосходит стандарты.
Диапазон, задержка, расстояние и мощность не будут измеряться корпорацией Майкрософт, но изготовители оборудования и ODM должны проверять функциональность в соответствии с требованиями HLK. Если система сообщает расстояние, необходимо измерить его точность.
Важные детали проектирования и общие требования ко всем датчикам присутствия человека
Если датчик близкого взаимодействия поддерживает присутствие человека, он должен поддерживать тип обнаружения:
DEFINE_PROPERTYKEY(DEVPKEY_Sensor_HumanPresenceDetectionType,0xd4247382, 0x969d, 0x4f24, 0xbb, 0x14, 0xfb, 0x96, 0x71, 0x87, 0xb, 0xbf, 81); //[VT_UI4]
В настоящее время определенные типы обнаружения приведены ниже.
Имя использования | Тип применения | Описание использования |
---|---|---|
Тип обнаружения присутствия человека: не биометрические данные, определяемые поставщиком | Sel | Присутствие (одного или нескольких человек) обнаруживается с помощью определенного поставщиком, но не биометрического метода. Это позволяет получить положительное подтверждение того, что датчик использует обнаружение, не связанное с биометрическими данными, как определено ниже. Без этого узел не может предполагать, что биометрические данные не используются устройством. |
Тип обнаружения присутствия человека: биометрические данные, определяемые поставщиком | Sel | Присутствие (одного или нескольких человек) обнаруживается с использованием биометрических данных, определяемых поставщиком. Это универсальный инструмент для датчика присутствия человека, который использует биометрические данные, которые еще не определены ниже. |
Тип обнаружения присутствия человека: биометрические данные для лиц | Sel | Присутствие человека определяется путем сканирования (например, с помощью видеокамеры с низким разрешением) на предмет человеческих лиц (например, с помощью Viola-Jones обнаружения объектов). Различение лиц или обнаружение атрибутов лиц не выполняется. Такое обнаружение аналогично существующим цифровым камерам, которые могут разместить ограничивающий прямоугольник вокруг лица. |
Тип обнаружения присутствия человека: аудио биометрические данные | Sel | Присутствие человека определяется путем сканирования (например, с помощью микрофона) на наличие человеческих звуков (например, предопределенного ключевое слово, общих разговоров, громких звуков, хлопка). Различение голосов и пользователей, а также обнаружение звуковых характеристик не выполняется. |
Важно!
Все датчики присутствия должны точно сообщать тип обнаружения, описанный выше.
Требования к датчику присутствия человека категории 1
Мера | Metric | Комментарии |
---|---|---|
Диапазон датчика | .2m–1.2m Примечание. Это минимальный жизнеспособный диапазон. Датчики с лучшими диапазонами будут разрешены. | При непосредственном измерении (определенном выше) пользователь должен иметь возможность активировать пробуждение на 1,2 м. |
Задержка датчика | <0,33 секунды | Это то же самое, что и задержка датчика категории II. Это требование определяет время от распознавания встроенного ПО присутствия человека до получения сообщения операционной системой. Известно, что операционная система имеет переменное время задержки для пробуждения после получения сигнала от датчика. |
Мощность датчика — используется | <80 МВт для внутренних датчиков; для внешних датчиков энергопотребление определяется ограничением мощности шины; все меры средние. | Это измерение инкапсулирует всю подсистему датчика, включая передатчик, приемник и все светодиодные индикаторы, используемые только в соответствии со сценариями пробуждения и блокировки. |
Питание датчика — режим ожидания | <25 МВт для внутренних датчиков; для внешних датчиков энергопотребление определяется ограничением мощности шины; все меры средние. | Обратите внимание, что это максимальный пиковой расход энергии. |
Точность — отчеты о расстоянии | +/- 5 см | Измеряется при 45 см (12 in), 75 см (29,5 in) и 120 см (47,2 in). Требуется только в том случае, если этот датчик поддерживает расстояние. |
Требования к датчику присутствия человека категории 2
Мера | Metric | Комментарии |
---|---|---|
Диапазон датчика | .2m–1.2m Примечание. Это минимальный жизнеспособный диапазон. Датчики с лучшими диапазонами будут разрешены. | При непосредственном измерении (определенном выше) пользователь должен иметь возможность активировать пробуждение на 1,2 м. |
Задержка датчика | <0,33 секунды | Это требование определяет время от распознавания встроенного ПО присутствия человека до получения этого сообщения драйвером HID. Известно, что операционная система имеет переменное время задержки для пробуждения после получения сигнала от датчика. |
Мощность датчика — используется | <65 МВт для внутренних датчиков; для внешних датчиков энергопотребление определяется ограничением мощности шины; все меры средние. | Это измерение инкапсулирует всю подсистему датчика, включая передатчик, приемник и все светодиодные индикаторы, используемые только в соответствии со сценариями пробуждения и блокировки. |
Питание датчика — в режиме ожидания | <5 мВт; для внешних датчиков энергопотребление определяется ограничением мощности шины; все меры средние. | Это будет измеряться по расходу электроэнергии датчика, когда система находится в режиме современного режима ожидания. Это измерение инкапсулирует всю подсистему датчика, включая передатчик, приемник и любое другое оборудование, используемое только в соответствии со сценариями пробуждения и блокировки. |
Точность — отчеты о расстоянии | +/- 5 см | Измеряется при 45 см (12 in), 75 см (29,5 in) и 120 см (47,2 in). Требуется только в том случае, если этот датчик поддерживает расстояние. |
Интеграция устройств
Размещение датчика крайне важно для обеспечения наилучшего взаимодействия с пользователем и обеспечения согласованного взаимодействия с пользователем между устройствами.
Идеальное размещение зависит от форм-фактора устройства, и во всех случаях изготовители оборудования должны определить оптимальное размещение для своего устройства. Кроме того, для устройств с несколькими состояниями, таких как 2 в 1 кабриолетах, рекомендуется, чтобы датчики сообщали о том, что поле данных isValid = false для поз, в которых датчик присутствия человека не будет производить точные измерения (т. е. датчик не сталкивается с пользователем или препятствует). Оптимальное размещение датчиков в реальном мире обычно находится в той же плоскости, что и дисплей (перед пользователем).
Кроме того, убедитесь, что различные конфигурации устройства (например, положение клавиатуры в режиме планшета и ноутбука), не блокируют диафрагму и не пересекаются с полем зрения датчика.
Наконец, убедитесь, что поле зрения датчика не пересекается с каким-либо шумным источником света (вспышка камеры, подсветка клавиатуры и т. д.), так как это может способствовать дополнительному шуму или плохим показаниям. Обязательно учитывайте все различные конфигурации, которые может использовать устройство при рассмотрении поля зрения, пересекающегося с шумными источниками света или электромагнитными волнами.
Форм-фактор | Расположение датчика присутствия человека и рекомендации |
---|---|
Tablet | Поместите датчик присутствия человека рядом с поверхностью устройства, а не посередине, с соответствующим экранированием, чтобы обеспечить точные показания. |
Автомобиль с откидным верхом | Пожалуйста, используйте лучшее чувство суждения для систем кабриолетов стилей. |
Раскладушка | Поместите датчик присутствия человека на крышку над дисплеем перед пользователем (рекомендуется). |
Монитор "все в одном" или внешний монитор | Поместите датчик присутствия человека на передней части устройства (например, в области безела) (рекомендуется). |
Персональный компьютер | Если вы размещаете датчик присутствия человека на корпусе рабочего стола, рекомендуется разместить его на верхней части корпуса рядом с краем. Рекомендуется включить датчик присутствия в монитор или предоставить внешний аппаратный usb-ключ. |
Поддержка датчиков внешнего присутствия и политика арбитража
Внешние датчики присутствия человека, интегрированные в мониторы, поддерживаются функцией "Входящие". В следующих разделах подробно описаны реализация, требования и политика, применяемые к внешним датчикам присутствия человека. Другие типы внешних датчиков, например автономные, поддерживаются не полностью, так как форм-фактор и тип использования слишком разнообразны для надежной поддержки. Однако нет никаких явных запретов таких датчиков, и рекомендуется поставщикам, заинтересованным в создании таких датчиков, обращаться к sasensors@microsoft.com.
Реализация
Внешние датчики присутствия человека должны предоставляться операционной системе одинаково внутреннему датчику, за исключением того, что свойство датчика DEVPKEY_Sensor_ConnectionType должно быть отмечено как внешнее, чтобы ОС знала о внешнем подключении. ОС будет знать, интегрирован ли датчик во внешний монитор, через сведения PLD, связанные с датчиком. Настоятельно рекомендуется предоставить датчик в качестве устройства HID, чтобы использовать драйвер класса HID для папки "Входящие". Это избавляет пользователя от необходимости устанавливать драйверы для работы внешнего датчика.
Физическое соединение между внешним датчиком и системой должно быть USB-подключением отдельно от подключения дисплея. Это связано с тем, что ни один из стандартных типов подключения дисплея, например HDMI или DisplayPort, не поддерживает HID. Дисплей и датчик могут совместно использовать одно подключение через alt-режим USB-C и USB4, но не все пользователи будут иметь доступ к таким типам соединителей и, следовательно, не должны использоваться в качестве единственного соединителя для внешнего датчика.
Требования
Внешние датчики присутствия человека должны соответствовать тем же требованиям, что и внутренние датчики присутствия человека, и проходить те же тесты HLK и ручные тесты.
Обработка датчиков с разными возможностями
При наличии нескольких датчиков присутствия с разными возможностями, например датчик A поддерживает только пробуждение при подходе и блокировку при выходе, а датчик B — только адаптивное затемнение. На странице Параметры будут отражены возможности выбранного датчика. Если выбран датчик A, будут отображаться только переключатели пробуждения и блокировки. Если выбран датчик B, будет отображаться только переключатель адаптивного затемнения.
Логика выбора датчика присутствия по умолчанию
До и включения Windows 11 22H2 последний подключенный датчик был выбран по умолчанию. Начиная с мая 2023 г. с обновлением до Windows 11 22H2 и более поздней версии, логика выбора показана ниже:
Политика для пробуждения при подходе и блокировки при выходе
Внешние датчики имеют приоритет над внутренними и при подключении к системе полностью заменяют внутренние в качестве входных данных для пробуждения и блокировки. Приоритет означает, что при подключении внешнего датчика он станет датчиком по умолчанию для системы. Существующие пользовательские настройки, такие как время ожидания или расстояние обнаружения, передаются внешнему датчику.
Ниже приведена политика арбитража для различных конфигураций внешних датчиков.
Система имеет встроенный датчик | Система имеет внешний датчик | Политика арбитража |
---|---|---|
Да | Нет | Если крышка системы закрыта; Пробуждение и блокировка будут отключены, а не будут работать. |
Нет | None | Функция отсутствует или отключена. |
Да | Один | Датчик с внешним подключением станет датчиком по умолчанию, выбранным для пробуждения и блокировки. Пользователь сможет настроить предпочитаемый датчик в пользовательском интерфейсе параметров Windows. Этот параметр будет отображаться только при наличии нескольких датчиков, доступных для системы. После обновления за май 2023 г. версии 22H2 или более поздней логика выбора соответствует логике выбора датчика присутствия по умолчанию. |
Нет | Один | Датчик с внешним подключением станет датчиком по умолчанию, выбранным для пробуждения и блокировки. Пользователь сможет настроить предпочитаемый датчик в пользовательском интерфейсе параметров Windows. Этот параметр будет отображаться только при наличии нескольких датчиков, доступных для системы. После обновления за май 2023 г. версии 22H2 или более поздней логика выбора соответствует логике выбора датчика присутствия по умолчанию. |
Да | Несколько | Тот же параметр пользователя будет представлен в пользовательском интерфейсе. Датчик, который был последним подключен к системе, будет датчиком по умолчанию, пока пользователь не выберет другой вариант. После обновления за май 2023 г. версии 22H2 или более поздней логика выбора соответствует логике выбора датчика присутствия по умолчанию. |
Нет | Несколько | Тот же параметр пользователя будет представлен в пользовательском интерфейсе. Датчик, который был последним подключен к системе, будет датчиком по умолчанию, пока пользователь не выберет другой вариант. После обновления за май 2023 г. версии 22H2 или более поздней логика выбора соответствует логике выбора датчика присутствия по умолчанию. |
Совет
Ориентация монитора не учитывается при определении возможности использования датчика, интегрированного на мониторе. Предполагается, что датчики по-прежнему могут работать в обычном режиме в таких случаях.
Виртуальные датчики присутствия человека
Датчики присутствия человека должны поддерживаться физическим устройством. Другими словами, поддельное программное устройство не должно быть предоставлено в качестве прокси-сервера для управления пробуждением, блокировкой или адаптивным затемнением. Эта функция предназначена только для использования с физическими сценариями. Это требование заключается в том, что датчики присутствия должны обнаруживать физическую среду и ссылаться на нее для определения сигналов присутствия пользователя. Виртуальные датчики HID могут быть реализованы, если они агрегируют данные с других датчиков, таких как микрофон или другие входные данные пользователя, И работают в разгруженном кремние, таком как NPU или MCU, где изображения или аудио метаданные недоступны для приложений в ОС. В случае с камерой датчики виртуального присутствия НЕ должны использовать или обрабатывать метаданные изображения в ОС. Изготовители оборудования и IHV, которые реализуют виртуальные датчики, использующие изображения или метаданные в ОС, берут на себя всю юридическую ответственность за конфиденциальность такой реализации.
Требования к энергопотреблению для датчиков присутствия в этом техническом документе предназначены для физических датчиков. Для виртуализированных датчиков, работающих с частью других подсистем, требования к энергопотреблению наследуются от подсистемы, в которую они работают. Например, виртуальный датчик присутствия, работающий в современной резервной системе и работающий в разгруженной аудиоподсистеме, должен соответствовать требованиям, перечисленным в разделе Управление питанием аудиосистемы для современных резервных платформ.
Взаимодействие с переключателями конфиденциальности камеры и выключателями
Ожидается, что затвор конфиденциальности не будет мешать датчикам присутствия человека, если метаданные изображения не передаются в ОС. В случаях, когда один и тот же физический датчик используется с Windows Hello (ir-камерой) или общей RGB-камерой, рекомендуется предоставлять датчик присутствия человека по отдельному физическому пути от поставщика услуг Интернета (например, через дискретный NPU), где выводы и метаданные изображения (включая подпись лица) передаются в ОС. Так как переключатели завершения камеры должны работать в встроенном ПО провайдера, физически отдельный путь гарантирует, что переключатели завершения не будут мешать функциям присутствия человека. Если для общего датчика не используется отдельный физический путь, то руководство по HLK камеры указывает, что жалюзи конфиденциальности работают как на датчике RGB, так и на датчике IR, и это помешает функциям присутствия человека, что приводит к плохому взаимодействию с пользователем, так как Windows не предупреждает пользователя о том, что присутствие человека заблокировано. В настоящее время не рекомендуется использовать общий путь между присутствием человека и поставщиком услуг Интернета. Однако в случаях, когда это необходимо, поставщик услуг Интернета остановит обнаружение HPD (для экономии заряда батареи) и сообщит, что датчик HPD недоступен.
Настоятельно рекомендуется, чтобы любой физический затвор сообщал о его состоянии в ОС через CT_PRIVACY_CONTROL (для устройств UVC) или KSPROPERTY_CAMERACONTROL_PRIVACY (при использовании драйвера AVStream или DMFT). Дополнительные сведения см. в разделе Уведомление о конфиденциальности камеры.
Дополнительные сведения о функциональных возможностях жалюзи камеры конфиденциальности, выключателей и светодиодов можно найти в разделе Управление конфиденциальностью камеры.
Взаимодействие с индикаторами конфиденциальности камеры
Корпорация Майкрософт ожидает, что светодиодные индикаторы конфиденциальности камеры могут и должны оставаться отключенными в случаях, когда в ОС не передаются метаданные изображения. Необходимо, чтобы датчик присутствия человека физически не мог передавать данные о лицах или изображениях в ОС. Это можно сделать с помощью различных механизмов, таких как, помимо прочего, выделенная шина или физически отделенный путь от поставщика услуг Интернета камеры или предохранителя в датчике. Дополнительные сведения о функциональных возможностях светодиодов конфиденциальности камеры можно найти в разделе Управление конфиденциальностью камеры .
Руководство по реализации
Читатели этого раздела (которые намерены разработать драйвер датчика присутствия) должны ознакомиться с руководством по проектированию драйверов датчиков.
В аппаратном обеспечении датчик присутствия человека реализуется как SensorType_Proximity с заданным значением DEVPKEY_Sensor_ProximityType
ProximityType_HumanProximity = 1
.
Если датчик использует биометрические данные, он может находиться в SensorCategory_Biometric.
Подключение к шине устройства
Нет жестких требований за пределами тестов в HLK (см. ниже) для подключения к шине устройства. Однако по возможности разработчикам систем рекомендуется использовать драйверы для папки "Входящие", доступные в Windows 11. Например, существует драйвер HID для папки "Входящие" для I2C и драйвер датчика для входящих устройств на основе HID. Это дает преимущество в том, что корпорация Майкрософт будет поддерживать драйверы для папки "Входящие" в Windows 11.
Исключение брандмауэра Windows для прокси-сервера пробуждения
В этом разделе содержится базовый обзор управления питанием датчиков присутствия человека. Дополнительные сведения см. в разделе Управление питанием датчиков.
Совет
Датчик присутствия предназначен для работы в современных резервных системах. В обновлении за май 2023 г. до Windows 11 версии 22H2 и более поздних добавлена дополнительная поддержка пробуждения для несовременных резервных систем.
Дополнительные требования к реализации HIDUSB
В статье Выборочная приостановка для УСТРОЙСТВ HID через USB приводится пример того, как OEM или IHV INF ссылается на входные данные для папки "Входящие". INF для включения другой функции выборочной приостановки. Изготовители оборудования и IHV могут делать аналогичные действия в своем INF, но ссылаясь на упомянутый выше раздел, чтобы включить пробуждение при касании.
Чтобы упростить этот INF, изготовители оборудования и IHV также могут рассмотреть возможность создания расширения INF. Ознакомьтесь с документацией по использованию INF-файла расширения .
Если устройство имеет несколько коллекций HID, включая коллекции датчиков присутствия человека и коллекции, не относящиеся к человеку, встроенное ПО датчика должно поддерживать только пробуждение от коллекций близкого взаимодействия человека. Если коллекция датчиков присутствия, не относящихся к человеку, также может сигнализировать о пробуждении, устройство по-прежнему будет возвращено на D0 для выключения питания.
Реализация протокола (высокоуровневая архитектура)
В этом разделе требуются сведения о реализации драйвера, чтобы сообщить о датчике присутствия человека в ОС. Технически это делается путем реализации типа обнаружения близкого взаимодействия человека для датчика типа близкого взаимодействия в категории биометрических датчиков.
На приведенных ниже схемах показано, как данные с датчика перемещаются по стеку, когда функция работает. Внешние мониторы будут использовать схемы, помеченные как "HID".
Тип драйвера и возможности датчика | Distance-Capable HW (+/- 5 см) | Distance-Agnostic HW |
---|---|---|
HID: устройство человеческого интерфейса | Поток данных с поддержкой расстояния на основе HID (рекомендуется) | Поток данных на основе HID, не зависящий от расстояния |
CLX: расширение класса датчика Windows | Поток данных с поддержкой расстояния на основе CLX | Поток данных на основе CLX, не зависящий от расстояния |
Поток данных с поддержкой расстояния на основе HID (рекомендуется)
Поток данных с поддержкой расстояния на основе CLX
Поток данных на основе HID, не зависящий от расстояния
Поток данных на основе CLX, не зависящий от расстояния
Высокоуровневый поток данных
- Пользователь изменяет параметры пробуждения или блокировки с помощью пользовательского интерфейса параметров и передается в службу датчика Windows.
- Служба датчика Windows запускает датчик присутствия человека во время нормальной работы или в режиме ожидания, чтобы отслеживать пробуждение и блокировку.
- Датчик присутствия человека создает новую выборку, которая содержит присутствие человека, расстояние обнаружения и является допустимым.
- Если система находится в современном режиме ожидания и новый пример присутствия человека сообщает о человеке в настроенном диапазоне обнаружения, служба датчика Windows отправит сигнал пробуждения в стек питания Windows. И наоборот, если система работает в обычном режиме и человек не сообщается или находится за пределами настроенного диапазона обнаружения, служба датчика Windows отправит сигнал времени ожидания в стек питания Windows.
Сигналы присутствия человека
Сигналы:
- Сигнал присутствия пользователя — возникает, когда датчик сообщает образец данных с полем данных присутствия человека, имеющим значение true. Если система поддерживает внимание, то в этом состоянии для внимания устанавливается значение "включено/true".
- Сигнал "Пользователь не участвует" — происходит в системах, поддерживающих внимание, когда датчик сообщает о выборке данных с полем данных присутствия человека, имеющим значение true, а затем для внимания задано значение unengaged или false.
- Сигнал "Пользователь не присутствует " — происходит, когда датчик сообщает образец данных с полем данных присутствия человека, имеющим значение false.
- Неизвестный сигнал пользователя — сигнал, когда присутствие человека неизвестно. Это может произойти, если датчик был случайно удален или датчик еще не сообщал о допустимой выборке.
Обязательные дескрипторы HID и коллекции верхнего уровня
При реализации с помощью одной из архитектур на основе HID в следующем разделе описываются поля данных для предоставления сведений о присутствии.
Дополнительные сведения о предоставлении доступа к устройству с помощью HID см. в разделе Использование HID датчиками.
Присутствие человека — присутствует (пробуждение и блокировка)
Идентификатор использования | Комментарии |
---|---|
0x04B1 HID_USAGE_SENSOR_DATA_BIOMETRIC_HUMAN_PRESENCE | Использование для предоставления логического значения, указывающего на наличие. Присвойте этому значению значение "1", чтобы указать присутствие человека. Присвойте этому значению значение "0", чтобы указать отсутствие присутствия человека. |
0x04B2 HID_USAGE_SENSOR_DATA_BIOMETRIC_HUMAN_PROXIMITY_RANGE | Используется для предоставления значений расстояния во входном отчете Единица измерения по умолчанию в метрах, но пример дескриптора отчета в этом документе показывает, как устройство может сообщать миллиметры. Это поле будет сделано необязательным в будущем обновлении Windows. |
Примечание
Миллиметровый отчет должен быть точным в пределах +/- 5000 мм. Сообщаемые диапазоны могут быть непрерывными или дискретными приращениями менее 5000 мм (т. е. 2000 мм, 7000 мм,..). Это поле будет сделано необязательным в будущем обновлении Windows.
Руководство по проверке. Минимальные требования и тестирование: программа сертификации оборудования Windows (WHCP)
Минимальные тесты и требования для сертификации оборудования как совместимого описаны в тестах комплекта оборудования (HLK) в спецификациях и политиках программы совместимости оборудования Windows.