Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:
IoT Edge 1.1
Это важно
Дата окончания поддержки IoT Edge 1.1 была 13 декабря 2022 г. Проверьте жизненный цикл продукта Майкрософт , чтобы узнать, как поддерживается этот продукт, служба, технология или API. Дополнительные сведения об обновлении до последней версии IoT Edge см. в разделе "Обновление IoT Edge".
В этой статье мы используем данные обучения машинного обучения для имитации устройства, отправляющее данные телеметрии в Центр Интернета вещей Azure. Как указано в руководстве, в этом руководстве используются данные моделирования снижения двигателя Turbofan для имитации данных из набора двигателей самолетов для обучения и тестирования.
В нашем экспериментальном сценарии мы знаем, что:
- Данные состоят из нескольких многовариантных временных рядов.
- Каждый набор данных делится на подмножества обучения и тестирования.
- Каждый временной ряд принадлежит разному двигателю.
- Каждый двигатель имеет разной степени первоначальный износ и производственные различия.
В этом руководстве мы используем подмножество обучающих данных одного набора данных (FD003).
В действительности каждый механизм будет независимым устройством Интернета вещей. Если у вас нет коллекции турбовентиляторных двигателей, подключенных к Интернету, мы создадим программный аналог этих устройств.
Симулятор — это программа C#, которая использует API Центра Интернета вещей для программной регистрации виртуальных устройств в Центре Интернета вещей. Затем мы считываем данные для каждого устройства из подмножества данных, предоставленного НАСА, и отправим их в центр Интернета вещей с помощью имитированного устройства Интернета вещей. Весь код для этой части руководства можно найти в каталоге DeviceHarness репозитория.
Проект DeviceHarness — это проект .NET Core, написанный на C#, состоящий из четырех классов:
- Программа: Точка входа для выполнения, которая отвечает за обработку пользовательского ввода и общую координацию.
- TrainingFileManager: Отвечает за чтение и анализ выбранного файла данных.
- CycleData: Представляет одну строку данных в файле, преобразованном в формат сообщения.
- TurbofanDevice: Отвечает за создание IoT-устройства, соответствующего одному устройству (временной метке), в данных и передачу данных в IoT Hub.
Задачи, описанные в этой статье, должны занять около 20 минут.
Реальным аналогом работы на этом этапе, скорее всего, будет выполнение разработчиками устройств и разработчиками облачных решений.
В этом разделе руководства вы узнаете, как:
- Включите внешний проект в среду разработки.
- Используйте пример проекта DeviceHarness для создания имитированных данных устройства Интернета вещей.
- Просмотр созданных данных в Центре Интернета вещей.
Предпосылки
Эта статья является частью серии руководств по использованию Машинного обучения Azure в IoT Edge. Каждая статья в серии основана на работе, приведенной в предыдущей статье. Если вы перешли сразу к этой статье, посетите первую статью в серии.
Настройка Visual Studio Code и сборка проекта DeviceHarness
Откройте сеанс удаленного рабочего стола на виртуальной машине разработки.
В Visual Studio code откройте папку
C:\source\IoTEdgeAndMlSample\DeviceHarness.Так как вы используете расширения на этом компьютере в первый раз, некоторые расширения будут обновляться и устанавливать их зависимости. Возможно, вам будет предложено обновить расширение. В этом случае выберите "Перезагрузить окно".
Если ошибки OmniSharp отображаются в окне вывода, необходимо удалить расширение C#.
Вам будет предложено добавить необходимые ресурсы для DeviceHarness. Нажмите кнопку "Да" , чтобы добавить их.
- Уведомление может занять несколько секунд.
- Если вы пропустили это уведомление, проверьте значок колокола в правом нижнем углу.
Выберите "Восстановить", чтобы восстановить зависимости пакета.
Если вы не получаете эти уведомления, закройте Visual Studio Code, удалите папки bin и obj
C:\source\IoTEdgeAndMlSample\DeviceHarness, откройте Visual Studio Code и снова откройте папку DeviceHarness.Убедитесь, что среда настроена правильно, запустив сборку с помощью комбинации клавиш Ctrl + Shift + B или в Терминале> выбрав Запустить задачу сборки.
Вам будет предложено выбрать задачу сборки для выполнения. Выберите Сборка.
Сборка выполняется и выводит сообщение об успешном выполнении.
Вы можете сделать эту сборку задачей сборки по умолчанию, выбрав Терминал>Настроить задачу сборки по умолчанию... и выбрав Сборка в подсказке.
Подключение к Центру Интернета вещей и запуск DeviceHarness
Теперь, когда проект готов к сборке, подключитесь к центру Интернета вещей, чтобы получить доступ к строке подключения и отслеживать процесс генерации данных.
Вход в Azure через Visual Studio Code
Войдите в подписку Azure в Visual Studio Code,
Ctrl + Shift + Pоткрыв палитру команд или просмотрите>палитру команд.Найдите команду Azure: Войти.
Откроется окно браузера и появится запрос на ввод учетных данных. При перенаправлении на страницу успешного выполнения вы можете закрыть браузер.
Подключитесь к вашему IoT-хабу и получите строку подключения к хабу
В нижней части обозревателя Visual Studio Code выберите панель Интернета вещей Azure для ее расширения.
В развернутом кадре щелкните "Выбрать Центр Интернета вещей".
При появлении запроса выберите подписку Azure и центр Интернета вещей.
Щелкните ... справа от Центра Интернета вещей Azure для получения дополнительных действий. Выберите "Копировать строку подключения Центра Интернета вещей".
Запуск проекта DeviceHarness
Выберите "Вид терминала",> чтобы открыть терминал Visual Studio Code.
Если запрос не отображается, нажмите клавишу ВВОД.
Введите
dotnet runв терминале.Когда вас попросят ввести строку подключения для IoT Hub, вставьте строку подключения, скопированную в предыдущем разделе.
В окне устройств Центра Интернета вещей Azure нажмите кнопку обновления.
Обратите внимание, что устройства добавляются в Центр Интернета вещей и что устройства отображаются зеленым цветом, чтобы указать, что данные отправляются через это устройство. После отправки сообщений в Центр Интернета вещей устройства отключаются и отображаются синим цветом.
Вы можете просматривать сообщения, отправленные в концентратор, щелкнув правой кнопкой мыши любое устройство и выбрав "Начать мониторинг встроенной конечной точки события". Сообщения будут отображаться в области вывода в Visual Studio Code.
Остановите мониторинг, щелкнув внутри области выходных данных Центра Интернета вещей Azure и выбрав Остановить мониторинг встроенной конечной точки события.
Позвольте приложению завершить выполнение, это займет несколько минут.
Проверка действия Центра Интернета вещей
Данные, отправленные DeviceHarness, пошли в центр Интернета вещей, где можно проверить на портале Azure.
Откройте портал Azure и перейдите к центру Интернета вещей, созданному для этого руководства.
В меню слева в разделе "Мониторинг" выберите "Метрики".
На странице определения диаграммы щелкните выпадающий список метрик, прокрутите его вниз и выберите Маршрутизация: данные, доставленные в хранилище. На диаграмме должен отображаться скачок, когда данные были перенаправлены в хранилище.
Проверка данных в службе хранилища Azure
Только что отправленные в Центр Интернета вещей данные были перенаправлены в контейнер хранилища, созданный в предыдущей статье. Давайте рассмотрим данные в нашем хранилище данных.
Войдите в свою учетную запись хранения на портале Azure.
В навигаторе учетной записи хранения выберите Storage Explorer (предварительная версия).
В обозревателе хранилища выберите контейнеры объектов, затем
devicedata.В области содержимого щелкните папку с именем IoT-хаба, затем выберите год, месяц, день и час. Вы увидите несколько папок, представляющих минуты записи данных.
Щелкните одну из этих папок, чтобы найти файлы данных с меткой 00 и 01 , соответствующие секции.
Файлы записываются в формате Avro . Дважды щелкните один из этих файлов, чтобы открыть другую вкладку браузера и частично отобразить данные. Если вам будет предложено открыть файл в программе, вы можете выбрать VS Code и правильно отобразить его.
Сейчас не нужно пытаться считывать или интерпретировать данные; Мы сделаем это в следующей статье.
Очистите ресурсы
Это руководство является частью набора, в котором каждая статья основывается на работе, выполняемой в предыдущих. Подождите с очисткой ресурсов, пока не завершите последний урок.
Дальнейшие шаги
В этой статье мы использовали проект .NET Core для создания набора виртуальных устройств Интернета вещей и отправки данных через центр Интернета вещей и в контейнер службы хранилища Azure. Этот проект имитирует реальный сценарий, в котором физические устройства Интернета вещей отправляют данные в Центр Интернета вещей и передаются в курированное хранилище. Эти данные включают в себя чтение датчиков, операционные параметры, сигналы сбоя и режимы и т. д. После сбора достаточного количества данных мы используем его для обучения моделей, которые прогнозируют оставшуюся полезную жизнь (RUL) для устройства. Мы продемонстрируем это машинное обучение в следующей статье.
Перейдите к следующей статье, чтобы обучить модель машинного обучения с данными.