Не нужно прятаться от HID – сквозной проект сенсора движения для WinRT
Сегодняшний аппаратный пост имеет, с моей точки зрения, ряд замечательных и забавных возможностей. Кроме того, всё, что объединяет в себе Windows 8.1, Netduino, C# и возможность сказать «HID» не может быть совсем плохим, не правда ли?
Образец сенсора движения, микропрограммы и приложения WinRT для HID
Это сквозное решение включает руководство для построения простого пассивного инфракрасного сенсора, работающего по протоколу HID. Оно представлено документом, озаглавленным «Создание сенсора движения». Вместе с ним идет проект на Visual Studio C# с исходным кодом, предназначенный для создания микропрограммы сенсора.
Вдобавок к руководству по созданию устройства, решение включает в себя пример приложения для Магазина, которое мониторит датчик на предмет обнаружения движения и снимает короткое пятисекундное видео в случае обнаружения движения. (Приложение описано во втором руководстве, озаглавленном «Разработка приложений с протоколом Human Interface Device (HID)».
Замечание: Это сквозное решение использует ПО, произведенное по лицензии Creative Commons Attribution-ShareAlike 3.0 Unported License. Условия лицензии приведены здесь.
Требования к операционной системе
Клиент
Windows 8.1
Сервер
N/A
Установка среды разработки для встраиваемого ПО
Прежде ем загружать в Netduino Plus встраиваемое ПО, необходимо выполнить следующие шаги:
· Установить на машине разработки Microsoft Visual C# Express 2010
· Установить .NET Micro Framework SDK v4.2
· Установить на плату Netduino Plus встраиваемое ПО Netduino Beta v4.1.1
· Загрузить проект встраиваемого ПО устройства и открыть его в Visual C# Express
Заметьте, что это видео дает прекрасное объяснение процессу установки бета-версии ПО на плату Netduino. (См. сопутствующее руководство, объясняющее подробности сборки устройства и установки ПО.)
Сборка сенсора движения, основанного на HID
Сенсор движения состоит из платы разработки Netduino Plus с присоединенным пассивным инфракрасным сенсором (PIR). Детали сборки этого сенсора можно найти в документе, озаглавленном «Создание сенсора движения». Собрав сенсор, можно присоединить его к лэптопу на Windows 8.1 или планшету и запустить пример приложения.
Установка среды разработки для приложения Магазина
Прежде чем собирать и запускать пример приложения, необходимо выполнить следующие шаги:
· Установите Windows 8.1 на машину.
· Установите Microsoft Visual Studio Professional 2013 или Microsoft Visual Studio Ultimate 2013.
· Скачайте проект примера. Посмотрите сопровождающий документ «Разработка приложений с протоколом Human Interface Device (HID)», в котором можно найти подробности о приложении-примере. (Если на вашем компьютере не установлена видеокамера, возможно, вы захотите развернуть приложение на компьютере с видеокамерой.)
Сборка приложения-примера
После сборки сенсора движения можно приступить к его тестированию с помощью приложения-примера. Подробнее сборка приложения описана в руководстве (а также детали функционирования приложения).
...
Вот снимок документа «Создание сенсора движения».
Введение
С добавлением в Windows 8.1 нового HID WinRT API Microsoft предоставила ученым, энтузиастам и инженерам замечательную платформу для соединения удаленных устройств с планшетами и лэптопами. Новый API упрощает интеграцию широкого спектра устройств: от измерительного оборудования в исследовательских лабораториях до станций, следящих за погодой, медицинских приборов и тренировочного оборудования.
Единой чертой всех этих устройств является поддержка протокола HID. На ранних стадиях этот протокол применялся для связи с клавиатурами, мышками и джойстиками – устройствами, выступавшими в качестве интерфейса между компьютером и человеком. Отсюда и название «Human Interface Device» или HID.
Однако из-за того, что протокол является самоописывающим, он оказался идеальным для поддержки большого круга других устройств (под самоописывающим подразумевается, что HID-устройство представляется самостоятельно: назначение, возможности, размер пакета при соединении с ведущим ПК).
Сенсор движения описывается в этой статье как учебный инструмент – его и соответствующее ПО можно использовать для изучения протокола HID и нового WinRT API. Сенсор спроектирован для работы с приложением HidInfraredSensor, предоставляемым в качестве образца в современном SDK.
Если вы новичок в работе с протоколом HID или транспортом USB, то замечательной начальной точкой станет книга Яна Эксельсона (Jan Axelson) «USB Complete». Прочтите главы, посвященные HID, прежде чем погружаться в детали встраиваемого ПО. Другим полезным источником информации является форум разработчиков на сайте usb.org.
Быстрое начало
В этом разделе документа собрана информация, которая поможет быстро собрать и запустить сенсор движения. Он спроектирован, чтобы работать с приложением-примером HidInfraredSensor, входящим в галерею примеров MSDN для Windows 8.1. Этот пример мониторит или прослушивает события регистрации движения от сенсора. Когда случается событие и регистрируется движение, приложение записывает короткое видео, используя встроенную в устройство веб-камеру.
Приложение следит за событиями, используя новый HID WinRT API; а видео записывается с помощью MediaCapture API.
(Более подробно о внутренней работе устройства можно узнать из описания встраиваемого ПО в этом документе.)
...
Наконец перейдем к коду...
...соберем и запустим его...
Сборка приложения-примера
После сборки сенсора движения можно приступить к его тестированию с помощью приложения-примера. Подробности сборки приложения (а также детали его функционирования) находятся в руководстве по приложению.
Прочитав документ и установив исходники приложения, можно приступить к его сборке:
1. Запустите Microsoft Visual Studio 2013 и выберите File > Open >Project/Solution.
2. Перейдите в каталог, в который вы разархивировали пример. Зайдите в каталог с именем приложения и дважды щелкните на файле решения (.sln).
3. Нажмите F7 или воспользуйтесь меню Build > BuildSolution для сбрки примера.
4. Включите плату Netduino с помощью внешнего источника питания.
5. Подождите несколько секунд пока сенсор не инициализируется (инфракрасному сенсору необходимо около 10 сек, чтобы определить уровень окружающего инфракрасного излучения).
6. Присоединить плату Netduino к планшету или лэптопу USB-кабелем.
7. Из работающей Visual Studio с открытым проектом примера можно запустить приложение либо под отладчиком, либо без отладки (для отладки нажмите клавишу F5 или в меню выберите Debug > StartDebugging. Для запуска без отладки нажмите Ctrl+F5 или Debug> StartWithoutDebugging.)
И вот у вас есть сквозное HID-решение для Windows 8.1...