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


Разработка приложений для устройств Интернета вещей с помощью библиотек Интернета вещей .NET

.NET выполняется на различных платформах и архитектурах. Поддерживаются платы Интернета вещей (IoT), такие как Raspberry Pi и Hummingboard. Приложения Интернета вещей обычно взаимодействуют со специализированным оборудованием, такими как датчики, аналоговые и цифровые преобразователи, а также устройства с дисплеем. Библиотеки Интернета вещей .NET позволяют использовать эти сценарии.

Libraries

Библиотеки Интернета вещей .NET состоят из двух пакетов NuGet:

System.Device.Gpio

System.Device.Gpio поддерживает различные протоколы для взаимодействия с низкоуровневыми аппаратными контактами для управления устройствами. К ним относятся:

  • Ввод-вывод общего назначения (GPIO)
  • Шина межинтегральных связей (I2C)
  • Последовательный периферийный интерфейс (SPI)
  • Модуляция ширины пульса (PWM)
  • Последовательный порт

Устройства IoT. Привязки

Пакет Iot.Device.Bindings :

  • Содержит привязки устройств для упрощения разработки приложений путем упаковки System.Device.Gpio.
  • Поддерживается сообществом, а дополнительные привязки добавляются постоянно.

Полный список доступных привязок устройств поддерживается на сайте GitHub.

К некоторым часто используемым привязкам устройств относятся:

Пару слов о потоках

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

Поддерживаемые операционные системы

System.Device.Gpio поддерживается в любой операционной системе, поддерживающей .NET, включая большинство версий Linux, поддерживающих ARM/ARM64 и Windows 10 IoT Core.

Подсказка

Для Raspberry Pi рекомендуется использовать ОС Raspberry Pi (64-разрядная версия ). Не требуется рабочий стол, поэтому Raspberry Pi OS Lite можно использовать для уменьшения размера операционной системы.

Анимированный GIF-файл с инструментом Raspberry Pi Imager. Пользователь выбирает RASPBERRY PI OS LITE (64-BIT) из списка доступных операционных систем.

Поддерживаемые аппаратные платформы

System.Device.Gpio совместим с большинством платформ с одной платой. Рекомендуемые платформы: Raspberry Pi (2 и больше) и Hummingboard. Другие платформы, известные как совместимые, — BeagleBoard и ODROID.

Компьютеры и ПК под управлением Windows, macOS и Linux поддерживаются с помощью моста USB в SPI/I2C.

Это важно

.NET не поддерживается на устройствах до ARMv7, включая устройства Raspberry Pi Zero и Raspberry Pi до Raspberry Pi 2.

Ресурсы